# District 79 Directory ## Docs - [Introduction](https://docs.district79.school/introduction.md): District 79 Directory is the Consolidated School Plan system for NYC District 79 alternative schools. - [Quickstart](https://docs.district79.school/quickstart.md): Install, configure, seed, and run the District 79 Directory locally. - [Authentication](https://docs.district79.school/authentication.md): Google OAuth, JWT sessions, domain allowlist, impersonation, and logout revoke. - [System overview](https://docs.district79.school/architecture/overview.md): Runtime topology, app router surfaces, and library boundaries. - [Data flow](https://docs.district79.school/architecture/data-flow.md): How a plan is created, answered, duplicated, attested, and submitted. - [Caching, locks, and Redis](https://docs.district79.school/architecture/caching.md): Redis keyspace, TTLs, in-memory fallback, and when production fail-closed applies. - [Edge proxy and security](https://docs.district79.school/architecture/security.md): Next.js 16 proxy, route gates, security headers, and public vs private indexing. - [UI architecture](https://docs.district79.school/architecture/ui.md): Once UI shell, public portal, and form workspace hierarchy. - [Roles and access](https://docs.district79.school/features/roles.md): Levels 1–5, form RBAC, school-user management, and who must be assigned. - [Role preview](https://docs.district79.school/features/role-preview.md): Super Admin impersonation of demo Principal and Assistant Principal accounts. - [School plans](https://docs.district79.school/features/school-plans.md): Step keys, statuses, autosave, and the form workspace. - [School year and rollover](https://docs.district79.school/features/school-year.md): July–June years, archive locks, duplicate, and district rollover. - [Question bank](https://docs.district79.school/features/question-bank.md): Draft vs published FormTemplate, seeding, and publish rules. - [Collaboration and locking](https://docs.district79.school/features/collaboration.md): Sharing, ownership transfer, active editors, and Redis step locks. - [Reviews, goals, and exports](https://docs.district79.school/features/reviews-exports.md): Super Admin comments, year-scoped goals, and PDF/DOCX/CSV export. - [System health](https://docs.district79.school/features/system.md): Super Admin API, MongoDB, and Redis health tools at /admin/system. - [API overview](https://docs.district79.school/api/overview.md): Authn, status codes, and the route map for District 79 Directory. - [Errors, status codes, and rate limits](https://docs.district79.school/api/errors.md): JSON error envelope, HTTP statuses, and Redis-backed request limits. - [Forms API](https://docs.district79.school/api/forms.md): Create, read, update, duplicate, attest, compare, comment, and export plans. - [Admin API](https://docs.district79.school/api/admin.md): Super Admin question bank, rollover, exports, goals, and sharing. - [Users API](https://docs.district79.school/api/users.md): List, create, update, bulk-import, and collaboration permission routes. - [Database models](https://docs.district79.school/database/models.md): Mongoose collections, indexes, and the formData contract. - [Data relationships](https://docs.district79.school/database/relationships.md): How User, FormSubmission, FormTemplate, SchoolYearSettings, FormComment, and AuditLog connect. - [Environment variables](https://docs.district79.school/deploy/environment.md): Required and optional secrets for local and Vercel environments. - [Production deployment](https://docs.district79.school/deploy/production.md): Vercel build, OAuth production clients, and post-deploy checks. - [Operations](https://docs.district79.school/deploy/operations.md): Seeding, year rollover runbook, audits, and support contacts. - [Troubleshooting](https://docs.district79.school/guides/troubleshooting.md): Common 401/403/429 failures, OAuth, Redis, and local setup FAQ.