Skip to content
chord-tsPublic

About

πŸ¦„ FDA (Fractal Domain Architecture) β€” Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΡŽ слоТных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, основанный Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… Ρ„Ρ€Π°ΠΊΡ‚Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, строгом Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ отвСтствСнности ΠΈ явном ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ зависимостями

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

14 Commits

Folders and files

Repository files navigation

FDA β€” Fractal Domain Architecture: Π΄ΠΎΠΌΠ΅Π½ cart со слоями UI, Server, Controller, RPC ΠΈ Model; ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡƒΠ»ΡŒ items повторяСт Ρ‚Ρƒ ΠΆΠ΅ структуру

FDA

Fractal Domain Architecture β€” Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΌΠ΅Ρ‚Π°Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°Ρ… Π²Ρ€ΠΎΠ΄Π΅ SvelteKit, Next.js ΠΈ Nuxt.

Код организуСтся Π²ΠΎΠΊΡ€ΡƒΠ³ бизнСс-Π΄ΠΎΠΌΠ΅Π½ΠΎΠ², Π° Π½Π΅ Π²ΠΎΠΊΡ€ΡƒΠ³ тСхничСских Ρ‚ΠΈΠΏΠΎΠ² Ρ„Π°ΠΉΠ»ΠΎΠ². Π’Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° β€” ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ слоёв ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ², ΠΈ эта структура повторяСтся ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Π΄ΠΎ прилоТСния.

SvelteKit Svelte TypeScript Drizzle ORM MIT

Π§Ρ‚ΠΎ это

По ΠΌΠ΅Ρ€Π΅ роста ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΊΠΎΠ΄, Ρ€Π°Π·Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ тСхничСским ΠΏΠ°ΠΏΠΊΠ°ΠΌ (components/, hooks/, utils/), прСвращаСтся Π² ΠΊΠ°ΡˆΡƒ: Π»ΠΎΠ³ΠΈΠΊΠ° ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΠΈΡ‡ΠΈ Ρ€Π°Π·ΠΌΠ°Π·Π°Π½Π° ΠΏΠΎ всСму ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ, ΠΈ Β«Π³Π΄Π΅ Π»Π΅ΠΆΠΈΡ‚ ΠΊΠΎΡ€Π·ΠΈΠ½Π°Β» Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½ΠΈΠΊΡ‚ΠΎ. FDA Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ Π²ΠΎΠΊΡ€ΡƒΠ³ бизнСса β€” ΠΊΠΎΠ΄ ΠΆΠΈΠ²Ρ‘Ρ‚ Π² Π΄ΠΎΠΌΠ΅Π½Π°Ρ… cart, auth, dashboard, ΠΈ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ одинаковая внутрСнняя структура:

  • Π€Ρ€Π°ΠΊΡ‚Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ β€” одинаковая структура Π½Π° всСх уровнях: ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ β†’ ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡƒΠ»ΡŒ β†’ Π΄ΠΎΠΌΠ΅Π½ β†’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
  • Π‘Π»ΠΎΠΈ β€” Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄ΠΎΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹Π΅ проходят ΠΎΠ΄ΠΈΠ½ ΠΏΡƒΡ‚ΡŒ: repo β†’ model β†’ RPC β†’ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ β†’ UI, ΠΈΠΌΠΏΠΎΡ€Ρ‚Ρ‹ смотрят Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π½ΠΈΠ·.
  • Π―Π²Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ β€” ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄Π½Ρƒ Ρ€ΠΎΠ»ΡŒ ΠΈ ΠΎΠ΄ΠΈΠ½ Π½Π°Π±ΠΎΡ€ экспортов.
  • Framework-agnostic β€” SvelteKit, Next.js ΠΈ Nuxt Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ€ΠΎΡƒΡ‚ΠΈΠ½Π³Π°, Π½ΠΎ Π½Π΅ структурой.

Для Π»Π΅Π½Π΄ΠΈΠ½Π³ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠ² FDA ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Π°. АрхитСктура окупаСтся Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… срСднСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈ Π²Ρ‹ΡˆΠ΅, Π³Π΄Π΅ бизнСс-Π΄ΠΎΠΌΠ΅Π½Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΌΡ‹ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΆΠΈΠ²Ρ‘Ρ‚ дольшС ΠΎΠ΄Π½ΠΎΠ³ΠΎ спринта.

Как выглядит Π΄ΠΎΠΌΠ΅Π½

src/routes/cart/          # Π΄ΠΎΠΌΠ΅Π½ Β«ΠΊΠΎΡ€Π·ΠΈΠ½Π°Β»
β”œβ”€β”€ +page.svelte          # UI: Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°
β”œβ”€β”€ +page.server.ts       # server load ΠΈ actions
β”œβ”€β”€ stores.ts             # ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€: Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ состояниС
β”œβ”€β”€ rpc.ts                # API для Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²
β”œβ”€β”€ model.server.ts       # ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ
└── items/                # ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡƒΠ»ΡŒ β€” Ρ‚Π° ΠΆΠ΅ структура Π²Π½ΡƒΡ‚Ρ€ΠΈ

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚: model.server.ts β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, types.ts β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΈΠΏΡ‹, policy.ts β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° доступа. Π”ΠΎΠΌΠ΅Π½Ρ‹ ΠΎΠ±Ρ‰Π°ΡŽΡ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ собой Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· rpc.ts сосСда β€” ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ считаСтся внутрСнностями ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ, Π½Π΅ ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ сосСдСй. Π–ΠΈΠ²ΠΎΠΉ Ρ€Π°Π·Π±ΠΎΡ€ Π΄ΠΎΠΌΠ΅Π½Π° cart β€” Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

ДокумСнтация

ΠŸΡƒΠ±Π»ΠΈΠΊΡƒΠ΅Ρ‚ΡΡ Π½Π° https://fda-docs.vercel.app:

  1. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ β€” Π·Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Π° FDA ΠΈ для ΠΊΠ°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚
  2. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ β€” Ρ„Ρ€Π°ΠΊΡ‚Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, слои, ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹
  3. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° β€” Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈ Β«ΠΊΡƒΠ΄Π° ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ ΠΊΠΎΠ΄Β»
  4. Π”ΠΎΠΌΠ΅Π½Ρ‹ ΠΈ ΠΏΠΎΠ΄ΠΌΠΎΠ΄ΡƒΠ»ΠΈ β€” ΡƒΡ€ΠΎΠ²Π½ΠΈ влоТСнности ΠΈ взаимодСйствиС ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ
  5. ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ Ρ„Π°ΠΉΠ»ΠΎΠ² β€” Ρ€ΠΎΠ»ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΈΠ· ΠΆΠΈΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°
  6. FAQ ΠΈ чСклист β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° модуля ΠΏΠ΅Ρ€Π΅Π΄ ΠΌΠ΅Ρ€ΠΆΠ΅ΠΌ
  7. Π‘ΠΊΠΈΠ»Π» для AI-Π°Π³Π΅Π½Ρ‚ΠΎΠ² β€” ΠΏΡ€Π°Π²ΠΈΠ»Π° FDA для Qwen Code, Claude Code ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…

Π‘ΠΊΠΈΠ»Π» для AI-Π°Π³Π΅Π½Ρ‚ΠΎΠ²

FDA доступна ΠΊΠ°ΠΊ устанавливаСмый скилл ΠΏΠΎ кросс-Π°Π³Π΅Π½Ρ‚Π½ΠΎΠΌΡƒ стандарту .agents/skills:

mkdir -p .agents/skills/fda

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ тСкст скилла Π² .agents/skills/fda/SKILL.md ΠΈ пСрСзапуститС сСссию Π°Π³Π΅Π½Ρ‚Π°. ПослС установки Π°Π³Π΅Π½Ρ‚ собираСт Π΄ΠΎΠΌΠ΅Π½Ρ‹ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρƒ, Π»ΠΎΠ²ΠΈΡ‚ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ слоёв Π½Π° Ρ€Π΅Π²ΡŒΡŽ ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΠΎΠ΄ ваш стСк.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Бтатус
apps/example-sveltekit SvelteKit βœ… Π΄ΠΎΠΌΠ΅Π½ cart
apps/example-next Next.js 🚧 Π² Ρ€Π°Π±ΠΎΡ‚Π΅
apps/example-nuxt Nuxt 🚧 Π² Ρ€Π°Π±ΠΎΡ‚Π΅

Быстрый старт

git clone https://github.com/chord-ts/fda.git
cd fda
pnpm install

pnpm dev                              # докумСнтация
pnpm --filter example-sveltekit dev   # ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΡ€Π·ΠΈΠ½Ρ‹

ЛицСнзия

MIT Β© Din Dmitriy

About

πŸ¦„ FDA (Fractal Domain Architecture) β€” Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΡŽ слоТных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, основанный Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… Ρ„Ρ€Π°ΠΊΡ‚Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, строгом Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ отвСтствСнности ΠΈ явном ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ зависимостями

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages