echo
Healthcheck et version de l'API.
GraphQL · Open Source · Fédération
L'API GraphQL de Pilotariak — cinq domaines de données, un seul point d'entrée. Conçue pour les développeurs qui veulent accéder aux données de la pelote basque.
Vue d'ensemble
Frontis fédère cinq services indépendants en un seul point d'entrée GraphQL. Chaque domaine dispose de son propre schéma et de son propre cycle de déploiement.
Healthcheck et version de l'API.
Catégories de compétition — propriétaire de l'entité Category.
Clubs de pelote basque — propriétaire de l'entité Club.
Championnats et tournois — propriétaire de l'entité Competition.
Résultats de matchs — propriétaire de l'entité Result.
Spécialités de pelote — propriétaire de l'entité Specialty.
Comment ça marche
Chaque service gère son propre domaine. La passerelle compose automatiquement les schémas et résout les requêtes cross-domaine.
Chaque service expose son propre schéma GraphQL et déclare les entités qu'il possède. La passerelle compose un supergraphe cohérent sans configuration manuelle.
Les clients envoient leurs requêtes à un seul endpoint /graphql. La passerelle résout les champs à travers les services de manière transparente.
Une seule instance de l'API dessert toutes les ligues. Un header de requête sélectionne le jeu de données actif — aucun déploiement par ligue.
Des limites sur la profondeur, la complexité et la taille des requêtes protègent l'API contre les opérations coûteuses — configurables par environnement.
Fédération GraphQL
@key Chaque service déclare les types qu'il possède. La passerelle résout automatiquement les champs qui traversent plusieurs services.
Entités fédérées
| Entité | Service | Clé |
|---|---|---|
Category | categories | id |
Club | clubs | id |
Competition | competitions | id |
Result | results | id |
Specialty | specialties | id |
Résolution cross-service
# Requête client :
{ results { clubA { name } } }
# La passerelle :
# 1. Récupère les Result avec clubA { id }
# → service results
# 2. Envoie _entities([{ __typename:"Club", id }])
# → service clubs
# 3. Fusionne { name } dans la réponse Open Source · Apache 2.0
Frontis est open source et accueille toutes les contributions — nouveaux sous-graphes, corrections de bugs ou amélioration de la documentation.
Clonez le dépôt, installez les dépendances et lancez le gateway Apollo localement.
Un bug ou une idée ? Les issues GitHub sont le bon endroit pour en discuter et suivre l'avancement.
Toutes les pull requests sont examinées. Consultez le guide de contribution dans le dépôt pour les conventions.