# Rhamaa CLI
A powerful CLI tool to accelerate Wagtail web development with prebuilt applications and project scaffolding.
## 🚀 Features
### Project Management
- **Project Creation**: Generate new Wagtail projects using RhamaaCMS template
- **App Registry System**: Centralized registry of prebuilt applications
- **Auto Installation**: Download and install apps directly from GitHub repositories
### App Management
- **Prebuilt Apps**: Ready-to-use applications for common use cases
- **Auto Download**: Automatically download apps from GitHub repositories
- **Smart Extraction**: Extract and organize files to proper project structure
- **Force Install**: Overwrite existing apps when needed
### Developer Experience
- **Rich Terminal UI**: Beautiful ASCII art branding and colored output
- **Progress Indicators**: Real-time download and installation progress
- **Error Handling**: Comprehensive error messages and troubleshooting
- **Project Validation**: Automatic detection of Wagtail projects
## 📦 Available Apps
| App Name | Category | Description | Repository |
|----------|----------|-------------|------------|
| **mqtt** | IoT | MQTT integration for Wagtail with real-time messaging | [mqtt-apps](https://github.com/RhamaaCMS/mqtt-apps) |
| **users** | Authentication | Advanced user management system | [users-app](https://github.com/RhamaaCMS/users-app) |
| **articles** | Content | Blog and article management system | [articles-app](https://github.com/RhamaaCMS/articles-app) |
| **lms** | Education | Complete Learning Management System | [lms-app](https://github.com/RhamaaCMS/lms-app) |
## 🛠 Installation
### From PyPI (Beta)
```bash
# Install the latest beta version
pip install rhamaa==0.1.0b1
# Or install the latest pre-release
pip install --pre rhamaa
```
### Development Setup
```bash
# Clone the repository
git clone https://github.com/RhamaaCMS/RhamaaCLI.git
cd RhamaaCLI
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # Linux/Mac
# .venv\Scripts\activate # Windows
# Install in development mode
pip install -e .
```
## 📖 Usage
### Basic Commands
```bash
# Show help and available commands
rhamaa
# Create a new Wagtail project
rhamaa start MyProject
# List available apps
rhamaa add --list
rhamaa registry list
# Install an app
rhamaa add mqtt
# Get app information
rhamaa registry info mqtt
# Force install (overwrite existing)
rhamaa add mqtt --force
```
### App Installation Workflow
1. **Check Available Apps**: `rhamaa add --list`
2. **Install App**: `rhamaa add <app_name>`
3. **Follow Instructions**: Add to INSTALLED_APPS and run migrations
4. **Configure**: Check app's README for additional setup
### Registry Management
```bash
# List all apps by category
rhamaa registry list
# Get detailed app information
rhamaa registry info <app_name>
# Update registry (coming soon)
rhamaa registry update
```
## 🏗 Project Structure
```
rhamaa/
├── __init__.py # Package initialization
├── cli.py # Main CLI entry point and help system
├── registry.py # App registry management
├── utils.py # Utility functions (download, extract)
└── commands/ # Command modules directory
├── __init__.py # Commands package init
├── add.py # 'add' command implementation
├── start.py # 'start' command implementation
└── registry.py # 'registry' command implementation
```
## 🔧 Development
### Adding New Apps to Registry
Edit `rhamaa/registry.py`:
```python
APP_REGISTRY = {
"your_app": {
"name": "Your App Name",
"description": "App description",
"repository": "https://github.com/RhamaaCMS/your-app",
"branch": "main",
"category": "Category"
}
}
```
### Testing Commands
```bash
# Test main command
rhamaa
# Test project creation
rhamaa start TestProject
# Test app installation
rhamaa add mqtt
# Test registry commands
rhamaa registry list
rhamaa registry info mqtt
```
### Building Distribution
```bash
# Build distribution packages
python setup.py sdist bdist_wheel
# Install from local build
pip install dist/rhamaa-*.whl
```
## 🎯 Use Cases
### For Wagtail Developers
- Quickly bootstrap new projects with proven architecture
- Add common functionality without writing from scratch
- Standardize project structure across team
### For Teams
- Consistent project setup across developers
- Reusable components and applications
- Faster development cycles
### For IoT Projects
- MQTT integration with `rhamaa add mqtt`
- Real-time data monitoring and management
- Wagtail admin integration for IoT devices
## 🤝 Contributing
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests if applicable
5. Submit a pull request
## 📄 License
This project is part of the RhamaaCMS ecosystem.
## 🔗 Links
- **Documentation**: [GitHub Wiki](https://github.com/RhamaaCMS/RhamaaCLI/wiki)
- **Issues**: [GitHub Issues](https://github.com/RhamaaCMS/RhamaaCLI/issues)
- **RhamaaCMS**: [Main Repository](https://github.com/RhamaaCMS)
---
Made with ❤️ by the RhamaaCMS team
Raw data
{
"_id": null,
"home_page": "https://github.com/RhamaaCMS/RhamaaCLI",
"name": "rhamaa",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "RhamaaCMS Team <contact@rhamaacms.com>",
"keywords": "wagtail, django, cms, cli, rhamaa, code-generator",
"author": "RhamaaCMS Team",
"author_email": "RhamaaCMS Team <contact@rhamaacms.com>",
"download_url": "https://files.pythonhosted.org/packages/eb/23/e10a9dfe41acb3ff2e48ca6402f772a21a7807ac3648bc1f197d370c95e9/rhamaa-0.1.0b1.tar.gz",
"platform": null,
"description": "# Rhamaa CLI\n\nA powerful CLI tool to accelerate Wagtail web development with prebuilt applications and project scaffolding.\n\n## \ud83d\ude80 Features\n\n### Project Management\n- **Project Creation**: Generate new Wagtail projects using RhamaaCMS template\n- **App Registry System**: Centralized registry of prebuilt applications\n- **Auto Installation**: Download and install apps directly from GitHub repositories\n\n### App Management\n- **Prebuilt Apps**: Ready-to-use applications for common use cases\n- **Auto Download**: Automatically download apps from GitHub repositories\n- **Smart Extraction**: Extract and organize files to proper project structure\n- **Force Install**: Overwrite existing apps when needed\n\n### Developer Experience\n- **Rich Terminal UI**: Beautiful ASCII art branding and colored output\n- **Progress Indicators**: Real-time download and installation progress\n- **Error Handling**: Comprehensive error messages and troubleshooting\n- **Project Validation**: Automatic detection of Wagtail projects\n\n## \ud83d\udce6 Available Apps\n\n| App Name | Category | Description | Repository |\n|----------|----------|-------------|------------|\n| **mqtt** | IoT | MQTT integration for Wagtail with real-time messaging | [mqtt-apps](https://github.com/RhamaaCMS/mqtt-apps) |\n| **users** | Authentication | Advanced user management system | [users-app](https://github.com/RhamaaCMS/users-app) |\n| **articles** | Content | Blog and article management system | [articles-app](https://github.com/RhamaaCMS/articles-app) |\n| **lms** | Education | Complete Learning Management System | [lms-app](https://github.com/RhamaaCMS/lms-app) |\n\n## \ud83d\udee0 Installation\n\n### From PyPI (Beta)\n```bash\n# Install the latest beta version\npip install rhamaa==0.1.0b1\n\n# Or install the latest pre-release\npip install --pre rhamaa\n```\n\n### Development Setup\n```bash\n# Clone the repository\ngit clone https://github.com/RhamaaCMS/RhamaaCLI.git\ncd RhamaaCLI\n\n# Create virtual environment\npython -m venv .venv\nsource .venv/bin/activate # Linux/Mac\n# .venv\\Scripts\\activate # Windows\n\n# Install in development mode\npip install -e .\n```\n\n## \ud83d\udcd6 Usage\n\n### Basic Commands\n```bash\n# Show help and available commands\nrhamaa\n\n# Create a new Wagtail project\nrhamaa start MyProject\n\n# List available apps\nrhamaa add --list\nrhamaa registry list\n\n# Install an app\nrhamaa add mqtt\n\n# Get app information\nrhamaa registry info mqtt\n\n# Force install (overwrite existing)\nrhamaa add mqtt --force\n```\n\n### App Installation Workflow\n1. **Check Available Apps**: `rhamaa add --list`\n2. **Install App**: `rhamaa add <app_name>`\n3. **Follow Instructions**: Add to INSTALLED_APPS and run migrations\n4. **Configure**: Check app's README for additional setup\n\n### Registry Management\n```bash\n# List all apps by category\nrhamaa registry list\n\n# Get detailed app information\nrhamaa registry info <app_name>\n\n# Update registry (coming soon)\nrhamaa registry update\n```\n\n## \ud83c\udfd7 Project Structure\n\n```\nrhamaa/\n\u251c\u2500\u2500 __init__.py # Package initialization\n\u251c\u2500\u2500 cli.py # Main CLI entry point and help system\n\u251c\u2500\u2500 registry.py # App registry management\n\u251c\u2500\u2500 utils.py # Utility functions (download, extract)\n\u2514\u2500\u2500 commands/ # Command modules directory\n \u251c\u2500\u2500 __init__.py # Commands package init\n \u251c\u2500\u2500 add.py # 'add' command implementation\n \u251c\u2500\u2500 start.py # 'start' command implementation\n \u2514\u2500\u2500 registry.py # 'registry' command implementation\n```\n\n## \ud83d\udd27 Development\n\n### Adding New Apps to Registry\nEdit `rhamaa/registry.py`:\n```python\nAPP_REGISTRY = {\n \"your_app\": {\n \"name\": \"Your App Name\",\n \"description\": \"App description\",\n \"repository\": \"https://github.com/RhamaaCMS/your-app\",\n \"branch\": \"main\",\n \"category\": \"Category\"\n }\n}\n```\n\n### Testing Commands\n```bash\n# Test main command\nrhamaa\n\n# Test project creation\nrhamaa start TestProject\n\n# Test app installation\nrhamaa add mqtt\n\n# Test registry commands\nrhamaa registry list\nrhamaa registry info mqtt\n```\n\n### Building Distribution\n```bash\n# Build distribution packages\npython setup.py sdist bdist_wheel\n\n# Install from local build\npip install dist/rhamaa-*.whl\n```\n\n## \ud83c\udfaf Use Cases\n\n### For Wagtail Developers\n- Quickly bootstrap new projects with proven architecture\n- Add common functionality without writing from scratch\n- Standardize project structure across team\n\n### For Teams\n- Consistent project setup across developers\n- Reusable components and applications\n- Faster development cycles\n\n### For IoT Projects\n- MQTT integration with `rhamaa add mqtt`\n- Real-time data monitoring and management\n- Wagtail admin integration for IoT devices\n\n## \ud83e\udd1d Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests if applicable\n5. Submit a pull request\n\n## \ud83d\udcc4 License\n\nThis project is part of the RhamaaCMS ecosystem.\n\n## \ud83d\udd17 Links\n\n- **Documentation**: [GitHub Wiki](https://github.com/RhamaaCMS/RhamaaCLI/wiki)\n- **Issues**: [GitHub Issues](https://github.com/RhamaaCMS/RhamaaCLI/issues)\n- **RhamaaCMS**: [Main Repository](https://github.com/RhamaaCMS)\n\n---\n\nMade with \u2764\ufe0f by the RhamaaCMS team\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "CLI tools to accelerate Wagtail web development with RhamaaCMS",
"version": "0.1.0b1",
"project_urls": {
"Bug Reports": "https://github.com/RhamaaCMS/RhamaaCLI/issues",
"Documentation": "https://github.com/RhamaaCMS/RhamaaCLI/wiki",
"Homepage": "https://github.com/RhamaaCMS/RhamaaCLI",
"Repository": "https://github.com/RhamaaCMS/RhamaaCLI"
},
"split_keywords": [
"wagtail",
" django",
" cms",
" cli",
" rhamaa",
" code-generator"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "69ad9392d7ea10c3cd0c23f24916edc3d556942353b876bb4026576f6e7e4859",
"md5": "78b0770483b3b45ea858dd5a3c441576",
"sha256": "d10b0a28e48aaf0dc5f17d820b9ded65d4539775b84cb31e73b306fc7b49cd38"
},
"downloads": -1,
"filename": "rhamaa-0.1.0b1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "78b0770483b3b45ea858dd5a3c441576",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 16777,
"upload_time": "2025-07-27T11:04:44",
"upload_time_iso_8601": "2025-07-27T11:04:44.575277Z",
"url": "https://files.pythonhosted.org/packages/69/ad/9392d7ea10c3cd0c23f24916edc3d556942353b876bb4026576f6e7e4859/rhamaa-0.1.0b1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "eb23e10a9dfe41acb3ff2e48ca6402f772a21a7807ac3648bc1f197d370c95e9",
"md5": "4dd90b1dce4198e16ef3fd7cd5874921",
"sha256": "34bdee59446648bd2724f0c3c7ce5a894eb4c682eba82c0a5ee60dbddbcb88ca"
},
"downloads": -1,
"filename": "rhamaa-0.1.0b1.tar.gz",
"has_sig": false,
"md5_digest": "4dd90b1dce4198e16ef3fd7cd5874921",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 18739,
"upload_time": "2025-07-27T11:04:46",
"upload_time_iso_8601": "2025-07-27T11:04:46.548264Z",
"url": "https://files.pythonhosted.org/packages/eb/23/e10a9dfe41acb3ff2e48ca6402f772a21a7807ac3648bc1f197d370c95e9/rhamaa-0.1.0b1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-27 11:04:46",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "RhamaaCMS",
"github_project": "RhamaaCLI",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "rhamaa"
}