CouncilDataProject / CouncilDataProject/cdp-backend

Dynamically Generate TypeScript DB Models, Transcript Model, and other Constants

Offen
#167 15 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
enhancement good first issue help wanted infrastructure
Vorherrschende Sprache
Python
Sterne
25
Forks
28
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

## Idea / Feature

Dynamically generate TypeScript object definitions from `cdp-backend` Python DB models.

## Use Case / User Story

As a developer I want to be able to add, remove, or update a database model in a single location rather than multiple.

## Solution

Add a script to `cdp-backend` that when ran will generate a TypeScript package of the database models + extras that we can push to npm on new version push.

## Alternatives

## Stakeholders

Backend maintainers
Frontend maintainers

## Major Components

* [ ] Database models TypeScript generation
* [ ] Transcript File Model TypeScript generation
* [ ] Database "ModelField" Python and TypeScript generation
* [ ] Database constants TypeScript generation
* [ ] script added as bin script to `cdp-backend`
* [ ] task added to CI building and testing that attempts to generate these models on PR push / main build
* [ ] task added to CI main building / publish job that pushes the generated TypeScript package dir to npm

## Dependencies

## Other Notes

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

No specific files or tests are named. Start by locating the Python database models, the cdp-backend bin-script entry points, and the CI build and publish jobs; done means generated TypeScript models and constants are tested on builds and the package is published as specified.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python, typescript
Bereich
backend, build-system, ci-cd, databases, release
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.