api — betagouv community, betagouv, ide skills, carpooling, covoiturage

v1.0.0

À propos de ce Skill

Parfait pour les agents IA nécessitant des capacités de développement d'API avancées avec des frameworks IoC personnalisés et une injection de dépendances utilisant Inversify. Use when working on the Deno/TypeScript backend API — creating actions, repositories, service providers, or modifying routing. Covers ILOS framework patterns, decorators, SQL queries, and Docker stack.

# Core Topics

covoiturage-gouv-fr covoiturage-gouv-fr
[35]
[12]
Updated: 3/20/2026

Killer-Skills Review

Decision support comes first. Repository text comes second.

Reference-Only Page Review Score: 9/11

This page remains useful for operators, but Killer-Skills treats it as reference material instead of a primary organic landing page.

Original recommendation layer Concrete use-case guidance Explicit limitations and caution Quality floor passed for review
Review Score
9/11
Quality Score
59
Canonical Locale
en
Detected Body Locale
en

Parfait pour les agents IA nécessitant des capacités de développement d'API avancées avec des frameworks IoC personnalisés et une injection de dépendances utilisant Inversify. Use when working on the Deno/TypeScript backend API — creating actions, repositories, service providers, or modifying routing. Covers ILOS framework patterns, decorators, SQL queries, and Docker stack.

Pourquoi utiliser cette compétence

Permet aux agents de construire des applications robustes en utilisant un framework IoC personnalisé avec Inversify pour l'injection de dépendances, idéal pour les projets de carpooling et betagouv, et fournit des décorateurs clés tels que @handler(), @serviceProvider() et @provider() pour un développement d'API efficace.

Meilleur pour

Parfait pour les agents IA nécessitant des capacités de développement d'API avancées avec des frameworks IoC personnalisés et une injection de dépendances utilisant Inversify.

Cas d'utilisation exploitables for api

Construire des applications de carpooling robustes avec des frameworks IoC personnalisés
Développer des projets de betagouv avec une injection de dépendances efficace en utilisant Inversify
Définir des gestionnaires d'actions avec service, méthode, middleware et routes d'API en utilisant le décorateur @handler()

! Sécurité et Limitations

  • Nécessite une configuration et une installation conformes à api/README.md
  • Spécifique au framework IoC personnalisé avec Inversify pour l'injection de dépendances

Why this page is reference-only

  • - Current locale does not satisfy the locale-governance contract.

Source Boundary

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

After The Review

Decide The Next Action Before You Keep Reading Repository Material

Killer-Skills should not stop at opening repository instructions. It should help you decide whether to install this skill, when to cross-check against trusted collections, and when to move into workflow rollout.

Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is api?

Parfait pour les agents IA nécessitant des capacités de développement d'API avancées avec des frameworks IoC personnalisés et une injection de dépendances utilisant Inversify. Use when working on the Deno/TypeScript backend API — creating actions, repositories, service providers, or modifying routing. Covers ILOS framework patterns, decorators, SQL queries, and Docker stack.

How do I install api?

Run the command: npx killer-skills add covoiturage-gouv-fr/mono. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for api?

Key use cases include: Construire des applications de carpooling robustes avec des frameworks IoC personnalisés, Développer des projets de betagouv avec une injection de dépendances efficace en utilisant Inversify, Définir des gestionnaires d'actions avec service, méthode, middleware et routes d'API en utilisant le décorateur @handler().

Which IDEs are compatible with api?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for api?

Nécessite une configuration et une installation conformes à api/README.md. Spécifique au framework IoC personnalisé avec Inversify pour l'injection de dépendances.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add covoiturage-gouv-fr/mono. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use api immediately in the current project.

! Reference-Only Mode

This page remains useful for installation and reference, but Killer-Skills no longer treats it as a primary indexable landing page. Read the review above before relying on the upstream repository instructions.

Upstream Repository Material

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

Upstream Source

api

Install api, an AI agent skill for AI agent workflows and automation. Review the use cases, limitations, and setup path before rollout.

SKILL.md
Readonly
Upstream Repository Material
The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.
Supporting Evidence

API Developer Skill

Read api/README.md first for setup, commands, and configuration.

ILOS Framework (IoC)

The API uses a custom IoC framework (ILOS) with Inversify for dependency injection.

Key Decorators

DecoratorPurpose
@handler()Defines action handlers with service, method, middlewares, API routes
@serviceProvider()Decorates service providers with handlers, commands, validators
@provider()Marks injectable service classes
@middleware()Marks middleware classes
@command()CLI commands with signature and options

Key Components

  • Kernel (api/src/pdc/proxy/Kernel.ts): Registers all service providers, connections, and commands
  • Service Providers: Each domain module is a service provider that registers actions and repositories
  • Actions: Extend Action class, implement handle(params, context) method
  • Repositories: Database access layer using PostgreSQL

Service Provider Structure

Each service follows this pattern:

services/<name>/
├── <Name>ServiceProvider.ts   # Registers all components
├── actions/                   # Action handlers
├── repositories/              # Database access
├── contracts/                 # TypeScript interfaces
├── commands/                  # CLI commands (optional)
└── config/                    # Service configuration

Action Pattern

typescript
1@handler({ 2 service: "acquisition", 3 method: "create", 4 middlewares: [ 5 ["validate", CreateJourneyParamsValidator], 6 "scopeToSelf", 7 ], 8 apiRoute: { 9 path: "/v3/journeys", 10 method: "POST", 11 rateLimiter: { max: 2000 }, 12 }, 13}) 14export class CreateJourneyAction extends Action { 15 async handle(params: ParamsType, context: ContextType): Promise<ResultType> { 16 // Implementation 17 } 18}

Repository Pattern

Always use the sql template literal for parameterized queries:

typescript
1import { sql } from "@/lib/pg/sql.ts"; 2 3const result = await this.connection.getClient().query(sql` 4 SELECT * FROM carpools WHERE id = ${id} 5`);

No ORM is used. DenoPostgresConnection.ts is the current provider (replaces LegacyPostgresConnection.ts).

API Routing

  • External REST: GET/POST/PUT/DELETE /v3/{service}/{action}
  • Internal RPC: POST /rpc with { "method": "service:action", "params": {...} }

Routes defined in api/src/pdc/proxy/HttpTransport.ts. External routes should be defined in the Action decorator. Internal RPC calls are being migrated to shared providers in api/src/pdc/providers.

Service Modules

Located in api/src/pdc/services/:

ServicePurpose
acquisitionTrip data capture from operators
authAuthentication (JWT, ProConnect, Dex)
dashboardCRUD for users, operators, territories for app-partners
exportData export functionality
policyCarpooling campaigns
operatorOperator management
territoryTerritory/jurisdiction management
apdfAPDF reporting
ceeMobility tax incentive (CEE)
honorPDF certificate generation
observatoryPublic statistics APIs
geoGeolocation services
companyCompany lookup (INSEE API)

Shared Types

Domain interfaces in shared/ directory — import with @pdc/shared/{domain}. Being deprecated as the older frontend was removed in favor of app-partners.

Docker Compose Overlays

  • docker-compose.base.yml - Service definitions (no exposed ports)
  • docker-compose.dev.yml - Exposes ports for localhost development (default just dc)
  • docker-compose.proxy.yml - Adds Traefik for *.covoiturage.test domains
  • docker-compose.e2e.yml - E2E test configuration (just dc_e2e)

Run just add-hosts to add domain aliases to /etc/hosts.

Deno Configuration

api/deno.jsonc:

  • Import aliases: @/ maps to ./src/ (use Deno's Organise Imports LSP feature)
  • Legacy decorators enabled for Inversify
  • Line width: 120 for formatting

Development Notes

  • NixOS users: Add DOCKER_SOCK=/run/user/1000/docker.sock to api/.env
  • Use just seed-local-users for test accounts (requires APP_ENV=local)
  • Keep test databases with APP_POSTGRES_KEEP_TEST_DATABASES=true, then clean with just drop_test_databases
  • Pre-commit: Talisman for secret detection configured in .talismanrc. Run pre-commit install when hook not found.

Compétences associées

Looking for an alternative to api or another community skill for your workflow? Explore these related open-source skills.

Voir tout

openclaw-release-maintainer

Logo of openclaw
openclaw

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

widget-generator

Logo of f
f

Générez des plugins de widgets personnalisables pour le système de flux prompts.chat

flags

Logo of vercel
vercel

Le Cadre de Réaction

138.4k
0
Navigateur

pr-review

Logo of pytorch
pytorch

Tenseurs et réseaux neuronaux dynamiques en Python avec une forte accélération GPU

98.6k
0
Développeur