Wyeksportuj kod źródłowy z platformy vibe-coding w czysty sposób
Dowiedz się, jak wyeksportować kod źródłowy z platformy vibe-coding i przejąć go w czysty sposób: uruchom lokalnie, skonfiguruj CI, zarządzaj sekretami i przygotuj repo do przekazania.

Co oznacza przejęcie po eksporcie
Posiadanie kodu to coś więcej niż otrzymanie zipa z platformy. To możliwość zbudowania, uruchomienia, zmiany i wysłania aplikacji bez potrzeby oryginalnego workspace’u, specjalnych przycisków lub ukrytych ustawień. Projekt, który naprawdę przejmujesz, zachowuje się jak normalne repo: nowy współpracownik może je sklonować, uruchomić na laptopie i wdrożyć przez standardowy pipeline.
Większość lęków przed lock-inem wynika z kilku powtarzających się braków:
- Konfiguracja istniejąca tylko w UI platformy
- Kroki budowania wykonywane „gdzieś indziej"
- Zależności założone, ale nie zapisane
Innym częstym zaskoczeniem jest sytuacja, gdy aplikacja działa poprawnie w hostowanej wersji, a na lokalnym środowisku zawodzi, bo zmienne środowiskowe, konfiguracja bazy danych lub sekrety nie zostały wyraźnie udokumentowane.
Czysty eksport z platformy vibe-coding powinien prowadzić do czterech rezultatów:
- Możesz uruchomić wyeksportowaną aplikację lokalnie według przewidywalnych kroków.
- Możesz ją wdrożyć z własnego repo używając CI, a nie ręcznych kliknięć.
- Sekrety są bezpiecznie obsługiwane (brak kluczy w Git, brak zgadywania).
- Repo jest gotowe do przekazania, więc nowa osoba szybko się wdroży i zaufa temu, co widzi.
To ma znaczenie nawet jeśli nigdy nie planujesz opuszczać platformy. Solidne podejście do własności to ubezpieczenie: zmniejsza ryzyko, ułatwia audyty i upraszcza negocjacje przy zatrudnianiu agencji, pozyskiwaniu funduszy czy zmianie zespołów.
Jeśli korzystałeś z Koder.ai, twój eksport może zawierać typowe stacki jak aplikacja React, backend w Go, PostgreSQL lub aplikacja mobilna Flutter. Stack ma mniejsze znaczenie niż zasada: wszystko, co potrzebne do uruchomienia, powinno być widoczne w repozytorium, a nie uwięzione w hostowanym środowisku.
Wyobraź sobie założyciela przekazującego aplikację wykonawcy. „Oto repo” powinno być wystarczające. Wykonawca nie powinien potrzebować dostępu do oryginalnego projektu platformy, żeby znaleźć bazowy URL API, stworzyć schemat bazy danych czy dowiedzieć się, jak zbudować frontend.
Czego oczekiwać w wyeksportowanym projekcie
Po eksporcie powinieneś mieć normalne repo, które możesz otworzyć w edytorze, uruchomić na laptopie i przekazać innemu zespołowi bez potrzeby oryginalnej platformy.
W projektach z Koder.ai eksporty często odpowiadają znajomym strukturom: aplikacja React, backend w Go i (jeśli powstała) aplikacja Flutter. Nazwy folderów się różnią, ale repo powinno jasno pokazywać, gdzie leży każda część i jak się łączą.
Kształt projektu: foldery, entrypointy i co co uruchamia
Zacznij od zlokalizowania punktów startowych i zamierzonego workflowu. Chcesz znaleźć pierwszy plik, który odpala każdą aplikację, oraz skrypty pokazujące jak rozwijać i uruchamiać projekt.
Typowe oznaki:
- Web:
package.jsonplus foldersrc/(często zmain.tsxlub podobnym) - Backend:
go.modi foldercmd/lubmain.go - Mobile:
pubspec.yamlFluttera ilib/main.dart - Plik
READMElubMakefilena najwyższym poziomie opisujący, jak uruchomić wszystko docker-compose.yml, jeśli eksport ma uruchamiać zestaw usług
Zależności, konfiguracja i elementy bazy danych
Zależności powinny być zablokowane. Dla JavaScript oznacza to plik lock (package-lock.json, yarn.lock lub pnpm-lock.yaml). Dla Go to go.mod i go.sum. Brak plików blokujących nie sprawia, że projekt jest niemożliwy do uruchomienia, ale utrudnia powtarzalne buildy.
Konfiguracja powinna być oddzielona od kodu. Szukaj przykładów jak .env.example lub config.example.yaml. Nie powinieneś widzieć prawdziwych sekretów (klucze API, hasła produkcyjne) w commicie. Jeśli je znajdziesz, traktuj to jako wyciek i rotuj je.
Dla pracy z bazą danych znajdź folder migracji (migrations/, db/migrations/) lub pliki SQL z timestampami. W aplikacji Go + PostgreSQL może być też mały runner migracji lub skrypt wykonujący migracje.
Szybki sanity check: najpierw zlokalizuj komendy budowania i uruchamiania (npm run dev, go run, make i podobne). Jeśli jakiś skrypt zależy od polecenia specyficznego dla platformy, zastąp je standardowym narzędziem zanim ogłosisz repo niezależnym.
Krok po kroku: eksport, commit i uruchomienie lokalne
Traktuj eksport jak artefakt release. Zanim cokolwiek uruchomisz, zrób szybki przegląd „czy wszystko jest?”. Braki łatwiej złapać teraz niż po rozpoczęciu zmian.
Praktyczne sprawdzenie kompletności to poszukanie „korzeni” każdej części: package.json dla Reacta, go.mod dla backendu i pliki migracji/seed dla PostgreSQL.
Czysty pierwszy commit (aby historia zaczynała się czytelnie)
Utwórz świeże repo Git z wyeksportowanego folderu, a następnie skomituj dokładnie to, co dostałeś, zanim cokolwiek poprawisz. Daje to czytelną bazę i ułatwia późniejsze przeglądy zmian.
git init
# Optional: set default branch name
# git branch -M main
git add -A
git commit -m "Initial export"
Teraz uruchamiaj lokalnie krokami, które można zweryfikować. Zainstaluj zależności, przygotuj konfigurację lokalną, uruchom bazę danych najpierw, potem backend, a na końcu frontend. W trakcie zapisz każdą komendę, której faktycznie używasz. Te notatki staną się Twoim README.
Oto prosty zestaw komend, który możesz dopasować do wyeksportowanej struktury:
# Frontend
cd web
npm install
npm run dev
# Backend
cd ../server
go mod download
go run ./cmd/server
Potwierdź, że baza danych naprawdę działa (nie tylko "serwer wystartował")
Serwer może się uruchomić, a aplikacja nadal być uszkodzona. Potwierdź, że może czytać i zapisywać dane.
Wybierz szybkie testy pasujące do produktu:
- Otwórz stronę wyraźnie zależną od danych (lista, profil, dashboard).
- Stwórz rekord (rejestracja, dodanie itemu, notatki), odśwież i potwierdź, że się zapisał.
- Wykonaj jedno uaktualnienie i jedno usunięcie, jeśli UI na to pozwala.
- Obserwuj logi pod kątem błędów migracji lub „relation does not exist”.
Gdy masz działający lokalny przebieg, przenieś notatki do prawdziwego README.md z komendami do kopiowania: skąd uruchamiać, w jakiej kolejności i jakie zmienne środowiskowe są wymagane.
Przekształcenie eksportu w repo gotowe do przekazania
Eksport może działać, ale nadal sprawiać wrażenie „wygenerowanego” zamiast należeć do zespołu. Repo gotowe do przekazania jasno pokazuje, gdzie co leży, jak uruchomić projekt i jak utrzymać spójność.
Zacznij od przejrzystego układu na najwyższym poziomie. Nazwy są mniej ważne niż konsekwencja.
apps/dla frontendów skierowanych do użytkownika (web, mobile)services/dla API, workerów i jobówshared/dla współdzielonych typów i narzędziinfra/dla szablonów deploya, skryptów i przykładów środowiskdocs/dla notatek architektonicznych i runbooków
Następnie dodaj kilka plików, które zmniejszą niepewność:
README.mdz wymaganiami i dokładnymi komendamiCONTRIBUTING.mdz kilkoma zasadami (branże, PR-y, brak sekretów).gitignoreaby trzymać lokalne pliki env i buildy poza Git
Utrzymaj README praktyczne. Jeśli repo zawiera wiele części (React frontend, Go API, PostgreSQL), wypisz kolejność uruchamiania i gdzie leży konfiguracja (np. „skopiuj .env.example do .env”).
Zrób test na świeżym środowisku: sklonuj do nowego folderu i wykonaj instrukcje z README. Jeśli eksportujesz z Koder.ai, potraktuj eksport jako pierwszy commit nowego, niezależnego projektu i dopiero wtedy zapraszaj innych.
Lokalny setup deweloperski, którego nowi ludzie mogą przestrzegać
Dobry lokalny setup odpowiada szybko na jedno pytanie: czy nowa osoba jest w stanie uruchomić aplikację w mniej niż 15 minut bez zgadywania.
Wybierz domyślne podejście lokalne i bądź precyzyjny. Natywne instalacje są szybkie dla osób z odpowiednimi narzędziami. Kontenery dają większą spójność między maszynami, ale dodają narzut. Jeśli wspierasz oba podejścia, oznacz jedno jako domyślne, drugie jako opcjonalne.
Prosty wzorzec, który dobrze działa: jedna strona README, jeden przykładowy plik env i jedna komenda bootstrap.
Minimalny, bezpieczny setup env
Commituj plik przykładowy z fałszywymi wartościami, żeby ludzie wiedzieli, co ustawić, bez wycieku sekretów.
# .env.example (przykładowe wartości)
APP_ENV=local
PORT=8080
DATABASE_URL=postgres://app_user:app_pass@localhost:5432/app_db?sslmode=disable
JWT_SECRET=change-me
API_BASE_URL=http://localhost:8080
W README wyjaśnij, gdzie ma być prawdziwy plik (np. „skopiuj do .env”) i które zmienne są wymagane, a które opcjonalne.
Jedna komenda do bootstrapu
Dodaj prosty skrypt, który wykonuje nudne kroki we właściwej kolejności. Niech będzie czytelny.
#!/usr/bin/env bash
set -euo pipefail
cp -n .env.example .env || true
# Backend deps
cd backend
go mod download
# Database: create, migrate, seed
./scripts/db_create.sh
./scripts/db_migrate.sh
./scripts/db_seed.sh
# Frontend deps
cd ../web
npm install
Dla planu bazy danych udokumentuj trzy rzeczy: jak stworzyć DB, jak uruchamiać migracje i jak uzyskać seedy dla realistycznego pierwszego uruchomienia.
Na koniec dodaj szybki health check, żeby ludzie mogli potwierdzić, że aplikacja działa przed klikalną eksploracją. Mały endpoint typu GET /health zwracający "ok" (i weryfikujący połączenie z bazą) często wystarcza.
Sekrety i konfiguracja bez wycieków
Po eksporcie kod może być Twój, ale sekrety muszą pozostać prywatne. Zakładaj, że repo będzie udostępniane nowym współpracownikom.
Zacznij od spisania, czego aplikacja potrzebuje do uruchomienia. Nie zgaduj. Przejrzyj kod pod kątem odczytów konfiguracji (zmienne środowiskowe, pliki konfiguracyjne) i sprawdź integracje, które włączyłeś.
Podstawowa lista sekretów zwykle obejmuje: dane dostępowe do bazy, klucze API do zewnętrznych usług, ustawienia auth (OAuth lub JWT), dane storage oraz specyficzne dla aplikacji sekrety (klucze szyfrowania, signowanie webhooków).
Zdecyduj, gdzie każdy sekret jest przechowywany w poszczególnych środowiskach. Dobre reguły domyślne:
- Lokalnie:
.envzarządzany przez dewelopera (nie commitowany) - CI: magazyn sekretów oferowany przez dostawcę CI
- Produkcja: dedykowany menedżer sekretów lub zmienne środowiskowe hosta
Jeśli eksportujesz z platformy vibe-coding jak Koder.ai, zakładaj, że cokolwiek pokazane w czacie, logach lub panelach ustawień mogło być skopiowane. Wyciągnij sekrety z repo natychmiast.
Praktyczne podejście: commituj bezpieczny szablon (np. .env.example), trzymaj prawdziwe wartości poza Gitem (dodaj .env do .gitignore) i wstrzykuj produkcyjne sekrety w czasie wdrożenia.
Jeśli istnieje choć cień możliwości, że sekrety zostały ujawnione podczas eksportu, rotuj je. Priorytetuj hasła do bazy, sekrety klienta OAuth i klucze do webhooków.
Dodaj kilka zabezpieczeń, by to się nie powtórzyło: pre-commit sprawdzający oczywiste wzorce sekretów, skan sekretów w CI, rygorystyczne ładowanie konfiguracji, które natychmiast zgłasza brak wymaganych zmiennych, oraz oddzielne dane dostępowe dla środowisk.
Krótki SECRETS.md pomoże przy przekazywaniu. Prosto: wymagane zmienne, gdzie są przechowywane w poszczególnych środowiskach i kto może je rotować.
Ustaw CI, aby repo pozostało zdrowe
Gdy przejmujesz repo, CI jest twoją siatką bezpieczeństwa. Zacznij od prostego zestawu. Każdy push powinien udowodnić, że projekt się buduje, podstawowe checki przechodzą i testy (jeśli są) uruchamiają się.
CI powinno szybko odpowiadać na pytanie: „Czy ta zmiana jest bezpieczna do zmergowania?” Dla większości repo oznacza to instalację zależności, build, lint i uruchomienie testów jednostkowych.
Podziel zadania według części aplikacji, żeby błędy były czytelne:
- Web: instalacja, lint/typecheck, build, uruchomienie testów
- Backend: build, uruchomienie testów jednostkowych, linters/format checks
- Opcjonalnie mobile (Flutter): analize, testy, build
- Opcjonalny check bazy: zastosowanie migracji w środowisku throwaway
Używaj cache, ale nie pozwól, by ukrywał problemy. Kiedy cache nie zadziała, CI powinno nadal działać, tylko wolniej.
Preferuj jedną komendę na krok (make test, npm run test itd.), tak aby ta sama komenda działała lokalnie i w CI. Upraszcza to porównania i skraca logi.
Przykładowy kształt (dostosuj nazwy do swojego repo):
jobs:
web:
steps:
- run: npm ci
- run: npm run lint
- run: npm run build
api:
steps:
- run: go test ./...
- run: go build ./...
Gdy podstawy działają, dodaj prosty flow release: tagowanie wydań, budowanie artefaktów i przechowywanie ich jako artefakty CI. Nawet jeśli dziś wdrażasz z platformy, powtarzalne artefakty ułatwią późniejszą zmianę hosta.
Typowe błędy i jak ich unikać
Eksport kodu to tylko połowa pracy. Druga połowa to upewnienie się, że projekt zachowuje się tak samo poza platformą.
Błąd 1: Oczekiwanie, że uruchomi się bez żadnej konfiguracji
Eksport często zależy od zmiennych środowiskowych, migracji, seedów i kroków budowania, które wcześniej były obsługiwane za Ciebie. Pusty ekran lub błąd bazy przy pierwszym uruchomieniu to normalna sprawa.
Wykonaj bazowy przebieg przed zmianami: zainstaluj zależności, ustaw zmienne, uruchom migracje i serwisy w określonej kolejności. Napraw tylko to, co potrzebne, by dopasować się do oczekiwanego setupu.
Błąd 2: Wycieki sekretów do Gita
Najczęstszy wypadek to commit prawdziwych kluczy lub haseł, zwykle przez skopiowany .env lub automatycznie wygenerowany config.
Commituj tylko szablony. Trzymaj realne wartości w lokalnym środowisku lub w magazynie sekretów.
Błąd 3: Zbyt wczesne zmiany zależności
Aktualizowanie pakietów lub reorganizacja folderów od razu utrudnia ustalenie, czy problem pochodzi z eksportu czy z twoich zmian.
Najpierw uzyskaj działający przebieg, potem wprowadzaj ulepszenia w małych, oddzielnych commitach.
Błąd 4: Brak przypiętych wersji
"Działa na mojej maszynie" często wynika z nieprzypiętych wersji narzędzi (Node, Go, Flutter czy menedżerów pakietów).
Przypnij wersje runtime w czytelnym miejscu (plik lub README), trzymaj lockfile (package-lock, go.sum, pubspec.lock) i weryfikuj setup na drugiej maszynie lub w świeżym kontenerze.
Błąd 5: Pomijanie dokumentacji, a potem płacenie za to
Przekazania nie udają się, bo nikt nie pamięta jednego dziwnego kroku potrzebnego do uruchomienia aplikacji. Zapisz go, póki pamiętasz: wymagane zmienne środowiskowe, jak uruchamiać migracje, gdzie trafiają logi i jak zresetować lokalny stan.
Realistyczny przykład: z projektu na platformie do niezależnego repo
Trzyosobowy zespół buduje portal klienta w Koder.ai: React web, Go API i PostgreSQL. Gdy nadchodzi moment przekazania zewnętrznemu zespołowi, chcą, żeby eksport wyglądał jak normalne repo, które można uruchomić pierwszego dnia.
Dzień 1: eksportują, tworzą świeże repo i uruchamiają lokalnie. Frontend startuje, ale API pada, bo brakuje zmiennych środowiskowych. Nie zgadują. Przeglądają kod, identyfikują dokładne klucze i tworzą .env.example z placeholderami. Prawdziwe wartości zostają w menedżerze haseł i lokalnych .env.
Zauważają też, że porty i ustawienia CORS były ok na platformie, ale potrzebują domyślnych wartości lokalnych. Ustawiają przewidywalne domyślnie (np. API na 8080, web na 3000), żeby nowe maszyny zachowywały się tak samo.
Dzień 2: dodają migracje i mały seed tworzący użytkownika demo i kilka wierszy. Następnie piszą krótkie README z wymaganiami, komendami uruchomienia i sposobem weryfikacji działania (endpoint health dla API i przykładowe logowanie dla UI).
Dzień 3: dodają podstawowy workflow CI, który uruchamia testy, linting i buildy obu usług przy każdym PR. Dla stagingu dokumentują prosty plan: buduj kontenery, ustaw sekrety w środowisku, uruchom migracje przy deployu i miej opcję rollbacku.
Dobry handoff zwykle zawiera repo, które działa lokalnie po świeżym klonie, .env.example plus notatki gdzie trzymać sekrety, migracje i seedy, CI które szybko zgłasza błędy oraz krótką notatkę deployową dla stagingu i rollbacku.
Szybkie sprawdzenia i kolejne kroki
Zanim uznasz eksport za ukończony, udowodnij, że projekt może żyć poza platformą. Jeśli inny deweloper jest w stanie uruchomić go bez zgadywania, jesteś w dobrej sytuacji.
Użyj tej końcowej checklisty:
- Repo czytelne: jasne README, sensowne nazwy folderów i jedna metoda uruchamiania aplikacji.
- Lokalny przebieg działa od zera: clone, install, configure, run i widoczna aplikacja bez ręcznych poprawek.
- Testy uruchamiają się (nawet smoke test lub health check jest lepszy niż nic).
- CI uruchamia się przy każdym pushu: lint, testy i build, które szybko zgłaszają błędy.
- Sekrety oddzielone: brak kluczy w repo i plik przykładowy pokazujący wymagane zmienne.
- Dokumentacja obejmuje podstawy: jak uruchomić, jak wdrożyć i gdzie zmieniać typowe ustawienia.
Po technicznym sprawdzeniu, uczynij własność explicitną. Zdecyduj, kto odpowiada za aktualizacje zależności, zmiany infrastruktury (bazy, kolejki, DNS) i wydania. Jeśli nikt tego nie kontroluje, repo powoli będzie gnić, nawet jeśli dziś aplikacja działa.
Zaplanuj krótkie okno stabilizacyjne przed większą pracą funkcjonalną. 2–5 dni roboczych często wystarcza, aby naprawić niedoróbki eksportu, dopracować README i usunąć problemy typu „działa na mojej maszynie”.
Jeśli używasz Koder.ai (koder.ai), eksporty oraz funkcje jak snapshoty i rollback ułatwiają iterację podczas wzmacniania repo. Gdy repo stanie się stabilne, traktuj Git jako źródło prawdy, a przyszłe eksporty jako checkpointy, nie główną historię.
Zdefiniuj następny kamień milowy handoffu prostym stwierdzeniem: "Każdy deweloper potrafi uruchomić to w 30 minut." Następnie przetestuj to, prosząc kogoś nowego o wykonanie instrukcji z README na świeżej maszynie. Ich pytania staną się Twoją ostatnią listą zadań.
Często zadawane pytania
Co dokładnie znaczy „przejąć kontrolę” po eksporcie kodu?
Traktuj przejęcie jako niezależność: potrafisz zbudować, uruchomić, zmienić i wdrożyć aplikację z normalnego repozytorium bez potrzeby dostępu do oryginalnego projektu na platformie, specjalnych ustawień UI czy ukrytych kroków budowania.
Dobry test brzmi: czy nowa osoba może sklonować repo i uruchomić je korzystając wyłącznie z README?
Co powinienem sprawdzić najpierw, aby ocenić czy eksport jest kompletny?
Zacznij od szybkiego sprawdzenia kompletności:
- Znajdź „root” każdej części (
package.json,go.mod,pubspec.yaml). - Sprawdź, czy jest plik blokujący wersje (
package-lock.json,yarn.lock,pnpm-lock.yaml,go.sum). - Poszukaj migracji bazy danych (
migrations/lub podobne). - Sprawdź, czy jest workflow do uruchomienia (README, Makefile, skrypty lub
docker-compose.yml).
Jeśli coś niezbędnego jest opisane tylko w UI lub w czacie, przepisz to i umieść w repo.
Jaki jest najbezpieczniejszy sposób uruchomienia wyeksportowanego projektu lokalnie?
Dziel działanie na małe, weryfikowalne kroki:
- Zainicjalizuj Git i skomituj surowy eksport (baseline).
- Przygotuj lokalną konfigurację używając
.env.example→.env. - Uruchom bazę danych.
- Wykonaj migracje.
- Uruchom backend.
- Uruchom frontend.
Nie refaktoryzuj od razu — najpierw udowodnij, że działa tak jak jest, potem wprowadzaj poprawki w oddzielnych commitach.
Dlaczego aplikacja działała na platformie, a nie działa na moim laptopie?
Bo środowisko hostowane często miało rzeczy, których nie ujawniłeś:
- Brakujące zmienne środowiskowe (URL API, sekret JWT, klucze storage).
- Baza danych nie została utworzona, migracje nie zostały zastosowane lub brakuje seedów.
- Różnice w portach / ustawieniach CORS, które były skonfigurowane na hostingu.
- Ukryte kroki budowania wykonywane „gdzie indziej”.
Napraw to przez ujawnienie setupu: .env.example, skrypty migracji i README z dokładnymi komendami.
Jak potwierdzić, że część bazy danych faktycznie działa po eksporcie?
Serwer może się uruchomić, a aplikacja nadal być uszkodzona — zweryfikuj rzeczywisty przepływ danych:
- Otwórz stronę, która ewidentnie polega na odczytach z bazy.
- Utwórz rekord, odśwież i upewnij się, że się zachował.
- Wykonaj jedno uaktualnienie i jedno usunięcie, jeśli UI to wspiera.
- Obserwuj logi pod kątem błędów migracji typu „relation does not exist”.
Jeśli nie możesz odtworzyć zmian danych lokalnie, setup lub migracje są niekompletne.
Jak powinienem obsłużyć sekrety, żeby nie ujawnić kluczy w Git?
Domyślne podejście:
- Commituj
.env.examplez przykładowymi, fałszywymi wartościami. - Dodaj
.envdo.gitignore. - Przechowuj prawdziwe sekrety w menedżerze haseł lub dedykowanym sejfie sekretów.
Jeżeli znajdziesz prawdziwe klucze w repo, przyjmij, że zostały skompromitowane i natychmiast je rotuj. Priorytetowo traktuj hasła do bazy, sekrety OAuth i klucze webhooków.
Jaki jest minimalny zestaw CI, który powinienem dodać po przejęciu repo?
Utrzymaj pierwszy etap CI prosty i zgodny z lokalnymi komendami:
- Zbuduj i uruchom lint/typecheck frontendu.
- Uruchom
go test ./...i zbuduj backend. - Opcjonalnie zastosuj migracje w tymczasowej bazie.
Niech CI wywołuje te same skrypty, których używają deweloperzy lokalnie (np. make test, npm run build). To zmniejsza ryzyko: „działa lokalnie, nie działa w CI”.
Czy naprawdę potrzebuję README i skryptu bootstrap, jeśli aplikacja już działa?
Tak — jeśli oczekujesz przewidywalnego handoffu. Dobry zestaw to:
- Jeden top-level
README.mdz kopiowalnymi komendami. .env.exampleopisujący zmienne wymagane vs opcjonalne.- Jeden skrypt/bootstrap uruchamiający instalację zależności i przygotowujący DB.
Cel: nowy deweloper powinien uruchomić aplikację w 15–30 minut bez zgadywania.
Jak zorganizować wyeksportowane repo (web + API + baza), aby było łatwe w utrzymaniu?
Typowa struktura:
apps/dla frontendów (web, mobile).services/dla API i workerów.shared/dla współdzielonych typów i utili.infra/dla szablonów deploya i przykładów środowisk.
Nazwy nie są najważniejsze — ważne, żeby było oczywiste, co gdzie się uruchamia i jak elementy się łączą.
Jakie są dobre „kolejne kroki” po eksporcie z Koder.ai?
Praktyczna sekwencja:
- Wyeksportuj i skomituj baseline.
- Spraw, żeby działało lokalnie z jawnie określonym configiem, migracjami i README.
- Dodaj CI, by pilnowało buildów i testów.
- Dodaj prostą notatkę deployową (gdzie ustawić sekrety, jak uruchomić migracje, jak rollbackować).
Gdy wszystko stabilne, traktuj Git jako źródło prawdy, a przyszłe eksporty z platformy jako punkty kontrolne, nie główną historię.