Welcome to the PySaaS monorepo! This project serves as a robust, scalable, and modular blueprint for building modern SaaS applications using the Python ecosystem. It's designed to provide a ready-to-use codebase and architectural foundation, allowing developers to focus on their unique business logic rather than boilerplate infrastructure.
Our vision is to offer a comprehensive, end-to-end SaaS framework that enables developers to rapidly build, customize, and self-host scalable, robust, and full-featured SaaS applications using Python.
- AI-Assisted Development: Leveraging AI tools and processes to maximize efficiency across the entire software development lifecycle.
- Automation First: Automate repetitive and complex tasks with "single-command" scripts.
- Convention Over Configuration: Embrace structured frameworks (e.g., FastAPI, Django, Flask for services) to enforce consistency and maintainability.
- Modular & Reusable: Designed with independent microservices and components for high reusability.
- API-First: Clear, consistent, and well-documented APIs for all services.
- Scalable & Resilient: Architected to handle high loads and ensure high availability.
- Security-First: Built with robust security practices at every layer.
- Python-First: Prioritizing Python for robust, scalable, and maintainable codebase.
- Backend Framework: FastAPI (primarily for microservices, allowing for high performance and modern API design)
- Core Transactional Database: PostgreSQL
- Session Management & Caching: Redis
- User Profile Preferences Database: DynamoDB
- Messaging & Queues: RabbitMQ, Apache Kafka
- API Gateway: Custom Python implementation (e.g., using FastAPI or a lightweight proxy)
- Frontend Framework: React (with Next.js Framework - to be integrated from SaaScript frontend modules, or a separate dedicated frontend repo)
- Deployment & Orchestration: Kubernetes (K8s), with Minikube for local development (leveraging its Podman driver).
- Secrets Management: HashiCorp Vault
This monorepo is organized into the following top-level directories:
services/: Houses individual Python microservices (e.g.,auth,billing, etc.).frontend/: Placeholder for frontend applications (can link to or import SaaScript frontend modules).docs/: Comprehensive project documentation, architectural diagrams, and guides.scripts/: Root-level automation scripts for development, testing, and deployment.
To get started with PySaaS, refer to our detailed local development guide:
Explore the comprehensive documentation for PySaaS:
- AI-Assisted Workflow
- Architecture Overview
- Code Style Guidelines
- Development Workflow
- Testing Strategy
Our development workflow will follow an AI-assisted agile methodology with a simplified Gitflow strategy and Conventional Commits. More details can be found in our:
We welcome contributions! Please refer to our:
This project is licensed under the MIT License. See the LICENSE file for more details.
Developed with the assistance of an AI Co-Developer.