Atikin-Click
Atikin-Click — lightweight, developer-friendly CLI toolkit with autocomplete, colored output, progress bars & spinners.
Developed by: Atikin Verse
Features
- Simple, lightweight CLI framework
- Built-in colored output & rich integration
- Progress bars & spinners
- Autocomplete support for Bash/Zsh/Fish
- Plugin system for custom commands
Quick Start
CLI One-Liner
python -m atikin_click version
Plugin Example
python -m atikin_click plugin add my_plugin
python -m atikin_click plugin run my_plugin
Installation
Install via PyPI:
pip install atikin-click
For development:
git clone https://github.com/atikinverse/atikin-click.git
cd atikin-click
pip install -e .
Requirements
- Python 3.8+
- Optional:
richfor enhanced output
Usage
CLI Commands
# Check version
python -m atikin_click version
# Plugin commands
python -m atikin_click plugin list
python -m atikin_click plugin add my_plugin
python -m atikin_click plugin run my_plugin
# Shell completion
python -m atikin_click completion bash
Python API
from atikin_click.cli import default_cli
@default_cli.command("hello", help="Say hello")
def hello(name: str):
print(f"Hello {name}")
# Run programmatically
default_cli.run(["hello", "Atikin"])
Development
- Create a virtual environment:
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/Mac
source .venv/bin/activate
- Install development dependencies:
pip install -e .[dev]
- Run tests:
pytest -q --tb=short
Publishing to PyPI
- Build the package:
python -m pip install --upgrade build
python -m build
- Upload to PyPI:
pip install --upgrade twine
twine upload dist/*
- Test installation:
pip install atikin-click
python -m atikin_click version
Tip: Use TestPyPI first for trial uploads:
twine upload --repository testpypi dist/*
Contributing
- Fork the repository
- Create a branch for your feature/fix
- Run tests locally
- Submit a pull request
Report issues on GitHub Issues.
FAQ / Troubleshooting
Q: ImportError: cannot import name 'default_cli'
A: Ensure you are not running from inside src/. Use the installed package or root folder.
Q: Plugin commands not showing output A: Make sure plugin functions print or return values, CLI just triggers them.
License
MIT License © Atikin Verse
🔗 Author
Atikin Verse For more tools & libraries: https://atikinverse.com
🌐 Follow Us
| Platform | Username |
|---|---|
| atikinverse | |
| atikinverse | |
| atikinverse | |
| Twitter/X | atikinverse |
| Threads | atikinverse |
| atikinverse | |
| Quora | atikinverse |
| atikinverse | |
| Tumblr | atikinverse |
| Snapchat | atikinverse |
| Skype | atikinverse |
| GitHub | atikinverse |
Metadata
Release files for atikin-click 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| atikin_click-0.0.1.tar.gz | 14.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| atikin_click-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.0 kB
Release files / atikin_click-0.0.1.tar.gz
| Download URL | atikin_click-0.0.1.tar.gz |
|---|---|
| Size | 14.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6317c13cd1ce557e1fc57ffd479922d7053a74872fd3e16cd0ab7c260c1e6ddd
|
|
BLAKE2b-256 checksum How to use checksums |
ae0e9e580117a9d31d35cca7515ecbb67d706a8aedcf9ec52dbb030022ca1e0f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.0
|
Release files / atikin_click-0.0.1-py3-none-any.whl
| Download URL | atikin_click-0.0.1-py3-none-any.whl |
|---|---|
| Size | 16.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
df446541a316186f58667ea6304a02cc586555627645f50a51e50d0cd43afe2e
|
|
BLAKE2b-256 checksum How to use checksums |
46205e27cfad5f9b1bdf7c40838ef5ce068524ee8a876ad657165ae2a2e5de76
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.0
|