Skip to main content

A CLI tool for scaffolding backend services with interactive menus

Project description

Prarabdha 🚀

A powerful CLI tool for scaffolding backend services with interactive menus. Get started quickly with your favorite programming languages and frameworks.

Features

  • Interactive CLI: User-friendly menus for project setup
  • Multiple Languages: Support for Python, Java, and Node.js
  • Framework Support: Flask, FastAPI for Python
  • Quick Start/Stop: Easy project management
  • Deployment Ready: Deploy to Heroku, Railway, or Render
  • Extensible: Easy to add new languages and frameworks

Installation

Install Prarabdha using pip:

pip install prarabdha

Quick Start

1. Start a New Project

prarabdha start

This will launch an interactive menu where you can:

  • Choose your programming language (Python, Java, Node.js)
  • Select frameworks (for Python: Flask or FastAPI)
  • Set project name and output directory

2. Deploy Your Project

prarabdha deploy <project-path>

Deploy to free backend-as-a-service platforms:

  • Heroku: Full CLI integration
  • Railway: Modern deployment platform
  • Render: Web-based deployment

3. Stop Running Projects

prarabdha stop <project-path>

Stop any running processes for your project.

Supported Languages and Frameworks

Python

  • Flask: Lightweight web framework
  • FastAPI: Modern, fast web framework with automatic API documentation

Java

  • Spring Boot: Enterprise-grade Java framework

Node.js

  • Express: Fast, unopinionated web framework

Project Structure

Each scaffolded project includes:

  • Production-ready boilerplate with best practices
  • Health check endpoints for monitoring
  • CORS configuration for frontend integration
  • Environment configuration with .env files
  • Comprehensive documentation with setup instructions
  • Git configuration with appropriate .gitignore

Example Usage

Python Flask Project

$ prarabdha start
🚀 Prarabdha
Backend Service Scaffolding Tool

Enter project name: my-flask-api
Enter output directory: /path/to/projects

Select a programming language:
  1. Python
  2. Java
  3. Node.js

Enter your choice: 1

Select a Python framework:
  1. Flask
  2. FastAPI

Enter your choice: 1 Project 'my-flask-api' created successfully!
📁 Location: /path/to/projects/my-flask-api

🚀 Next steps:
    Navigate to your project directory
    Install dependencies
    Run your project

Deploy to Heroku

$ prarabdha deploy ./my-flask-api
Select a deployment service:
  1. Heroku
  2. Railway
  3. Render

Enter your choice: 1

Deploying to Heroku...
Enter Heroku app name: my-awesome-api
✅ Heroku app created successfully!
✅ Deployment successful!

Development

Prerequisites

  • Python 3.8+
  • pip

Setup Development Environment

  1. Clone the repository:
git clone https://github.com/prarabdha/prarabdha.git
cd prarabdha
  1. Install in development mode:
pip install -e .
  1. Run tests:
python -m pytest

Contributing

We welcome contributions! Please see our Contributing Guide for details.

Adding New Languages/Frameworks

  1. Create a new scaffolder in prarabdha/scaffolders/
  2. Implement the create_project method
  3. Add the language option to the CLI
  4. Update documentation

License

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

Support

Roadmap

  • Support for more languages (Go, Rust, C#)
  • Database integration templates
  • Docker support
  • CI/CD pipeline templates
  • Monitoring and logging setup
  • Authentication templates

Made with ❤️ by the Prarabdha team

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

prarabdha_ai-1.4.0.tar.gz (26.1 kB view details)

Uploaded Source

Built Distribution

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

prarabdha_ai-1.4.0-py3-none-any.whl (32.0 kB view details)

Uploaded Python 3

File details

Details for the file prarabdha_ai-1.4.0.tar.gz.

File metadata

  • Download URL: prarabdha_ai-1.4.0.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for prarabdha_ai-1.4.0.tar.gz
Algorithm Hash digest
SHA256 129f625cc0f2c0ea90ab747ec92cd9c4cb275cf5c3601ed65911e914c8cfb2e5
MD5 67f9bdfa4331a224c3e24ea99f7737c2
BLAKE2b-256 4a8254cd8b2a4b0c8d7217086d199186b48e1a9231cc152250ac821fdde31add

See more details on using hashes here.

File details

Details for the file prarabdha_ai-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: prarabdha_ai-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 32.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for prarabdha_ai-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d220c6d633735727dd1bfaece5ac7c8b1fb32942193f12faa60c374ff2c961a8
MD5 231e5ec183b8eca0e87b2e3ede3b90d4
BLAKE2b-256 5db6087c765426d6173f65533d9f1c9e1b813246db71e30cb98954cfb91a43db

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