AMEN CLI

AMEN CLI Wiki

A Laravel-inspired Python Web Application Scaffolding Tool

✨ Features

🛠️ Installation

pip install amen-cli

🚀 Quick Start

# Create a new project
amen create

# Or use flags for automation:
amen create -f flask -t webapp -n myapp
Flags:
  • -f, --framework Framework (flask, fastapi, bottle, pyramid)
  • -t, --type Application type (webapp, api)
  • -n, --name Project name
Run your app:
cd myapp
source venv/bin/activate  # Linux/Mac
venv\Scripts\activate     # Windows
python run.py
# Or, from the parent directory:
amen run myapp

🏗️ Project Structure

your-app/
├── venv/                   # Virtual environment
├── your-app/               # Main application package
│   ├── api/                # API endpoints (endpoints.py)
│   ├── auth/               # Authentication (token.py, etc.)
│   ├── models/             # Models module
│   ├── static/             # Static files (CSS, JS, images)
│   │   ├── uploads/
│   │   ├── css/
│   │   └── js/
│   ├── templates/          # HTML templates (if webapp)
│   └── app.py / main.py    # Main application file (Flask: app.py, FastAPI: main.py)
├── tests/                  # Test files
├── docs/                   # Documentation
├── requirements.txt        # Python dependencies
├── .env                    # Environment variables (local)
├── .env.example            # Environment variables template
├── .gitignore              # Git ignore rules
├── run.py                  # Application runner
└── README.md               # Project documentation

🎯 Framework Support

Framework Description Default Port Status
Flask Lightweight WSGI web framework 5000
FastAPI Modern, fast web framework 8000
Django High-level Python web framework 8000
Bottle Fast, simple micro framework 8080 🚧
Pyramid Flexible web framework 6543 🚧

📖 Usage

# Create a new project
amen create

# Run your application
amen run <app_name>

# Run tests
amen test <app_name>

# Check for updates
amen check-update

# Manage project configuration
amen config <app_name>

🔧 Development

git clone https://github.com/taqsblaze/amen-cli.git
pip install -e .
pip install pytest pytest-cov
pytest
pytest --cov

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch: git checkout -b feature/amazing-feature
  3. Make your changes
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a Pull Request

👥 Contact & Support

⭐ Credits

Created by Tanaka Chinengundu
Inspired by Laravel's elegant development experience