Skip to main content

A CLI tool for automating developer workflows.

Project description

Apollo CLI 🌔

PyPI Version License Build Status

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:

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:

  1. Run the command:
apollo create-repo
  1. 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.
  2. 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

  1. 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)
  1. 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)
  1. 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:

  1. Fork the repository.

  2. Create a new branch to your feature or bug fix:

git checkout -b feature/your-feature-name
  1. Commit your changes:
git commit -m "Description of your changes"
  1. Push to your branch:
git push origin feature/your-feature-name
  1. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apollo_o1-1.0.0.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

apollo_o1-1.0.0-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

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

Hashes for apollo_o1-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e2fce6d5645bb447015e8395cf189ed681f69c92fce06c1c26c314eecc2cec1b
MD5 4cfaaaec86cb83fdda6dd3b52334565a
BLAKE2b-256 c3cea1c63d23abb7c2eb7ece27fb01d7d63ad993c468d0b446846deedb0f3297

See more details on using hashes here.

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

Hashes for apollo_o1-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ad2effad629710e8f1f5ed022d42a0668178e1d89b4e0f1dfd051c29e2bc8bfc
MD5 7297e4eb8c06a134faabfec918dc6a7d
BLAKE2b-256 804afe4c06d6add48da76094332e88712e6d49b09a02dc36b38f880bf2907c16

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page