A CLI tool for automating developer workflows.
Project description
Apollo CLI 🌔
Apollo CLI is a Python-based command-line interface designed to enhance the developer experience by automating common tasks and workflows. This tool simplifies tasks like managing GitHub repositories, navigating directories, and more, allowing developers to focus on building and delivering software efficiently.
Features ⚙️
- Automation Tools: Scripts for automating repetitive tasks, such as data processing, file management, github actions, and API integration.
- Data Utilities: Scripts for data extraction, transformation, and analysis, including
basic visualizations. - Task Scheduling: Scripts to schedule and automate recurring tasks (e.g., backups, log parsing).
Getting Started 🔑
Prerequisites
Ensure you have the following installed:
- Python3 for running the scripts in this repo
- Pip3 pythons package manager used to install the pypi package apollo
Installation
Via PyPI
Install the latest version using pip:
pip install apollo
Via Source
Clone the repository and install it locally for development:
git clone https://github.com/dj-io/apollo-cli.git
cd apollo-cli
pip install -e .
Usage
Apollo CLI provides a collection of commands designed to streamline your development workflows. After installation, the apollo command is available in your terminal.
Show Available Commands
Run the following to see a list of available commands and their descriptions:
apollo --help
example output:
Usage: apollo [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
create-repo Create and push a new repository to GitHub.
push-existing Push an existing local repository to a new GitHub repo.
Apollos First Script
apollo creat-repo
The create_repo command is one of the features that kicked off Apollo CLI.
It allows developers to create a GitHub repository and push it from a local directory with minimal effort.
Usage
Prerequisites:
- Install Github CLI and authenticate using:
gh auth login
- Ensure you have setup global Git configurations for Git username and email:
git config --global user.name "Your Name"
git config --global user.email "youremail@example.com"
Command:
- Run the command:
apollo create-repo
-
Follow the interactive prompts:
- Enter your GitHub username (cached for future runs).
- Choose or create a directory for the repository:
- Use the current directory.
- Select an existing directory.
- Create a new directory.
-
Apollo CLI will handle the following automatically:
- Create the repository on GitHub.
- Initialize a local Git repository.
- Add a README.md file with the repository’s name and description.
- Push the local repository to GitHub.
Key Features
- Interactive Directory Selection
Apollo CLI automatically detects directories and provides multiple options:
- Use the current working directory.
- Select an existing directory from a list.
- Create a new directory if needed.
Example Prompt:
Would you like to use the current directory as the parent directory? (yes/no)
- Persistent GitHub Username
The CLI stores your GitHub username for future use, eliminating repetitive inputs. If the username is already cached, the CLI will prompt you to reuse it.
Example Prompt:
Use cached GitHub username: <username>? (yes/no)
- GitHub Integration
- Automatically creates the repository on GitHub using the gh CLI.
- Adds a remote origin and pushes the code to GitHub.
Contributing
Contributions are welcome! To Contribute:
-
Fork the repository.
-
Create a new branch to your feature or bug fix:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m "Description of your changes"
- Push to your branch:
git push origin feature/your-feature-name
- Open a pull request on Github.
Guidelines:
- Ensure your code is well-documented and adheres to PEP 8 standards.
- Add tests for any new features or bug fixes.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgments
Apollo CLI is inspired by the need to streamline development workflows. Special thanks to all contributors who have helped shape this project.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file apollo_o1-1.0.0.tar.gz.
File metadata
- Download URL: apollo_o1-1.0.0.tar.gz
- Upload date:
- Size: 7.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2fce6d5645bb447015e8395cf189ed681f69c92fce06c1c26c314eecc2cec1b
|
|
| MD5 |
4cfaaaec86cb83fdda6dd3b52334565a
|
|
| BLAKE2b-256 |
c3cea1c63d23abb7c2eb7ece27fb01d7d63ad993c468d0b446846deedb0f3297
|
File details
Details for the file apollo_o1-1.0.0-py3-none-any.whl.
File metadata
- Download URL: apollo_o1-1.0.0-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad2effad629710e8f1f5ed022d42a0668178e1d89b4e0f1dfd051c29e2bc8bfc
|
|
| MD5 |
7297e4eb8c06a134faabfec918dc6a7d
|
|
| BLAKE2b-256 |
804afe4c06d6add48da76094332e88712e6d49b09a02dc36b38f880bf2907c16
|