IoT sensor management platform with data visualization.
- Backend: Django 5.2.8, Django Ninja 1.5.0, PostgreSQL 18
- Frontend: Vue.js 3.5.24, Tailwind CSS, Chart.js 4.5.1
- Testing: pytest 9.0.1, pytest-django 4.11.1
- Container: Docker Compose
# Start services
make up
# Access at http://localhost:3000# API docs at http://localhost:8000/api/docs# Run tests
make test# Load sample data
make seed
# Stop services
make downEmail: demo@sensorhub.com
Password: demo123
Base URL: http://localhost:8000/api
POST /auth/register/- Register userPOST /auth/token/- LoginPOST /auth/refresh/- Refresh tokenGET /auth/me/- Get current user
GET /sensors/- List sensors (paginated)POST /sensors/- Create sensorGET /sensors/{id}/- Get sensorPUT /sensors/{id}/- Update sensorDELETE /sensors/{id}/- Delete sensor
GET /sensors/{id}/readings/- List readings (paginated, filterable)POST /sensors/{id}/readings/- Create reading
GET /stats/- Get dashboard stats
Full API documentation: http://localhost:8000/api/docs
make up # Start all services
make down # Stop all services
make test# Run tests
make migrate # Run migrations
make seed # Load sample data
make logs # View logs
make shell # Django shell
make clean # Remove all containers and volumes# Run specific tests
docker compose exec web python -m pytest api/tests/test_auth.py -v
# Create superuser
docker compose exec web python manage.py createsuperuser
# Access database
docker compose exec db psql -U postgres -d fiftytestfiftytest/
├── backend/
│ ├── api/
│ │ ├── tests/ # 38 tests
│ │ ├── api.py # API endpoints
│ │ ├── models.py # Database models
│ │ └── schemas.py # Pydantic schemas
│ ├── config/ # Django settings
│ └── requirements.txt
├── frontend/
│ └── index.html # Vue.js SPA
├── docker-compose.yml
├── Makefile
└── README.md