Files
HIPCTF2/docs/index.md
T

69 lines
2.9 KiB
Markdown

---
okf_version: "0.1"
---
# HIPCTF Documentation
HIPCTF is a single-tenant CTF (Capture-The-Flag) platform built as a Node.js
monorepo containing a NestJS REST API and an Angular single-page application.
It supports user registration, authentication, challenge management, a live
scoreboard, an event window with a public countdown, theming, and admin
controls.
The docs below are organized by purpose so agents can pull just the slice
they need. Last regenerated 2026-07-21T16:48:20Z.
# Architecture
* [System Overview](/architecture/overview.md) - High-level layout of the
backend, frontend, and how they communicate.
* [Backend Module Map](/architecture/backend-modules.md) - NestJS modules,
controllers, services, and their wiring.
* [Frontend Structure](/architecture/frontend-structure.md) - Angular routes,
components, services, and guards.
* [Key Files Index](/architecture/key-files.md) - One-line summary of every
important source file in the repository.
# Database
* [Schema Overview](/database/schema.md) - Tables, relationships, and indexes.
* [User Table](/database/users.md) - `user` table schema and seed behavior.
* [Challenge Tables](/database/challenges.md) - `category`, `challenge`,
`challenge_file`, `solve` tables.
* [Auth and Settings Tables](/database/auth-settings.md) - `refresh_token`
and `setting` tables.
* [Blog Post Table](/database/blog-posts.md) - `blog_post` table.
# API
* [REST API Overview](/api/rest-overview.md) - Base URL, versioning, auth,
CSRF, and error envelope.
* [Auth Endpoints](/api/auth.md) - Login, refresh, logout, CSRF, and
first-admin registration.
* [Setup Endpoint](/api/setup.md) - Dedicated `POST /api/v1/setup/create-admin`
used only while no administrator exists.
* [Admin Endpoints](/api/admin.md) - User management endpoints
(admin role required).
* [System Endpoints](/api/system.md) - Bootstrap, event status, and SSE
streams.
* [Uploads Endpoints](/api/uploads.md) - Admin-only multipart uploads.
# Guides
* [First-Run Bootstrap](/guides/bootstrap.md) - How a fresh instance is
initialized by the very first admin via the non-dismissible modal.
* [Setup Form Field Errors](/guides/setup-field-errors.md) - Pure
helpers that translate reactive-form state into the inline validation
messages on the first-admin modal.
* [Admin Shell & User Management](/guides/admin-shell.md) - How admins
navigate the post-login shell and reach the user-management area.
* [Session Restoration on Reload](/guides/session-restoration.md) - How
the SPA keeps a user signed in across hard refreshes and how the
guards wait for bootstrap + auth hydration before deciding where to
route.
* [Theming](/guides/theming.md) - How themes are loaded and applied.
* [Event Window](/guides/event-window.md) - How the event window and live
countdown work.
* [Scoreboard Stream](/guides/scoreboard-stream.md) - How live solves are
broadcast to clients.