Files
klapi/README.md
2026-03-12 21:22:12 +02:00

64 lines
1.4 KiB
Markdown

# klapi
Klapi on Tietokonepajan tarjoama monikäyttöinen API rajapinta sekä tietovarasto. Loppukäyttäjä voi muokata omistamaansa dataa selainkäyttöliittymän kautta ja kutsua sitä muista palveluistaan.
## Kehitys ja ajokomennot (`just`)
Projektissa on valmiit reseptit [justfile](justfile)-tiedostossa.
Esivaatimukset:
- `just`
- `dotnet`
- `bun`
- `sqlite3` (DB-resepteihin)
Listaa kaikki reseptit:
- `just --list`
Sovelluksen käynnistys:
- `just dev`
API (.NET):
- `just api-restore`
- `just api-build`
- `just api-clean`
- `just api-run`
- `just api-watch`
- `just api-test`
- `just api-publish`
UI:
- `just ui-install`
- `just ui-dev`
- `just ui-build`
- `just ui-test`
- `just ui-lint`
Tietokanta (SQLite):
- `just db-setup`
- `just db-reset`
- `just db-shell`
## Tuotantoon julkaisu
```bash
just deploy
```
Skripti ([scripts/deploy.sh](scripts/deploy.sh)) suorittaa:
1. `git pull` — hakee uusimmat muutokset
2. `dotnet publish` — kääntää API:n release-tilaan
3. `db-setup` — ajaa `init.sql`:n tietokantaan (luo puuttuvat taulut)
4. `systemctl restart klapi-api` — käynnistää API-palvelun uudelleen
5. `bun install && bun run build` — asentaa riippuvuudet ja kääntää UI:n
6. `pm2 restart klapi-ui` — käynnistää UI-prosessin uudelleen
> Inkrementaaliset skeemamuutokset (sarakkeiden lisäykset ym.) ajetaan automaattisesti API:n käynnistyksessä `Program.cs`-migraatioiden kautta.