Sobre o projeto

Insomnia é um cliente de API desktop open-source e multiplataforma que abrange GraphQL, REST, WebSockets, Server-Sent Events (SSE), gRPC e outros protocolos compatíveis com HTTP. É distribuído para Mac, Windows e Linux, licenciado sob Apache-2.0 e desenvolvido abertamente pela Kong no GitHub. O que o README diz que você pode fazer com ele: - Depurar APIs usando protocolos e formatos populares. - Projetar APIs com um editor OpenAPI nativo e visualização prévia. - Testar APIs com suítes de teste nativas e um executor de coleções. - Simular APIs através de um servidor de mocking em nuvem ou auto-hospedado. - Construir pipelines de CI/CD usando a CLI nativa do Insomnia (Inso) para linting e testes. - Colaborar através dos recursos de colaboração do produto. - Estender o cliente com plugins de terceiros. Opções de armazenamento. Projetos, coleções, especificações de design e outros recursos podem ser mantidos em diferentes backends, e o README afirma que estes podem ser combinados por projeto: - Local Vault, para armazenamento 100% local. - Git Sync, usando qualquer repositório Git de terceiros sem roteamento pela nuvem. - Cloud Sync, para colaboração em nuvem, opcionalmente com criptografia de ponta a ponta (E2EE). Um recurso de Private Environments mantém a configuração do ambiente armazenada localmente, independentemente do backend de armazenamento escolhido para um projeto. Contas e planos. O Insomnia pode ser usado sem uma conta através do Scratch Pad local. A maioria das outras capacidades requer uma conta; o README explica que é assim que o projeto sustenta o desenvolvimento de uma distribuição open-source gratuita. Um nível gratuito é descrito como generoso, com planos premium adicionando colaboração ilimitada, Git Sync, criação de organizações e logins de provedores de identidade de terceiros (SAML, OIDC). Armazenar dados de API apenas localmente ou no Git é possível independentemente de ter uma conta. Desenvolvimento. O repositório é um monorepo Node.js; contribuir requer Node.js e Git, com a versão correta do Node indicada em .nvmrc. Comandos comuns no nível da raiz incluem npm i, npm run lint, npm run type-check, npm test, npm run dev (live reload) e npm run dev:autoRestart (live reload do renderizador mais reinicialização automática do processo principal). Usuários de Linux podem precisar de pacotes de suporte, como libfontconfig-dev no Ubuntu/Debian ou libcurl-devel no Fedora, e podem precisar limpar uma instalação de Electron em cache se a instalação falhar. A CLI Inso tem seu próprio fluxo de trabalho: npm i, npm run inso-start para compilar em modo watch, então ./packages/insomnia-inso/bin/inso -v. Ecossistema e comunidade. Plugins podem ser encontrados e instalados no Insomnia Plugin Hub. O README aponta para projetos da comunidade, incluindo Insomnia Documenter (gerando páginas de documentação de API), um importador de especificação de API REST do GitHub e Swaggymnia (gerando documentação Swagger para uma API existente). Relatos de bugs e solicitações de recursos são feitos através do rastreador de issues do GitHub após a leitura das diretrizes de issues; perguntas gerais sobre o produto são tratadas na comunidade Slack do projeto. A documentação oficial está em docs.insomnia.rest. Ressalvas notáveis do README: a exigência de uma conta para a maioria dos recursos, além de planos pagos opcionais para colaboração e Git Sync. O código-fonte em si é licenciado sob Apache-2.0.