Files
project-bootstrap/templates/README.md
Bill 8dd4f0ca63 Initial commit: Complete project-bootstrap tool
- Bootstrap script for creating monorepo projects
- FastAPI backend templates with uv, ruff, mypy, pytest
- React frontend templates with TypeScript, ESLint, Prettier
- Docker Compose setup with backend, frontend, and database
- 9 development and CI scripts
- Gitea Actions CI/CD workflows
- Comprehensive documentation (8 files)
- 45 template files for complete project structure
- Automated verification script (all tests pass)
- Based on coding-agent-rules standards
2025-10-15 21:34:08 -04:00

105 lines
2.0 KiB
Markdown

# Project Name
A modern monorepo project with FastAPI backend and React frontend.
## Project Structure
This project follows a modular monorepo layout based on best practices:
- **backend/** - FastAPI server (Python 3.11+)
- **frontend/** - React application (TypeScript)
- **deploy/** - Docker and deployment configurations
- **scripts/** - Shared scripts for CI and development
- **docs/** - Project documentation
## Prerequisites
- Python 3.11+
- Node.js 20 LTS
- Docker & Docker Compose
- uv (Python package manager)
## Quick Start
### Using Docker Compose (Recommended)
```bash
# Start all services
docker compose -f deploy/compose.yml up
# Backend will be available at http://localhost:8000
# Frontend will be available at http://localhost:3000
# API docs at http://localhost:8000/docs
```
### Local Development
#### Backend
```bash
cd backend
cp .env.example .env
uv sync
uv run uvicorn app.main:app --reload
```
#### Frontend
```bash
cd frontend
cp .env.example .env
npm install
npm start
```
## Development Scripts
Located in `scripts/` directory:
- **scripts/dev/** - Developer convenience scripts
- `start-backend.sh` - Start backend server
- `start-frontend.sh` - Start frontend dev server
- `start-database.sh` - Start database container
- `reset-database.sh` - Reset database
- **scripts/utils/** - Utility scripts
- `lint-backend.sh` - Lint backend code
- `lint-frontend.sh` - Lint frontend code
- `format-all.sh` - Format all code
## Testing
### Backend
```bash
cd backend
uv run pytest --cov=app --cov-report=term-missing
```
### Frontend
```bash
cd frontend
npm test
npm run test:coverage
```
## Code Quality
- **Backend**: ruff (format + lint), mypy (type checking), 100% test coverage required
- **Frontend**: ESLint, Prettier, Jest, 90%+ test coverage
## CI/CD
CI workflows are defined in `.gitea/workflows/` and use scripts from `scripts/ci/`.
## Documentation
- API documentation: `/docs/api/`
- Architecture diagrams: `/docs/architecture/`
- User guide: `/docs/user-guide/`
## License
[Specify your license here]