Learncost frontend (#42)

* introduced central package  registry by package init function
* dynamic registration of routes, model, migrations and initializers.
* setting a docker compose project name to prevent shutdown of other containers with the same (composer)name
* ai documentation
* app template
* Create tests for ALL API entpoints in ALL packages Based on current data. Ensure that all API endpoints used in frontend are tested. These tests are crucial for the next refactoring tasks.
* adopting agent instructions for a more consistent coding style
* added desired module layout and debugging information
* Fix All Failing tests All failing tests are fixed now that makes the refactoring more easy since all tests must pass
* restored routes for maintenance
* added common translations
* added new tests for API Endpoint
* Merge branch 'separate_business_logic'
* added lern and skill improvement cost editing
* Set Docker image tag when building to prevent rebuild when nothing has changed
* add and remove PP for Weaponskill fixed
* add and remove PP for same named skills fixed
* add new task
This commit is contained in:
Bardioc26
2026-05-01 18:15:31 +02:00
committed by GitHub
parent 261a6294cb
commit 042a1d4773
293 changed files with 17411 additions and 1540 deletions
+32
View File
@@ -1,3 +1,35 @@
Setup monitoring
# ---------------
Ich möchte eine oder zwei Seiten zur Einstellung und Verwaltung von Lernkosten für Charakterklassen und Fertigkeitskategorien als auch von lernkosten pro Schwierigkeit und TE pro Schwierigkeit und Stufe erstellen. Beispiele für Originallisten findest Du in Lern_und_Trainingslisten.md
Die nötigen Datenstrukturen im Backend sind vorhanden. Erstelle wenn nötig passende API Endpunkte inclusive der dazu gehörigen Tests.
Erstelle vor allem die views und Componenten für das Frontend.
Plane gründlich prüfe das Ergebnis sogfältig.
Du darfst Subagents starten wenn das notwendig oder sinnvoll ist
# --------------
move the model in this file to the appropiate package.
register everything via the init function
Take care that no circle references are created during this process.
The last commit contains all changes that had to be done to fulfill the corresponding task for package character.
Make a plan, update and create tests, keep it small and simple
(You may spawn subagents to analyze, plan, implement and check.)
# --------------
`RegisterRoutes` migth be unexported in `routes.go`. The `init()` in `register.go` calls it and also invokes `models.MigrateStructure(db)` for the module's own entities. Handler functions are unexported (lowercase) unless explicitly consumed by another module.
# ------
Update RegisterRoutes to remove RegisterPublicRoutes
func RegisterRoutes(r *gin.RouterGroup) {
group := r.Group("/maintenance")
group.GET("/skills", listSkills) // all authenticated users
protected := group.Group("")
protected.Use(user.RequireMaintainer())
protected.POST("/skills", createSkill) // maintainer + admin only
}
# --------------
I want to remove the string "midgard" as a selection criterium for GameSystem (game_system) from the code.
It would be best if I could have a table for Game Systems and select the right records by this ID.
That means that we can show a list of available games systems in the frontend when we select or edit a char, skill, spell, weapon or other equipment. that must be handled to when exporting and importing data.