Backend: - Add type validation and coercion for settings API - Implement SettingStorage and SettingType in registry - Improve CRUD operations for settings Frontend: - Refactor Theme, Language, Sidebar, ViewMode contexts - Simplify admin components (GeneralTab, SettingsTab, UsersTab) - Add new settings endpoints to API client - Improve App initialization flow Infrastructure: - Update Dockerfile and docker-compose.yml - Add .dockerignore - Update Makefile and README 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2.2 KiB
2.2 KiB
Service App
Modern web application for service management. Built with React, FastAPI, and SQLite.
Features
- 👥 User Management
- 🔐 Authentication & Authorization
- 🎨 Modern, responsive UI with dark mode
- 🐳 Fully containerized with Docker
Technology Stack
Frontend
- React 19 + TypeScript
- Vite (build tool)
- React Router
- Axios
Backend
- FastAPI (Python 3.11+)
- SQLAlchemy 2.0 (ORM)
- SQLite (Database)
- Alembic (migrations)
- JWT authentication
Infrastructure
- Docker + Docker Compose
Quick Start
Prerequisites
- Docker and Docker Compose
- Git
Installation
- Clone the repository:
git clone <repository-url>
cd <repository-folder>
- Copy environment variables:
cp .env.example .env
# Edit .env with your configuration
- Generate secret key:
openssl rand -base64 32
# Add to .env as SECRET_KEY
- Start all services:
docker-compose up -d
- Access the application:
- Frontend: http://localhost:5174
- Backend API: http://localhost:5174/api/v1
- API Documentation: http://localhost:5174/docs
Project Structure
.
├── docker-compose.yml
├── backend/ # FastAPI application
│ ├── app/
│ │ ├── api/ # API routes
│ │ ├── models/ # SQLAlchemy models
│ │ ├── schemas/ # Pydantic schemas
│ │ ├── services/ # Business logic
│ │ └── main.py # Entry point
│ └── alembic/ # Database migrations
├── frontend/ # React application
│ └── src/
│ ├── components/ # React components
│ ├── pages/ # Page components
│ ├── api/ # API client
│ └── hooks/ # Custom hooks
└── scripts/ # Utility scripts
Configuration
Environment Variables
See .env.example for all available configuration options.
Key variables:
SECRET_KEY: JWT secret keyALLOWED_HOSTS: CORS configuration
Contributing
Feel free to fork and customize for your needs.