# Architecture Qlockify is deployed as a containerized web application behind Nginx. ## Runtime Flow ![Qlockify runtime request flow](../assets/diagrams/qlockify-runtime-request-flow.png) High-level request flow: - Browser requests are served through Nginx. - Static frontend assets are served by the frontend container. - API and admin requests are proxied to the Django backend. - Django stores relational data in PostgreSQL. - Redis is used for cache, async job brokering, and background coordination. - Celery workers process async jobs. - Celery Beat schedules recurring jobs such as demo cleanup. ## Multi-Repo Setup ![Qlockify runtime request flow](../assets/diagrams/qlockify-multi-repo-layout.png) The actual source uses separate private repositories for: - backend application code - frontend application code - deployment/orchestration configuration This keeps application changes, frontend changes, and production operations changes isolated from each other. The public showcase repository does not include those private repositories or their deployment files. ## Public Safety Boundary This repository intentionally excludes: - source code - database migrations and schemas - Docker Compose and Nginx configuration - CI/CD workflows - backup scripts - environment variables - private repository URLs with credentials - real production logs or user data