1.2 KiB
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)
- Restore/build:
dotnet restore
- 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
/exercisesor/{userId}/exercises/routinesor/{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).