Skip to main content
RapidKit
Documentation

Build APIs at Warp Speed

Complete guide to building production-ready backends with FastAPI, NestJS, and Go using RapidKit's powerful CLI and module system.

Quick Start

Get your project running in under 2 minutes

Choose Your Framework

FastAPI

High-performance Python API framework

Choose Installation Method

NPM / Node.js

Easiest

Quick start for demos and prototypes

Zero installationCross-platformQuick demos
Requirements
  • Node.js 20+
  • npm or yarn

Installation Steps for FastAPI

1. Create your project
$npx rapidkit create project fastapi.standard my-api
2. Navigate to project
$cd my-api
3. Install dependencies
$npx rapidkit init
4. Start development server
$npx rapidkit dev

Your FastAPI API is ready!

Visit http://localhost:8000 to see your API. Swagger docs at /docs

CLI Commands

40+ powerful commands at your fingertips

npx rapidkit create project

Create a new project with interactive wizard

npx rapidkit create project fastapi.standard my-api
npx rapidkit add

Add modules to your project

npx rapidkit add module auth
npx rapidkit dev

Start development server with hot-reload

npx rapidkit dev --port 3000
npx rapidkit build

Build for production

npx rapidkit build --docker
npx rapidkit test

Run tests with coverage

npx rapidkit test --coverage
npx rapidkit modules

List available modules and details

npx rapidkit modules list

Module System

Production-ready components for your project

Authentication

JWT, OAuth2, 2FA

Database

ORM, Migrations, Pooling

API

Rate Limit, Validation, Cache

Monitoring

Logging, Metrics, Traces

Deployment

Docker, K8s, CI/CD

Testing

Unit, Integration, E2E

Adding Modules to Your Project

Add authentication module
$rapidkit add module auth
Add caching module
$rapidkit add module cache
Add observability module
$rapidkit add module observability

Workspace Structure

Organize multiple projects in one workspace

Workspace Layout

my-workspace/
├── my-api/              # FastAPI project
│   ├── .rapidkit/       # Project config
│   ├── src/             # Source code
│   ├── config/          # Configuration
│   ├── tests/           # Test suite
│   ├── pyproject.toml   # Poetry config
│   └── Dockerfile       # Docker setup
├── my-service/          # NestJS project
│   ├── .rapidkit/       # Project config
│   ├── src/             # Source code
│   ├── test/            # Test suite
│   ├── package.json     # npm config
│   └── Dockerfile       # Docker setup
├── .venv/               # Workspace Python environment
├── .rapidkit-workspace  # Workspace metadata
├── poetry.lock          # Locked Python deps
├── pyproject.toml       # Workspace Python deps
├── rapidkit             # CLI script (bash)
├── rapidkit.cmd         # CLI script (Windows)
├── README.md
└── Makefile

Shared Environment

All projects in a workspace share a single Python environment (via pyproject.toml)

Project Structure

Clean Architecture with DDD principles

FastAPI Project Structure

my-api/
├── .rapidkit/            # RapidKit config
│   ├── project.json      # Project metadata
│   ├── context.json      # Project context
│   ├── cli.py            # Local CLI module
│   └── activate          # Environment activation
├── src/                  # Source code
│   ├── main.py           # FastAPI entry point
│   ├── routing/          # API routes
│   │   └── health.py
│   └── modules/          # Feature modules
├── config/               # Configuration
├── tests/                # Test suite
├── .github/              # GitHub workflows
├── .env.example          # Environment template
├── .gitignore
├── bootstrap.sh          # Setup script
├── docker-compose.yml    # Docker Compose
├── Dockerfile            # Docker config
├── Makefile              # Make commands
├── poetry.lock           # Locked dependencies
├── pyproject.toml        # Poetry config
├── LICENSE
└── README.md
Dependency Inversion

Core depends on abstractions

Modularity

Self-contained modules

Testability

Business logic isolated