# AGENTS.md Orbit Academy — cohort-based education шаблон: сохраняй neo-brutalist cream/ink/acid стиль, weekly artifacts, critique board, менторов, расписание потоков, admissions flow и alumni community. ## Project Specifics - Программы, модули, расписание, outcomes, student work, mentors, admissions и community лежат в `src/entities/site-content.ts`. - `src/app` — только route wrappers; композиция каждой страницы живёт в отдельном widget (`src/widgets/-page.tsx`). См. File Map. - Mock-интеракции поступления держи в `src/features/*/ui`; не добавляй реальные формы, auth, LMS или платежи без запроса. - Не превращай страницы в обычный SaaS-лендинг или курс с лекциями: каждая страница должна показывать образовательный процесс, артефакт, поток, critique или результат. - Громкий brutalist стиль должен поддерживать доверие: добавляй proof, менторов, работы студентов и конкретные deliverables, а не декоративный шум. - Проверка после правок: `pnpm lint` и `pnpm build`. ## Design System Источник токенов — `src/app/globals.css` (`@theme` + `:root`/`.dark`). Шрифт — Inter (`--font-orbit`), один гарнитур на sans и mono. Работай через семантические классы Tailwind (`bg-primary`, `text-foreground`, `border-foreground`), не хардкодь hex/oklch. Личность: **neo-brutalist «cream / ink / acid»** — тёплый кремовый фон, near-black «ink» как граница и текст, кислотно-зелёный secondary как сигнальный акцент, глубокий indigo primary, оранжевый accent для редких всплесков. | Роль | Light | Характер | |---|---|---| | `background` | тёплый кремовый | основной фон страниц | | `foreground` | near-black ink | текст + **границы** (`border-2 border-foreground`) | | `primary` | глубокий indigo | заголовочные плашки, активные строки | | `secondary` | кислотный лайм | бейджи, сигнальные акценты, hover | | `accent` | оранжевый | редкие точечные всплески | | `card` | почти белый | карточки на кремовом фоне | Узнаваемые приёмы (держи их, это и есть «лицо» проекта): - **Жёсткие углы:** `--radius` = 0.125rem; большинство элементов — `rounded-none`. - **Толстые границы:** `border-2 border-foreground` повсюду; это структура, а не декор. - **Hard offset shadow:** `shadow-[8px_8px_0_var(--foreground)]` (карточки, hover усиливает до `12px`). - **Громкая типографика:** `font-black uppercase`, очень плотный `leading` (`leading-none`/`leading-[0.9]`), крупные размеры (до `text-8xl`). - **Утилитарные классы:** `.orbit-board` — сетка-миллиметровка для «board»-секций; `.marker-highlight` — маркерное подчёркивание лаймом. Do / Don't: - **Do:** расширяй существующий язык — сетки, плашки, board-эстетику; держи контент-first (артефакт, proof, метрика). - **Don't:** мягкие тени, скруглённые карточки, пастель, generic-SaaS hero с градиентом — это ломает личность шаблона. ## File Map | Route | Widget | |---|---| | `/` | `src/widgets/home-page.tsx` (`HomePage`) | | `/programs` | `src/widgets/programs-page.tsx` (`ProgramsPage`) | | `/programs/product-management` | `src/widgets/program-detail-page.tsx` (`ProgramDetailPage`) | | `/schedule` | `src/widgets/schedule-page.tsx` (`SchedulePage`) | | `/outcomes` | `src/widgets/outcomes-page.tsx` (`OutcomesPage`) | | `/admissions` | `src/widgets/admissions-page.tsx` (`AdmissionsPage`) | | `/community` | `src/widgets/community-page.tsx` (`CommunityPage`) | Переиспользуемые блоки: - `src/widgets/site-shell.tsx` — `SiteShell` (header + nav + footer, обёртка всех страниц). - `src/widgets/program-card.tsx` — `ProgramCard` (Home, Programs). - `src/widgets/student-work-card.tsx` — `StudentWorkCard` (Home, Outcomes). - `src/shared/ui/loud-title.tsx` — `LoudTitle` (заголовочная секция внутренних страниц). - `src/features/admission-board/ui/admission-board.tsx` — mock admissions board. Одноразовые блоки колоцированы со своей страницей (напр. `HeroStudio`/`OutcomeStrip` в `home-page.tsx`, `MentorRoster` в `programs-page.tsx`).