« Api-platform » pour écrire des API Rest et GraphQL

By Léo Penaguin 11 août 2019

La petite découverte du mois ! Le framework api-platform permet de développer des API de qualité rapidement sans pour autant sacrifier la personnalisation. La raison a cela est simple, api-platform été développé avec Symfony et permet donc d’utiliser les très nombreuses librairies qui ont été développer pour ce dernier. Par exemple, si vous êtes habitué à utiliser une certaine libraire pour gérer l’authentification, les utilisateurs ou encore les rôles, vous pourraient la réutiliser ici sans aucun problème !

L’installation en local est extrêmement simple puisqu’une « configuration Docker » est téléchargeable sur le site ! En suivant ces quelques étapes (il faut avoir docker installée) vous pouvez installer d’un seul coup des conteneurs pour PHP, PostgreSQL, des serveurs de développement, un serveur HTTP (Nginx) et d’autres services qui nous intéressent moins.

Pourquoi pas simplement utiliser Symfony ?

Les fonctionnalités ajoutées par api-platform rendent le développement bien plus rapide. D’abord, il suffit d’écrire des entités (la définition des données !) pour que le framework génère automatiquement des routes pour notre API (GET, POST, PUT, DELETE, etc.). Il est aussi possible de générer du code pour utiliser l’API depuis des frameworks cotés font-end (comme Vue❤️ ou React). L’avantage d’api-platform est donc de rendre des taches automatiques.

Des outils pour administrer et développer

Quand vous avez terminé d’installer le tout, vous avez accès quelques outils très pratique :

1 – Une petite page d’accueil pour aller vers ces outils :

The welcome page
https://api-platform.com/docs/distribution/#its-ready

2 – Une description visuelle de votre API au format OpenAPI qui s’appelait avant Swagger (Je savais pas que Swagger avait changé de nom, on en apprend tous les jours 😁). Pour ceux qui ne connaissent pas, c’est très pratique lorsque le moment est venu d’utiliser l’API, en plus OpenAPI permet de tester les requêtes directement dans l’interface !

The API
https://api-platform.com/docs/distribution/#its-ready

3 – Et, cerise sur le gâteau, une interface d’administration est installée et permet de jouer avec vos données très simplement !

The admin
https://api-platform.com/docs/distribution/#the-admin

Et voilà ! Petite dernière précision, le framework a été dévellopé par le Français 🇫🇷 Kévin Dunglas (https/dunglas.fr/) et ça, c’est cool.

Bon développement !

Commentaires 💬