À propos du projet

Insomnia est un client API de bureau open-source et multiplateforme couvrant GraphQL, REST, WebSockets, Server-Sent Events (SSE), gRPC et d'autres protocoles compatibles HTTP. Il est distribué pour Mac, Windows et Linux, sous licence Apache-2.0, et développé en open-source par Kong sur GitHub. Ce que le README indique que vous pouvez faire avec : - Déboguer des API en utilisant des protocoles et formats populaires. - Concevoir des API avec un éditeur OpenAPI natif et un aperçu visuel. - Tester des API avec des suites de tests natives et un exécuteur de collection. - Simuler des API via un serveur de mocking cloud ou auto-hébergé. - Construire des pipelines CI/CD en utilisant le CLI natif d'Insomnia (Inso) pour le linting et les tests. - Collaborer grâce aux fonctionnalités de collaboration du produit. - Étendre le client avec des plugins tiers. Options de stockage. Les projets, collections, spécifications de conception et autres ressources peuvent être conservés dans différents backends, et le README précise que ceux-ci peuvent être combinés par projet : - Local Vault, pour un stockage 100 % local. - Git Sync, utilisant n'importe quel dépôt Git tiers sans passer par le cloud. - Cloud Sync, pour la collaboration cloud, avec option de chiffrement de bout en bout (E2EE). Une fonctionnalité d'Environnements Privés permet de conserver la configuration de l'environnement localement, quel que soit le backend de stockage choisi pour un projet. Comptes et forfaits. Insomnia peut être utilisé sans compte via le Scratch Pad local. La plupart des autres capacités nécessitent un compte ; le README explique que c'est ainsi que le projet soutient le développement d'une distribution open-source gratuite. Un niveau gratuit est décrit comme généreux, tandis que les forfaits premium ajoutent la collaboration illimitée, Git Sync, la création d'organisations et les connexions via des fournisseurs d'identité tiers (SAML, OIDC). Le stockage des données API uniquement localement ou dans Git est possible indépendamment de la possession d'un compte. Développement. Le dépôt est un monorepo Node.js ; contribuer nécessite Node.js et Git, la version correcte de Node étant indiquée dans .nvmrc. Les commandes courantes à la racine incluent npm i, npm run lint, npm run type-check, npm test, npm run dev (rechargement en direct) et npm run dev:autoRestart (rechargement en direct du renderer plus redémarrage automatique du processus principal). Les utilisateurs Linux peuvent avoir besoin de packages de support tels que libfontconfig-dev sur Ubuntu/Debian ou libcurl-devel sur Fedora, et peuvent devoir effacer une installation Electron mise en cache si l'installation échoue. Le CLI Inso a son propre flux de travail : npm i, npm run inso-start pour compiler en mode watch, puis ./packages/insomnia-inso/bin/inso -v. Écosystème et communauté. Les plugins peuvent être trouvés et installés depuis l'Insomnia Plugin Hub. Le README renvoie vers des projets communautaires incluant Insomnia Documenter (génération de pages de documentation API), un importateur de spécifications REST API GitHub, et Swaggymnia (génération de documentation Swagger pour une API existante). Les rapports de bugs et les demandes de fonctionnalités passent par le suivi des tickets GitHub après lecture des directives ; les questions générales sur le produit sont traitées dans la communauté Slack du projet. La documentation officielle se trouve sur docs.insomnia.rest. Mises en garde notables du README : l'exigence d'un compte pour la plupart des fonctionnalités, ainsi que des forfaits payants optionnels pour la collaboration et Git Sync. Le code source lui-même est sous licence Apache-2.0.