44 lines
1.0 KiB
Markdown
44 lines
1.0 KiB
Markdown
# BellSystems Admin Panel
|
|
|
|
Self-hosted web admin panel for managing BellSystems devices, melodies, users, and MQTT communications.
|
|
|
|
## Tech Stack
|
|
|
|
- **Backend:** Python / FastAPI
|
|
- **Frontend:** React + Tailwind CSS (Vite)
|
|
- **Database:** Google Firestore (Firebase Admin SDK)
|
|
- **MQTT:** Mosquitto (paho-mqtt)
|
|
- **Auth:** JWT with role-based access control
|
|
- **Deployment:** Docker Compose + Nginx
|
|
|
|
## Getting Started
|
|
|
|
```bash
|
|
# Clone the repo
|
|
git clone <your-gitea-url>/bellsystems-admin.git
|
|
cd bellsystems-admin
|
|
|
|
# Copy env template and fill in your values
|
|
cp .env.example .env
|
|
|
|
# Place your Firebase service account key in the project root
|
|
# (file is gitignored — never commit it)
|
|
|
|
# Start everything
|
|
docker compose up --build
|
|
```
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
bellsystems-admin/
|
|
├── backend/ # FastAPI API server
|
|
├── frontend/ # React SPA
|
|
├── nginx/ # Reverse proxy config
|
|
├── docker-compose.yml
|
|
└── .env
|
|
```
|
|
|
|
## Documentation
|
|
|
|
See `BellSystems_AdminPanel_Strategy.md` for the full architecture and build plan. |