Getting Started
Installation
Uruchom monorepo Nucleify na swoim komputerze.
Wymagania
| Narzędzie | Wersja | Uwagi |
|---|---|---|
| Node.js | ≥ 20 | Wymagane przez root package.json |
| pnpm | 10.x | Menedżer workspace (packageManager: pnpm@10.33.0) |
| Git | dowolna nowsza | Klonowanie repozytorium |
| Make | dowolny | Skróty workspace z root Makefile |
| Supabase CLI | opcjonalnie | Tylko przy lokalnym stacku Supabase |
Klonowanie repozytorium
git clone https://github.com/Nucleify/Nucleify.git
cd NucleifyPierwsza konfiguracja
Z katalogu głównego repozytorium uruchom:
make runTa komenda:
- Tworzy
.env— kopiujeweb/.config/.env.exampledo root repozytorium, jeśli.envnie istnieje - Instaluje zależności —
pnpm installwe wszystkich pakietach workspace - Przygotowuje Husky — hooki git do lintu i testów
- Przygotowuje web —
pnpm --filter @nucleify/web prepare - Synchronizuje reguły Cursor —
pnpm sync-rules - Buduje kompilator —
pnpm compiler:check+pnpm compiler:build(pomiń przezSKIP_COMPILER=1 make run)
Jeśli masz już plik .env, użyj make setup — te same kroki bez nadpisywania konfiguracji środowiska.
Zmienne środowiskowe
Po make run edytuj root .env i uzupełnij minimum:
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_KEY=your-anon-key
SUPABASE_SERVICE_ROLE_KEY=your-service-role-keyBramka API w web/src/server/api/[...slug].ts wymaga SUPABASE_URL i SUPABASE_SERVICE_ROLE_KEY dla tras modułów. Bez nich endpointy smoke (/api, /api/test) nadal działają, ale handlery domenowe zwracają 503.
Zobacz Zmienne środowiskowe po pełną referencję.
Weryfikacja instalacji
Uruchom aplikację landingową:
make webOtwórz http://localhost:3000. Domyślne przekierowanie locale kieruje na /en/home.
Inne pakiety:
make admin # panel admin (Nuxt)
make docs # strona dokumentacji (Astro)
make compiler # tylko check + build kompilatoraPakiety workspace
Monorepo używa workspace pnpm. Filtruj komendy, gdy potrzebujesz konkretnego pakietu:
pnpm --filter @nucleify/web dev
pnpm --filter @nucleify/admin dev
pnpm --filter @nucleify/docs devSkróty root odpowiadają Makefile:
| Skrypt | Pakiet |
|---|---|
pnpm dev |
@nucleify/web |
pnpm admin |
@nucleify/admin |
pnpm docs |
@nucleify/docs |
pnpm compiler |
CLI @nucleify/compiler |
Opcjonalnie: lokalny Supabase
Przy rozwoju na lokalnej instancji Supabase:
# Zastosuj scalone migracje modułów, fabryki i seedery
pnpm supabase:setup:localSQL ze wszystkich modułów jest scalany przez .config/bash/merge-module-supabase-sql.sh. Szczegóły: Supabase.
Rozwiązywanie problemów
Kompilator nie przechodzi przy setupie
Pomiń codegen kompilatora podczas bootstrapu:
SKIP_COMPILER=1 make run
make compiler # uruchom ręcznie, gdy deps są stabilnePort już zajęty
Nuxt domyślnie używa portu 3000. Ustaw inny port w shellu lub zatrzymaj konfliktujący proces.
Błędy brakującego Supabase w trasach API
Upewnij się, że .env jest w root repozytorium (nie w web/). Nuxt ładuje go przez web/.config/nuxt/load-env.ts, który czyta root .env monorepo.
Niezgodność wersji pnpm
Zainstaluj wersję przypiętą w package.json:
corepack enable
corepack prepare pnpm@10.33.0 --activateNastępne kroki
- Szybki start — przegląd repozytorium i typowe workflow
- Konfiguracja Web & Admin — rozdzielona konfiguracja Nuxt i aliasy
- Układ monorepo — referencja katalogów