Commit Graph

242 Commits

Author SHA1 Message Date
ebc61acd18 GEN-1: add lethality rules + warning codes (SpSp lethal+renormalize, ReRe semi)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:40:06 +02:00
76d8380ea1 GEN-1: add Punnett engine (per-locus + full genotype distribution, wildcard support)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:39:31 +02:00
3fc430f1a0 GEN-1: add Genotype type + canonical serialization (JSON + display string)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:38:49 +02:00
9d5608f46e GEN-1: add locus/allele model (A C D E G P Sp Re, multi-allele C/E)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:38:18 +02:00
2b9a0cd648 GEN-1: add vitest + exact Fraction utility
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:37:53 +02:00
9b9cf2b35a ARCH-2: apply EF migrations on startup in Development
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:37:42 +02:00
cc589b13d0 ARCH-2: fresh Npgsql initial migration
uuid keys, text columns, Gender persisted as text via EnumToStringConverter,
Litter.Date as timestamptz. Replaces deleted SqlServer initialCreate (no prod data).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:37:21 +02:00
84de905469 ARCH-2: wire PostgreSQL through Aspire
- AppHost: AddPostgres(postgres).WithDataVolume() + AddDatabase(gerbilmanager),
  WebAPI project resource WithReference/WaitFor on the db (Aspire-generated credentials)
- WebAPI: AddNpgsqlDbContext<ApplicationContext>(gerbilmanager) replaces manual
  AddDbContext/UseNpgsql + appsettings connection string

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:36:06 +02:00
4d541fe9cd ARCH-2: add Aspire AppHost + ServiceDefaults (Aspire 13.4.2)
- New projects GerbilManager.AppHost / GerbilManager.ServiceDefaults (templates)
- Added both to GerbilManager.slnx
- WebAPI references ServiceDefaults; AddServiceDefaults + MapDefaultEndpoints wired

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:35:15 +02:00
8820cc7751 ARCH-2: swap EF provider to Npgsql, drop SqlServer migrations + conn strings
- Microsoft.EntityFrameworkCore.SqlServer -> Npgsql.EntityFrameworkCore.PostgreSQL 10.0.2
- UseSqlServer -> UseNpgsql (Aspire-injected gerbilmanager connection)
- Removed hardcoded sa connection strings from appsettings*.json
- Deleted SqlServer-flavored initial migration (fresh Npgsql one follows; no prod data)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:34:00 +02:00
b041d84b18 ARCH-2: bump TFM to net10.0, EF Core/OpenApi to 10.0.8, Swashbuckle to 10.2.1
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:32:47 +02:00
6ee85bc909 Replace Next.js app with Vite React app (gerbil-manager-web)
- Remove gerbil-manager-nextjs (unused scaffold; recoverable from history)
- Scaffold gerbil-manager-web: Vite + React 19 + TypeScript
- German-only UI (lang=de, central strings in src/strings/de.ts)
- Mobile-first shell: bottom tab bar on phones, sidebar on >=768px
- react-router with skeleton routes (Start, Rennmaeuse, Wuerfe, Zuechter)
- API client (src/api/client.ts) pointing at GerbilManagerWebAPI,
  configurable via VITE_API_BASE_URL (default http://localhost:5179)
- nginx-based Dockerfile with SPA fallback; docker-compose frontend
  service now builds gerbil-manager-web

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:30:34 +02:00
42a43ae24e Migrate GerbilManager.sln to slnx format
- Generated GerbilManager.slnx via dotnet sln migrate (SDK 10.0.300)
- Removed legacy GerbilManager.sln after verified build
- Updated .vscode/tasks.json references to the new file

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:24:42 +02:00
a7157a5a2e baseline before slnx migration
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 23:23:46 +02:00
74dee4a6e2 seperate frontend network from backend 2023-10-30 23:15:14 +01:00
47e2117325 Add frontend to backend dependency 2023-10-30 23:14:01 +01:00
6e5f0fb312 Docker nextjs 2023-10-30 23:13:17 +01:00
7d54a53005 Add netxjs app 2023-10-30 22:14:49 +01:00
c337c3dfd5 Resolve all warnings 2023-10-30 22:08:02 +01:00
08983ba30d Adjust 2023-10-30 21:58:56 +01:00
5792d2fcf4 Add database commits 2023-10-30 21:22:06 +01:00
6556e17146 Add first sanity check 2023-10-30 21:20:19 +01:00
d3d2b4b989 Implement generic repo pattern and unitofwork 2023-10-30 20:56:37 +01:00
Julian
9b8c5412f8 Add postman collection 2023-10-30 17:19:53 +01:00
Julian
dee8de7a15 Fix nullable 2023-10-30 17:18:23 +01:00
Julian
d58f874162 Add docker support 2023-10-30 16:39:14 +01:00
136ce48385 Fix reference empty guid 2023-10-23 21:42:56 +02:00
3f538fc34e Add readme 2023-10-23 21:36:30 +02:00
64a065058a mark required fields 2023-10-23 21:34:00 +02:00
1aa4f0b5f6 First table in database 2023-10-23 21:29:19 +02:00
Julian
00fd8ded6e Pass in sql connection configuration 2023-10-21 14:59:53 +02:00
Julian
c00f650c42 Rename project to webAPI 2023-10-21 14:23:54 +02:00
Julian
ae085b1466 Add docker compose 2023-10-21 14:21:22 +02:00
Julian
a986e3546a Move webapi to sub folder 2023-10-21 14:02:51 +02:00
489f0ee35a Introduce EF 2023-10-17 01:18:17 +02:00
8a2995302a Add all controllers 2023-10-17 00:50:43 +02:00
7ee50442c5 lmplement all actions 2023-10-17 00:33:44 +02:00
fc98f99eda Introduce dtos 2023-10-16 22:37:49 +02:00
707bfae2e3 Add dependency Injection 2023-10-16 22:02:02 +02:00
3e3ef39b80 Add ERM diagram 2023-10-16 20:51:16 +02:00
2d5dfd6154 Init commit 2023-10-16 20:48:58 +02:00
5ebc16046c Add gitignore 2023-10-16 20:48:50 +02:00