Files
BIU_System_Rezerwacji/Justfile
Krzysztof Cieślik 2593e81498 Inicjalna wersja systemu zarządzania rezerwacjami (RMS)
SPA zbudowane w React 19 + Vite 8 z pełnym zestawem funkcjonalności:
autentykacja z 2FA, kreator rezerwacji, panel admina, analityka,
GraphQL (Apollo Client + SchemaLink), React Query, Storybook,
testy jednostkowe (Vitest + RTL) i e2e (Playwright).
2026-06-21 06:23:36 +02:00

101 lines
3.2 KiB
Makefile

# Reservation Management System — Justfile
# Wymaga: just, node 20+, npm, docker, docker compose
# Instalacja just: https://github.com/casey/just#installation
# ── Zmienne ─────────────────────────────────────────────────────────────────
API_PORT := "3001"
DEV_PORT := "5173"
# ── Domyślna komenda (lista wszystkich) ──────────────────────────────────────
default:
@just --list
# ── Tryb deweloperski ─────────────────────────────────────────────────────────
# Zainstaluj zależności npm
install:
npm ci
# Uruchom json-server (mock API) w tle na porcie 3001
api:
npx json-server --watch db.json --host 0.0.0.0 --port {{API_PORT}}
# Uruchom serwer deweloperski Vite
dev:
npm run dev
# Uruchom API i Vite równolegle (wymaga GNU parallel lub mprocs)
start: install
#!/usr/bin/env bash
trap 'kill 0' EXIT
npx json-server --watch db.json --host 0.0.0.0 --port {{API_PORT}} &
npm run dev
# ── Testy ────────────────────────────────────────────────────────────────────
# Uruchom testy jednostkowe (Vitest)
test:
npm run test
# Uruchom testy e2e Playwright (wymaga działającego API i dev serwera)
e2e:
node test_rms.mjs
# Uruchom Storybook
storybook:
npm run storybook
# ── Budowanie ────────────────────────────────────────────────────────────────
# Zbuduj aplikację produkcyjną (VITE_API_URL=/api dla Dockera)
build:
VITE_API_URL=/api npm run build
# Zbuduj i sprawdź lokalnie przez preview Vite (wymaga osobnego API)
preview: build
npm run preview
# ── Docker ───────────────────────────────────────────────────────────────────
# Zbuduj obrazy Docker (frontend + api)
docker-build:
docker compose build
# Uruchom aplikację w Dockerze (http://localhost)
docker-up:
docker compose up -d
@echo ""
@echo "Aplikacja dostępna na: http://localhost"
@echo "API (json-server): http://localhost:{{API_PORT}}"
@echo ""
@echo "Zatrzymaj: just docker-down"
# Uruchom w trybie interaktywnym z logami
docker-up-logs:
docker compose up
# Zatrzymaj kontenery
docker-down:
docker compose down
# Zatrzymaj i usuń wolumeny (resetuje db.json do stanu z obrazu)
docker-clean:
docker compose down -v
# Przebuduj i uruchom od zera
docker-rebuild:
docker compose down
docker compose build --no-cache
docker compose up -d
@echo "Aplikacja dostępna na: http://localhost"
# Pokaż logi kontenerów
docker-logs:
docker compose logs -f
# Status kontenerów
docker-ps:
docker compose ps