Skip to main content

Simple CLI tool for cloning and updating the git repositories

Project description

Kwasa CLI

Notice

Kwasa CLI is a command-line tool designed for bundling the Django starter template from django-starter-template, but can be used to clone and update any repository. It helps automate the process of cloning, updating, and working with repositories with minimal effort.

Features

  • Clone the repository into the current empty directory.
  • Clone a repository into a specified directory.
  • Update the repository whenever the source code is updated.
  • Use it as a Django starter template bundler, or for general-purpose repository management.

Requirements

  • Python 3.13 or higher
  • pip for package management
  • A virtual environment to install and run the package.

Installation

1. Create a Virtual Environment

To begin, create a virtual environment for your project. You can do this by running:

python -m venv .venv

Then, activate the virtual environment.

  • On Windows:

    .\.venv\Scripts\activate
    
  • On Linux/macOS:

    source .venv/bin/activate
    

2. Install Kwasa CLI as a pip Package

Once the virtual environment is activated, install the Kwasa CLI tool by running:

pip install kwasa-cli
# if you have uv
# ---
# uv add kwasa-cli --dev

3. Clone a Repository

After installing Kwasa CLI, you can start using it to clone repositories.

  • Clone the default repository into the current empty directory:

    kwasa clone .
    
  • Clone a repository into a specific directory: This will install the starter template into the directory specified

    kwasa clone <directory>
    
  • Clone a different repository into a specific directory:

    kwasa clone <directory> --repository <repository_url>
    

Replace <directory> with the target directory path and <repository_url> with the repository URL (e.g., https://github.com/username/repository).

4. Update the Repository

If you have previously cloned a repository and would like to update it to the latest changes, you can use the same command. Kwasa CLI will automatically pull the latest changes from the remote repository.

kwasa update

This will ensure the repository is up-to-date.

Usage Examples

Example 1: Clone the Django Starter Template

To clone the Django starter template into the current empty directory:

kwasa clone .

Example 2: Clone into a Specific Directory

To clone the Django starter template into a directory called my_django_project:

kwasa clone my_django_project

Example 3: Clone a Custom Repository

If you want to clone a repository from another URL (e.g., https://github.com/another-user/some-repo), use:

kwasa clone my_custom_repo --repo https://github.com/dlion4/django-quick-starter.git

Development

If you'd like to contribute or modify the tool, you can clone this repository and install it locally:

  1. Clone the repository:

    git clone https://github.com/dlion4/kwasa-cli.git
    cd kwasa-cli
    
  2. Install the development dependencies:

    pip install -e .[dev]
    
  3. Run tests and ensure everything works:

    pytest
    

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Feel free to open issues or submit pull requests with enhancements or fixes. Contributions are welcome!

Contact

For any issues or suggestions, feel free to open an issue on the GitHub repository: Kwasa CLI GitHub


Enjoy using Kwasa CLI! 😊

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

kwasa_cli-1.0.1.tar.gz (83.0 kB view details)

Uploaded Source

Built Distribution

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

kwasa_cli-1.0.1-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file kwasa_cli-1.0.1.tar.gz.

File metadata

  • Download URL: kwasa_cli-1.0.1.tar.gz
  • Upload date:
  • Size: 83.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for kwasa_cli-1.0.1.tar.gz
Algorithm Hash digest
SHA256 ec776ce99a93db566f2830b3ae6c4ec33281ed30ea6e32aebf089c8b012fc8c2
MD5 d5d19686713ba838d2d729310d479cd9
BLAKE2b-256 e5fcd1a195d86cdf67b762e3f3221339f22aa9841176e5907d3d73f459f512ae

See more details on using hashes here.

File details

Details for the file kwasa_cli-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: kwasa_cli-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for kwasa_cli-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f860673f2976c7cf730bbac8a6e9b9bb2834c08615849d2c42c30db53978a7ec
MD5 0dfad190d5d4de90e16bb5e4ff87658c
BLAKE2b-256 6b3aef1f0e2ecdd26248fe561f0b9ba28c70973e1c81519e41f3f57a8991244f

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