Projects STRLCPY graphql-engine Files
🤬
207 lines | UTF-8 | 10 KB

Hasura GraphQL Engine

Docs CircleCI

Hasura GraphQL Engine est un serveur GraphQL ultra-rapide qui vous permet de créer instantanément, des APIs GraphQL basées sur Postgres, avec des déclencheurs de webhoook pour la logique métier.

Hasura vous aide à construire des applications GraphQL basées sur Posgres ou à adopter graduellement GraphQL pour des applications existantes utilisant Postgres.

Plus d'informations sur hasura.io et dans la documentation.


Démo Hasura GraphQL Engine


Démo Hasura GraphQL Engine Realtime


Fonctionnalités

  • Réalisez des requêtes avancées: filtrage intégré, pagination, recherche par patterns, mutations d'insertions en masse, mises-à-jour et suppression.
  • Temps réel: Convertissez n'importe quelle requête GraphQL en requête temps-réel en uttilisant les subscriptions.
  • Fusionnez des schémas distants: Accédez à vos propres schémas GraphQL pour votre logique métier, via un point d'accès GraphQL unique. Plus d'informations.
  • Déclenchez des webhooks ou des fonctions serverless: En réactions aux évènements Postgres insert/update/delete (Plus d'informations).
  • Fonctionne avec les bases de données existantes: Pointez GraphQL Engine vers une base de données Postgres existante afin d'obtenir instantanément une API GraphQL prête à l'emploi.
  • Contrôle d'accès détaillé: Contrôle d'accès dynamique qui s'intègre avec votre système d'authentification (ex: auth0, firebase-auth).
  • Haute performance & faible impact: Image Docker de ~15MB; ~50MB RAM @ 1000 req/s; prise en compte du multi-core.
  • Interface d'administration & Migrations: Interface d'administration & migrations de schéma à la Rails.
  • Postgres ❤️: Supporte les types Postgres (PostGIS/geo-location, etc.), transforme les vues en graphs, déclenche des procédures ou fonctions stockées via les mutations.

Plus d'informations sur hasura.io et dans la documentation.

Table des matières

Table des matières

Démarrage rapide:

Déploiement sur Heroku en un click

La manière la plus rapide d'essayer Hasura est via Heroku.

  1. Cliquez sur le bouton ci-dessous pour déployer GraphQL Engine sur Heroku avec l'add-on Postgres gratuit:

    Déployer sur Heroku

  2. Ouvrez la console Hasura

    Visitez https://<app-name>.herokuapp.com (remplacez <app-name> par le nom de votre application) pour ouvrir la console d'administration.

  3. Réalisez votre première requête GraphQL

    Créez une table et réalisez votre première requête. Suivez ce guide.

Autres méthodes de déploiement

Pour les méthodes de déploiement basées sur Docker et les options de configuration avancées, consultez les guides de déploiement ou les manifestes d'installation.

Architecture

Hasura GraphQL Engine se place en frontal d'une base de données Postgres et peut accepter les requêtes GraphQL de vos applications clientes. Il peut être configuré pour fonctionner avec votre système d'authentification existant et peut gérer le contrôle d'accès au niveau des champs grâce a des règles, avec des variables dynamiques provenant du système d'authentification.

Vous pouvez également fusionner des schémas GraphQL distants et fournir une API GraphQL unifiée.

Architecture de Hasura GraphQL Engine

Outils côté client

Hasura fonctionne avec n'importe quel client GraphQL. Nous recommandons l'utilisation d'Apollo Client. Consultez awesome-graphql pour une liste de clients.

Ajout de logique métier

GraphQL Engine fournit plusieurs méthodes claires, évolutives et performantes pour ajouter votre propre logique métier à votre backend:

Schémas distants

Ajoutez vos propres resolvers dans un schéma distant en plus du schéma dérivé de Postgres d'Hasura. Idéal pour des cas d'utilisation tels que l'implémentation d'une API de paiement, ou le requêtage de donnée ne se trouvant pas dans votre base de données - plus d'informations.

Déclenchez des webhooks sur des évènements de base de données

Ajoutez de la logique métier asynchrone, déclenchée par des évènements de base de données. Idéal pour les notifications, les pipelines de données de Postgres ou les traitements asynchrones - plus d'informations.

Données dérivée ou transformations de données

Transformez les données dans Postgres ou exécutez de la logique métier dessus pour en deriver un autre jeu de données qui peut être requêté à l'aide de GraphQL Engine - plus d'informations.

Démos

Consultez toutes les applications d'example dans le répertoire hasura/sample-apps.

Applications temps-réel

Vidéos

Support & Dépannage

La documentation et la communauté vous aideront à résoudre la plupart des problèmes. Si vous avez rencontré un bug ou avez besoin de nous contacter, vous pouvez nous joindre au travers des canaux suivants:

Nous nous impliquons dans le développement d'un environnement ouvert et accueillant dans la communauté. Veuillez consulter le Code de Conduite.

Si vous souhaitez rapporter un problème de sécurité, veuillez lire ceci.

Contribuer

Consultez notre guide de contribution pour plus de détails.

Elements de marque

Les élements de marque Hasura (logos, mascotte Hasura, badges "powered by" etc...) peuvent être trouvés dans le répertoire assets/brand. N'hésitez pas à les utiliser dans votre application/site Web etc... Nous serions ravis si vous ajoutiez le badge "Powered by Hasura" à votre application développée à l'aide d'Hasura. ❤️

!!missing!! !!missing!!
<!-- Pour les fonds clairs -->
<a href="https://hasura.io">
  <img width="150px" src="https://graphql-engine-cdn.hasura.io/img/powered_by_hasura_black.svg" />
</a>

<!-- Pour les fonds foncés -->
<a href="https://hasura.io">
  <img width="150px" src="https://graphql-engine-cdn.hasura.io/img/powered_by_hasura_white.svg" />
</a>

Licence

Le GraphQL Engine est disponible sous Apache License 2.0 (Apache-2.0).

Tous les autres contenus (à l'exception de ceux dans les répertoires server, cli et console) sont disponibles sous Licence MIT. Cela inclut tout le contenu des répertoires docs et community.

Traductions

Ceci readme est disponible dans les traductions suivantes:

Les traductions d'autres fichiers sont disponibles ici!!missing!!.

Please wait...
Page is in error, reload to recover