5.1 KiB
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>-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).