Add pull request and issue templates and extend .editorconfig with json/yml rules. Templates are force-added because the user's global gitignore excludes .github directories.
TarninaHub
Wersja: 0.0.1
Platforma Małopolskiego Hubu Innowacji Społecznych (MVP hackathonu).
- backend/ — aplikacja backendowa w C# (ASP.NET Core,
TarninaHub). - client/ — aplikacja frontendowa Vue 3 + TypeScript (Vite).
- scripts/ — skrypty budujące całość.
TarninaHub.slnx— solution .NET.Dockerfile+docker-compose.yaml— uruchomienie kontenerowe.
Wymagania
-
.NET SDK 10+
-
Node.js 22+ (npm)
-
PowerShell Core 7+ (
pwsh) — wymagany do uruchomieniascripts/*.ps1.Windows nie kojarzy domyślnie plików
.ps1, dlatego skrypty uruchamiaj przezpwsh(np.pwsh ./scripts/docker-push.ps1), a nie przez dwuklik / samo./scripts/docker-push.ps1. Instalacja: https://aka.ms/powershell
Praca lokalna
Backend (dev) nasłuchuje na https://localhost:7080.
# terminal 1 — backend
dotnet run --project backend
# terminal 2 — client (Vite, proxy /api -> http://localhost:5078)
npm --prefix client install
npm --prefix client run dev
Skrypty
npm --prefix client run dev # uruchamia Vite (dev server)
npm --prefix client run build # buduje aplikację Vite do client/dist
npm --prefix client run copy # kopiuje client/dist -> backend/wwwroot
node scripts/build.mjs # buduje całość (client + copy + backend)
Docker
Szablon pobiera gotowy obraz z rejestru Gitea (pełna ścieżka), bez lokalnego buildowania:
cp docker-compose.yaml.example docker-compose.yaml
docker compose pull
docker compose up -d
- Aplikacja: http://localhost:8075
- Dane:
./data(bind mount, trwałe — SurrealDB embedded RocksDB) - Obraz:
git.rtynski.pl/rtynski/hy2026:latest
Port hosta można wskazać zmienną TARNINAHUB_PORT (domyślnie 8075), a wersję
obrazu zmienną APP_VERSION (domyślnie latest). Plik
docker-compose.yaml.example jest szablonem; docker-compose.yaml możesz
dostosować lokalnie.
Publikacja obrazu do Gitea
Token dostępu utworzysz w Gitea:
- https://git.rtynski.pl/user/settings/applications
- Generate New Token → zakres
write:package(wystarcza do pushu obrazu).
Wymagany PowerShell Core 7+ (pwsh). Windows nie uruchamia domyślnie
plików .ps1, więc skrypt wywołaj jawnie przez pwsh:
$env:GITEA_USER = "rtynski"; $env:GITEA_TOKEN = "<token>"
pwsh ./scripts/docker-push.ps1
Skrypt najpierw sprawdza połączenie z demonem Docker i rejestrem, czyta wersję z
backend/TarninaHub.csproj. Jeśli dana wersja jest już wypchnięta do rejestru,
kończy pracę z czerwonym komunikatem; w przeciwnym razie buduje frontend,
kopiuje go do backend/wwwroot, buduje backend, buduje obraz Docker i wypycha go
do git.rtynski.pl/rtynski/hy2026 jako <wersja> oraz latest. Nadpisanie
sprawdzenia: -Force.
Struktura
TarninaHub/
├─ backend/ # ASP.NET Core Web API + wwwroot (build z client)
├─ client/ # Vue 3 + TS + Vite
├─ scripts/
│ ├─ build.mjs # build całości
│ └─ copy-client.mjs # client/dist -> backend/wwwroot
├─ Dockerfile # multi-stage: client + backend
├─ docker-compose.yaml # uruchomienie (bind ./data)
├─ docker-compose.yaml.example
├─ TarninaHub.slnx
└─ README.md