A Python package
Project description
dhruv 🐍
A foundational Python package for AI-assisted development, featuring an AI Developer Handbook and batteries-included templates.
⚡ Quick Start
Prerequisites
- Python 3.8+
- pip
Installation
pip install .
Or for development:
pip install -e .
Run
Verify the installation immediately:
dhruv hello
Demo
Use the core logic in your own scripts:
from dhruv.main import hello
# Access the core functionality directly
print(hello())
# Output: "Hello from Dhruv!"
✨ Features
- 🧠 AI Developer Handbook: A comprehensive set of standardized system prompts (
src/dhruv/prompts/) to guide AI agents through Documentation, Roadmapping, Testing, and Refactoring. - 🚀 Modern CLI Foundation: Built with Typer and Rich for a robust, beautiful, and self-documenting command-line interface.
- 📦 Batteries-Included Templates: Pre-configured templates for
pytest, project settings, and more, located insrc/dhruv/templates/. - 🏗️ Clean Architecture: Follows a strict
srclayout with modular design, ensuring scalability and maintainability. - 🎨 Visual Utilities: Includes banner generation and syntax highlighting themes for a polished user experience.
🛠️ Configuration
CLI Arguments
The dhruv CLI is the primary interface.
| Command | Argument | Description |
|---|---|---|
dhruv |
hello |
Prints a welcome message to verify installation. |
dhruv |
--help |
Show the help message and exit. |
Note: No environment variables are currently required for core operation.
🏗️ Architecture
Directory Tree
src/
└── dhruv/
├── prompts/ # 📘 AI Developer Handbook & System Prompts
├── templates/ # 🛠️ Configuration Templates (pytest, settings)
├── utils/ # 🔧 Utility modules (banners, themes)
├── cli.py # 🚀 CLI entry point (Typer)
└── main.py # 🧠 Core logic
High-Level Flow
- Entry Point:
dhruvcommand triggerssrc/dhruv/cli.py. - Routing:
typerroutes commands (e.g.,hello) to their respective functions. - Core Logic: Commands invoke logic in
src/dhruv/main.pyor access resources inprompts/andtemplates/. - Utilities:
src/dhruv/utils/provides shared functionality like banner rendering and styling.
🐞 Troubleshooting
| Issue | Possible Cause | Solution |
|---|---|---|
command not found: dhruv |
PATH issue or not installed. | Ensure pip install . was successful and your Python scripts folder is in your PATH. |
ModuleNotFoundError |
Virtual environment mismatch. | Activate the correct venv where dhruv was installed. |
Debug Mode
If you encounter unexpected behavior, check your Python version and environment details:
python --version
pip show dhruv
🤝 Contributing
We welcome contributions! Please see CONTRIBUTING.md for details.
Dev Setup
- Clone the repository.
- Install package in editable mode:
pip install -e . - Install test dependencies:
pip install pytest pytest-cov - Run tests:
pytest
🗺️ Roadmap
- Initial Release & Core Structure
- CLI Implementation (
typer) - AI Developer Handbook (Prompts)
- Interactive Init:
dhruv initto scaffold new projects. - Prompt Management: CLI commands to list and display prompts.
- Template Injection: Automate copying templates to project root.
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
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 dhruv-2.0.0.tar.gz.
File metadata
- Download URL: dhruv-2.0.0.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc2cf6e7a90ea0763d94817ed17fcf3b528d3b22f735663e4ac5ee30723e9fe9
|
|
| MD5 |
1f1a818673aa9c2982a8c5d2fdc5a0a5
|
|
| BLAKE2b-256 |
277cc4ee2b9a32568d05032bc8023ccd463c218cfeb484c1680ccb142166a987
|
Provenance
The following attestation bundles were made for dhruv-2.0.0.tar.gz:
Publisher:
publish.yml on dhruv13x/dhruv
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dhruv-2.0.0.tar.gz -
Subject digest:
fc2cf6e7a90ea0763d94817ed17fcf3b528d3b22f735663e4ac5ee30723e9fe9 - Sigstore transparency entry: 772538275
- Sigstore integration time:
-
Permalink:
dhruv13x/dhruv@0f4cdee9a4399fe40116ebfa5f7b0e028402bd57 -
Branch / Tag:
refs/tags/v2.0.0 - Owner: https://github.com/dhruv13x
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0f4cdee9a4399fe40116ebfa5f7b0e028402bd57 -
Trigger Event:
push
-
Statement type:
File details
Details for the file dhruv-2.0.0-py3-none-any.whl.
File metadata
- Download URL: dhruv-2.0.0-py3-none-any.whl
- Upload date:
- Size: 12.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e4ceb1a5602f0858aab1390a208fd2c28dba6ece79108f1ba04b27c2c6bdcac
|
|
| MD5 |
1370c7a72b557a628efe413ab5b1e280
|
|
| BLAKE2b-256 |
2f9bcffdf00fd4a56b6fa331f1fcfad2265594fd3512b0c868ac5e3e628ecad2
|
Provenance
The following attestation bundles were made for dhruv-2.0.0-py3-none-any.whl:
Publisher:
publish.yml on dhruv13x/dhruv
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dhruv-2.0.0-py3-none-any.whl -
Subject digest:
4e4ceb1a5602f0858aab1390a208fd2c28dba6ece79108f1ba04b27c2c6bdcac - Sigstore transparency entry: 772538286
- Sigstore integration time:
-
Permalink:
dhruv13x/dhruv@0f4cdee9a4399fe40116ebfa5f7b0e028402bd57 -
Branch / Tag:
refs/tags/v2.0.0 - Owner: https://github.com/dhruv13x
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0f4cdee9a4399fe40116ebfa5f7b0e028402bd57 -
Trigger Event:
push
-
Statement type: