5cdaa7d4a17ea98f6ad17c5a7a8d32862c69cb34
- data-source.ts (CLI) + scripts migration:generate/run/revert/show - migration InitialSchema : schéma complet (categories, api_entries), vérifiée en l'appliquant sur une base vierge (crée aussi l'ext uuid-ossp) - app.module: charge les migrations et migrationsRun en prod uniquement. Corrige un trou : la prod avait synchronize:false SANS migrations (schéma vide au déploiement). Dev inchangé (synchronize:true). Bascule de dev vers migrations-only (synchronize:false + baseline de la base dev existante) = étape ultérieure à faire en supervisé. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Datacat
Catalogue de données d'API. Importez des fichiers YAML (AsyncAPI ou OpenAPI) et générez automatiquement de la documentation HTML interactive.
Architecture
Monorepo pnpm avec quatre sous-projets :
datacat/
├── back/ # API REST — NestJS + TypeORM + PostgreSQL
├── front-public/ # Interface web — Angular 19 + DSFR
├── shared/ # Types TypeScript partagés (@datacat/shared)
└── infra/ # Docker Compose, Dockerfiles, Kubernetes
Prérequis
- Node.js 22 LTS
- pnpm 10
- Docker (recommandé)
Démarrage rapide
# Démarrer tous les services (PostgreSQL + backend + frontend)
docker compose -f infra/docker-compose.yml up -d
# Suivre les logs
docker compose -f infra/docker-compose.yml logs -f
URLs de développement
| Service | URL |
|---|---|
| Frontend | http://localhost:4200 |
| API | http://localhost:3010/api |
| Health check | http://localhost:3010/health |
Utilisation
- Ouvrir http://localhost:4200
- Naviguer par catégories via Parcourir ou voir toutes les APIs via Catalogue
- Cliquer sur Importer pour ajouter un fichier YAML AsyncAPI ou OpenAPI
- Une fois la génération terminée (statut GENERATED), cliquer sur Voir la documentation
Stack technique
| Couche | Technologie |
|---|---|
| Backend | NestJS 11, TypeORM 0.3, PostgreSQL 17 |
| Frontend | Angular 19, DSFR |
| Types partagés | TypeScript 5.8 strict |
| Génération docs AsyncAPI | @asyncapi/cli@6.0.0 |
| Génération docs OpenAPI | @redocly/cli |
Développement sans Docker
# Backend (port 3000)
cd back && pnpm install && pnpm run start:dev
# Frontend (port 4200, avec proxy vers l'API)
cd front-public && pnpm install && pnpm run start
Créer
front-public/proxy.conf.jsonsi absent :{ "/api": { "target": "http://localhost:3010", "secure": false } }
Rebuild complet
docker compose -f infra/docker-compose.yml down
docker volume rm datacat_front_node_modules datacat_back_node_modules
docker compose -f infra/docker-compose.yml build --no-cache
docker compose -f infra/docker-compose.yml up -d
Documentation
documentation/architecture.md— flux, schéma DB, servicesdocumentation/api-reference.md— référence complète des endpoints RESTdocumentation/local-setup.md— installation locale (sans Docker)documentation/CLAUDE.md— guide d'implémentation interne
Description
Languages
TypeScript
97%
Shell
2.6%
HTML
0.3%