Cursor rule
.cursor/rules/project-structure.mdcСтруктура проєкту buero.de — платформа вивчення німецької мови
Cursor rules
Quality
44/100
Scores the file, not the repository.Length
301 words
7 headings · 0 code blocksRepository
3
— · pushed 103 days agoLast changed
3 days ago
First indexed 3 days ago.123456# Buero.de — структура проєкту78## Backend910- Код backend у папці **buero-backend-api/**; вихідний код у **buero-backend-api/src/**.11- **Package manager:** npm.12- Джерела правди (архітектура, модулі, auth) — у **docs/** (див. нижче).1314## Джерела правди1516- **Архітектура та БД:** docs/architecture.md17- **API-модулі:** docs/api-plan.md, docs/modules/*.md18- **Auth:** docs/auth-spec.md, docs/auth-config.md19- **Вимоги:** docs/requirements.md20- **Інструменти:** docs/tools.md2122## Модулі backend (порядок реалізації)23241. **Auth** — реєстрація, логін, refresh, logout; JWT у cookie; refresh у Postgres.252. **Users** — профіль поточного користувача (GET/PATCH me).263. **Placement Test** — один глобальний тест, рівень A1–B2, trial після проходження.274. **Courses** — CRUD курсів (teacher); список/перегляд для студента (доступ за підпискою/trial).285. **Course Materials** — CRUD матеріалів (teacher); читання для студента; типи: video (YouTube), vocabulary, grammar, quiz, scenario, cultural_insight, homework, text.296. **Progress & Quizzes** — course_progress, quiz_attempts (покрокове збереження), рекомендований крок.307. **Subscriptions & Billing** — купівля/підписка на курс (Checkout з course_id), user_course_access, Stripe Customer Portal, webhooks.318. **Lesson Requests** — студент створює запит; вчитель приймає/відхиляє, виставляє completed/rejected.3233## Ролі3435- **student** | **teacher**. Адмін-ролі немає.36- Будь-який вчитель може створювати/редагувати/видаляти будь-який курс (courses.teacher_id лише «хто створив»).3738## Стек (MVP)3940- Backend: NestJS, Prisma, PostgreSQL, JWT (cookie), Swagger, class-validator, class-transformer. **npm** для залежностей.41- Платежі: Stripe. Відео: YouTube (embed). Redis у MVP не використовується.4243## Контент-моделі (фіксовані в проєкті)4445- **Placement Test:** питання в таблиці **placement_questions**; поле **question_data** (JSONB) — текст питання, варіанти відповідей, правильна відповідь; **order_index** для порядку. Один глобальний тест (без course_id). Деталі: docs/modules/02-placement-test.md, docs/architecture.md §3.13.46- **Сценарії (course_materials type = scenario):** **content** — JSON з нодами та гілками. Мінімум 3 гілки на сценарій. Формат нод: `{ id, type: "situation"|"choice"|"consequence"|"explanation", text, choices?: [{ text, nextNodeId, isCorrect, feedback }] }`. Деталі: docs/architecture.md §3.6, docs/modules/04-course-materials.md.47- **Відео (course_materials type = video):** у **content** обов'язково поле **youtube_video_id** для embed (YouTube). Опційно **video_source: "youtube"** для майбутнього S3. Деталі: docs/modules/04-course-materials.md.48
Also in annnsvm/buro-de
Diff this repo’s formatsOne repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| annnsvm/buro-de.cursor/rules/api-patterns.mdc · 3 | Cursor rules | styleapi | 48/100 | 3 days ago | |
| annnsvm/buro-de.cursor/rules/auth-and-roles.mdc · 3 | Cursor rules | security | 39/100 | 3 days ago | |
| annnsvm/buro-de.cursor/rules/coding-style.mdc · 3 | Cursor rules | lint-format | 48/100 | 3 days ago | |
| annnsvm/buro-de.cursor/rules/database-patterns.mdc · 3 | Cursor rules | database | 52/100 | 3 days ago | |
| annnsvm/buro-de.cursor/rules/frontend-patterns.mdc · 3 | Cursor rules | securityapi | 39/100 | 3 days ago | |
| annnsvm/buro-de.cursor/rules/git-workflow.mdc · 3 | Cursor rules | gitagent-behaviour | 25/100 | 3 days ago | |
| annnsvm/buro-de.cursor/rules/stripe-and-access.mdc · 3 | Cursor rules | no sections | 39/100 | 3 days ago | |
| annnsvm/buro-de.cursor/rules/testing-api.mdc · 3 | Cursor rules | testtesting-strategydatabase | 48/100 | 3 days ago |
Diff against .cursor/rules/api-patterns.mdc Diff against .cursor/rules/auth-and-roles.mdc Diff against .cursor/rules/coding-style.mdc Diff against .cursor/rules/database-patterns.mdc Diff against .cursor/rules/frontend-patterns.mdc Diff against .cursor/rules/git-workflow.mdc Diff against .cursor/rules/stripe-and-access.mdc Diff against .cursor/rules/testing-api.mdc
Similar configs
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| hiromaily/go-crypto-wallet.cursor/rules/typescript.mdc · 126 | Cursor rules | setupbuildtestlint-format+6 | 100/100 | 3 days ago | |
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 45 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 3 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 3 days ago | |
| Allymahmoud/case-intake-platform.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 3 days ago | |
| dodgecfr/combatfilms-webapp.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 3 days ago | |
| deifos/clipmira-subtitles.cursor/rules/frontend.mdc · 1 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 3 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 3 days ago | |
| TechSquidTV/Hermes.cursor/rules/20-hermes-api-tests.mdc · 45 | Cursor rules | teststyletesting-strategysecurity+3 | 97/100 | 3 days ago |
