Skip to main content

composer-inspired Python web framework scaffolding tool

Project description

๐Ÿš€ AMEN CLI icon

A laravel installer inspired Python Web Application Scaffolding Tool that helps you create web applications with ease!

โœจ Features

  • ๐ŸŽฏ Interactive project setup wizard
  • ๐Ÿ”ง Multiple framework support:
    • Flask - Lightweight WSGI framework
    • FastAPI - Modern, fast API framework
    • Bottle - Simple micro web framework ๐Ÿšง
    • Pyramid - Flexible web framework ๐Ÿšง
  • ๐ŸŽจ Project templates for both web apps and APIs
  • ๐Ÿ”„ Automatic virtual environment setup
  • ๐Ÿ“ฆ Dependency management
  • ๐Ÿ—๏ธ Structured project scaffolding

๐Ÿ› ๏ธ Installation

pip install amen-cli

๐Ÿ“– Usage

# Create a new project
amen create

# You can also use flags to specify the framework, type, and name:
amen create -f flask -t webapp -n myapp

# Available options:
# -f, --framework   Framework to use (flask, fastapi, bottle, pyramid)
# -t, --type        Type of application (webapp, api)
# -n, --name        Name of the application

# If flags are not provided, the interactive prompts will be used.

# Follow the interactive prompts to:
# 1. Select a framework
# 2. Choose application type (webapp/api)
# 3. Name your project

๐ŸŒŸ Project Structure

When you create a project, AMEN generates:

your-app/
โ”œโ”€โ”€ venv/                   # Virtual environment
โ”œโ”€โ”€ app/                    # Main application code
โ”‚   โ”œโ”€โ”€ templates/         # HTML templates (webapp)
โ”‚   โ””โ”€โ”€ static/           # Static files
โ”‚       โ”œโ”€โ”€ css/         # Stylesheets
โ”‚       โ””โ”€โ”€ js/          # JavaScript files
โ”œโ”€โ”€ tests/                 # Test directory
โ”œโ”€โ”€ requirements.txt       # Python dependencies
โ”œโ”€โ”€ .env                  # Environment variables
โ””โ”€โ”€ README.md             # Project documentation

๐ŸŽฏ Supported Frameworks

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 ๐Ÿšง

Work in Progress

Currently implementing support for additional web frameworks:

  • Bottle: Integration in development
  • Pyramid: Initial implementation phase

These frameworks will enable:

  • Route mapping and handling
  • Request/response processing
  • Middleware integration
  • Template rendering support

Check back for updates or follow the project's issues for implementation progress. Contributions are welcome!

Note: For now, please use our stable implementations for Flask or FastAPI.

๐Ÿš— Quick Start

# Install AMEN CLI
pip install amen-cli

# Create a new project
amen create

# Follow the interactive prompts

# Navigate to your project
cd your-project-name

# Activate virtual environment
source venv/bin/activate  # Linux/Mac
venv\Scripts\activate     # Windows

# Run your application
python run.py

๐Ÿ”ง Development

# Clone the repository
git clone https://github.com/taqsblaze/amen-cli.git

# Install for development and testing
pip install -e .
pip install pytest pytest-cov

# Run tests
pytest

# Run tests with coverage
pytest

๐Ÿค Contributing

Contributions are welcome! Here's how:

  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

๐Ÿ“ License

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

๐Ÿ‘ฅ Contact & Support

โญ Credits

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


Made with โค๏ธ by Tanaka Chinengundu

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

amen_cli-0.2.0.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

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

amen_cli-0.2.0-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file amen_cli-0.2.0.tar.gz.

File metadata

  • Download URL: amen_cli-0.2.0.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for amen_cli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7e03d00180a3ecb22a6607f1663a39d788ea5142c0dec023ee829e5f62de930a
MD5 bb2c1afe2a12a71e49f5430e8606d4ac
BLAKE2b-256 60cbd2cd7ad036df2a58228a6cda39c833c6baf6a4663f4fc3b1ccd8930bf1ac

See more details on using hashes here.

File details

Details for the file amen_cli-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: amen_cli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 14.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for amen_cli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ea314c396a2a16c3d92e804bd73e8614d9cf472cb63ffed2b48663ca85852324
MD5 3cc6ee96e26d75e03603d48ac852ad49
BLAKE2b-256 5990993d66c2f1568a2768ae768c3b13e2dbf3a18dde15fd2b72778683807e8e

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