A robust application built with Python (FastAPI) backend, React frontend, Couchbase for database operations, and Temporal for workflow orchestration. This project leverages Polytope for container orchestration and development workflow management.
- Backend: Python with FastAPI framework
- Frontend: React with TypeScript, Tailwind CSS, and shadcn/ui
- Database: Couchbase NoSQL database
- Workflow Engine: Temporal for distributed workflow orchestration
- Infrastructure: Docker containers managed by Polytope
- Database Administration: PostgreSQL for Temporal persistence
CI-CDamn/
├── modules/
│ ├── backend/ # Python FastAPI backend service
│ ├── frontend/ # React frontend application
│ ├── couchbase/ # Couchbase configuration
│ ├── temporal/ # Temporal server configuration
│ ├── postgres/ # PostgreSQL for Temporal
│ └── config-manager/ # Configuration management
├── lib/py/
│ ├── couchbase-client/ # Couchbase client library
│ └── temporal-client/ # Temporal client library
└── polytope.yml # Polytope configuration
- Docker installed
- Polytope CLI installed
- UV package manager for Python
- Node.js and npm/bun
- Clone the repository:
git clone https://github.com/Mallard-Dash/CI-CDamn.git
cd CI-CDamn- Start all services using Polytope:
polytope upThis will start:
- Couchbase database server
- Temporal workflow engine
- PostgreSQL (for Temporal)
- Backend API server (with hot reload)
- Frontend development server
- Configuration manager
- Frontend: http://localhost:51732
- Backend API: http://localhost:3030
- Temporal UI: http://localhost:8233
- Couchbase UI: http://localhost:8091
The backend uses FastAPI with hot reload enabled. Changes to Python files are automatically detected.
The frontend uses React with Vite for fast HMR (Hot Module Replacement).
- Couchbase Collections: Use the backend-add-couchbase-collection tool
- Temporal Workflows: Use the backend-add-temporal-workflow tool
- API Endpoints: Add routes in
modules/backend/src/backend/routes/
- Python 3.11+ with FastAPI
- React 18 with TypeScript
- Couchbase 7+ NoSQL database
- Temporal workflow orchestration
- PostgreSQL for Temporal persistence
- Docker for containerization
- Polytope for container orchestration
[Add your license here]