Files
astrain/README.md
2026-01-29 10:32:50 +01:00

1.2 KiB

ASTRAIN

ASTRAIN is a dark-mode, mobile-first workout logbook. It runs a Blazor WebAssembly frontend and an ASP.NET Core minimal API backend (both on .NET 10) in a single container. The API is served under /api, while the UI is served at /.

Features

  • Exercises and routines management
  • Routine runs with last-run weights
  • User identification via 8-character key in the URL
  • SQLite storage via Entity Framework Core

Local development

Run API (serves UI when published)

  1. Restore/build:
    • dotnet restore
  2. Run the API:
    • dotnet run --project src/ASTRAIN.Api/ASTRAIN.Api.csproj

Run Client (for UI-only development)

  • dotnet run --project src/ASTRAIN.Client/ASTRAIN.Client.csproj

Docker

Build and run the single-container setup:

  • docker compose -f docker/docker-compose.yml up --build

The app will be available at http://localhost:8080

URLs

  • /exercises or /{userId}/exercises
  • /routines or /{userId}/routines

Opening a URL without a user id will generate a new user and redirect to /{userId}/routines.

Data

SQLite database file is stored in src/ASTRAIN.Api/Data/astrain.db (or /app/Data/astrain.db in Docker).