An open API service indexing awesome lists of open source software.

https://github.com/venkateshcv1809/pysaas

A monorepo for building reusable, scalable SaaS microservices using TypeScript and modern cloud-native practices, developed in collaboration with an AI Co-Developer.
https://github.com/venkateshcv1809/pysaas

backend cloud-native fastapi kubernetes microservices pysaas python saas

Last synced: about 2 months ago
JSON representation

A monorepo for building reusable, scalable SaaS microservices using TypeScript and modern cloud-native practices, developed in collaboration with an AI Co-Developer.

Awesome Lists containing this project

README

          

# PySaaS

## A Comprehensive SaaS Blueprint and Framework in a Monorepo Structure (Python)

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.

---

### Project Vision

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.

### Core Principles

- **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.

---

### Technology Stack Highlights (Planned)

- **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

---

### Monorepo Structure

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.

---

### Getting Started (Local Development)

To get started with PySaaS, refer to our detailed local development guide:

- **[Local Development Guide](docs/local_development.md)**

### Documentation

Explore the comprehensive documentation for PySaaS:

- **[AI-Assisted Workflow](docs/ai_assisted_workflow.md)**
- **[Architecture Overview](docs/architecture.md)**
- **[Code Style Guidelines](docs/code_style_guidelines.md)**
- **[Development Workflow](docs/development_workflow.md)**
- **[Testing Strategy](docs/testing_strategy.md)**

### Development Workflow

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:

- **[Development Workflow Guide](docs/development_workflow.md)**

### Contributing

We welcome contributions! Please refer to our:

- **[Development Workflow Guide](docs/development_workflow.md)**
- **[Code Style Guidelines](docs/code_style_guidelines.md)**

### License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.

---

**Developed with the assistance of an AI Co-Developer.**