Convert Figma logo to code with AI

Kong logoinsomnia

The open-source, cross-platform API client for GraphQL, REST, WebSockets, SSE and gRPC. With Cloud, Local and Git storage.

34,307
1,926
34,307
673

Top Related Projects

Postman is an API platform for building and using APIs. Postman simplifies each step of the API lifecycle and streamlines collaboration so you can create better APIs—faster.

Open source API development ecosystem - https://hoppscotch.io (open-source alternative to Postman, Insomnia)

38,510

Developer-first error tracking and performance monitoring

15,944

GraphiQL & the GraphQL LSP Reference Ecosystem for building browser & IDE tools.

Open source API development ecosystem - https://hoppscotch.io (open-source alternative to Postman, Insomnia)

Quick Overview

Insomnia is an open-source, cross-platform HTTP client for API development and testing. It provides a user-friendly interface for sending requests, viewing responses, and managing API workflows, making it easier for developers to debug and interact with RESTful APIs, GraphQL, and gRPC services.

Pros

  • User-friendly interface with a clean, intuitive design
  • Supports a wide range of API protocols, including REST, GraphQL, and gRPC
  • Offers features like environment variables, request chaining, and authentication management
  • Provides robust team collaboration tools and cloud sync capabilities

Cons

  • May have a steeper learning curve for beginners compared to simpler API clients
  • Some advanced features are only available in the paid version (Insomnia Designer)
  • Performance can be slower compared to lightweight command-line tools
  • Limited built-in reporting and documentation generation capabilities

Getting Started

To get started with Insomnia:

  1. Download and install Insomnia from the official website: https://insomnia.rest/download
  2. Launch the application and create a new workspace
  3. Click the "New Request" button to create your first API request
  4. Select the HTTP method, enter the URL, and add any necessary headers or parameters
  5. Click "Send" to execute the request and view the response

For more detailed instructions and advanced features, refer to the official documentation: https://docs.insomnia.rest/

Competitor Comparisons

Postman is an API platform for building and using APIs. Postman simplifies each step of the API lifecycle and streamlines collaboration so you can create better APIs—faster.

Pros of Postman

  • Larger user base and community support
  • More extensive documentation and learning resources
  • Broader feature set, including team collaboration tools

Cons of Postman

  • Heavier resource usage and slower performance
  • More complex interface, steeper learning curve
  • Some advanced features require paid plans

Code Comparison

Insomnia (JavaScript):

const response = await insomnia.send(request);
console.log(response.status, response.data);

Postman (JavaScript):

pm.sendRequest(request, function (err, response) {
    console.log(response.code, response.json());
});

Both tools use JavaScript for scripting, but Insomnia's API is more modern with async/await support, while Postman uses callbacks.

Additional Notes

Insomnia is open-source and focuses on simplicity and performance, making it a good choice for individual developers or small teams. Postman offers a more comprehensive suite of tools, including API documentation and testing features, which can be beneficial for larger teams or complex API projects.

While Postman has a larger market share, Insomnia has been gaining popularity due to its lightweight nature and clean interface. The choice between the two often comes down to specific project requirements and personal preferences.

Open source API development ecosystem - https://hoppscotch.io (open-source alternative to Postman, Insomnia)

Pros of Hoppscotch

  • Lightweight and browser-based, no installation required
  • Open-source and community-driven development
  • Supports real-time collaboration features

Cons of Hoppscotch

  • Limited offline functionality compared to Insomnia
  • Fewer advanced features for complex API testing scenarios
  • Less extensive plugin ecosystem

Code Comparison

Hoppscotch (Vue.js)

<template>
  <div class="request-pane">
    <RequestMethod />
    <RequestURL />
    <SendButton />
  </div>
</template>

Insomnia (React)

function RequestPane() {
  return (
    <div className="request-pane">
      <RequestMethod />
      <RequestURL />
      <SendButton />
    </div>
  );
}

Both Hoppscotch and Insomnia are popular API development and testing tools. Hoppscotch is a lightweight, browser-based solution that offers real-time collaboration features and is entirely open-source. It's ideal for quick API testing and collaboration.

Insomnia, on the other hand, is a more robust desktop application with advanced features for complex API testing scenarios. It offers better offline functionality and has a more extensive plugin ecosystem.

The code comparison shows similarities in structure, with Hoppscotch using Vue.js and Insomnia using React. Both implement components for request method, URL, and send button, demonstrating a modular approach to building the user interface.

38,510

Developer-first error tracking and performance monitoring

Pros of Sentry

  • More comprehensive error tracking and monitoring solution
  • Supports a wider range of programming languages and frameworks
  • Offers advanced features like performance monitoring and release tracking

Cons of Sentry

  • More complex setup and configuration process
  • Higher resource requirements for self-hosted installations
  • Steeper learning curve for new users

Code Comparison

Sentry (Python):

import sentry_sdk

sentry_sdk.init(
    dsn="https://examplePublicKey@o0.ingest.sentry.io/0",
    traces_sample_rate=1.0
)

Insomnia (JavaScript):

const { app } = require('electron');
const insomnia = require('insomnia-core');

app.on('ready', () => {
  insomnia.init();
});

While both repositories serve different purposes, this comparison highlights some key differences. Sentry is a robust error tracking and monitoring platform, while Insomnia is primarily an API client and design tool. Sentry's code snippet demonstrates its initialization process, which is more focused on error tracking configuration. Insomnia's code shows its integration with Electron for desktop application development. The choice between these tools depends on the specific needs of the project, with Sentry being more suitable for comprehensive error monitoring and Insomnia for API development and testing.

15,944

GraphiQL & the GraphQL LSP Reference Ecosystem for building browser & IDE tools.

Pros of GraphiQL

  • Specifically designed for GraphQL, offering a more tailored experience for GraphQL developers
  • Provides built-in schema exploration and documentation features
  • Lightweight and can be easily embedded into existing GraphQL projects

Cons of GraphiQL

  • Limited to GraphQL APIs, while Insomnia supports multiple API types
  • Fewer advanced features compared to Insomnia's comprehensive toolset
  • Less customizable user interface and workspace management

Code Comparison

GraphiQL query example:

query {
  user(id: "123") {
    name
    email
  }
}

Insomnia request example:

{
  "url": "https://api.example.com/graphql",
  "method": "POST",
  "body": {
    "query": "query { user(id: \"123\") { name email } }"
  }
}

GraphiQL is a specialized tool for GraphQL development, offering a streamlined experience for working with GraphQL APIs. It excels in schema exploration and documentation but is limited to GraphQL-specific use cases. Insomnia, on the other hand, is a more versatile API client supporting various API types and offering a wider range of features for general API development and testing. The choice between the two depends on the specific needs of the project and the developer's preferences.

Open source API development ecosystem - https://hoppscotch.io (open-source alternative to Postman, Insomnia)

Pros of Hoppscotch

  • Lightweight and browser-based, no installation required
  • Open-source and community-driven development
  • Supports real-time collaboration features

Cons of Hoppscotch

  • Limited offline functionality compared to Insomnia
  • Fewer advanced features for complex API testing scenarios
  • Less extensive plugin ecosystem

Code Comparison

Hoppscotch (Vue.js)

<template>
  <div class="request-pane">
    <RequestMethod />
    <RequestURL />
    <SendButton />
  </div>
</template>

Insomnia (React)

function RequestPane() {
  return (
    <div className="request-pane">
      <RequestMethod />
      <RequestURL />
      <SendButton />
    </div>
  );
}

Both Hoppscotch and Insomnia are popular API development and testing tools. Hoppscotch is a lightweight, browser-based solution that offers real-time collaboration features and is entirely open-source. It's ideal for quick API testing and collaboration.

Insomnia, on the other hand, is a more robust desktop application with advanced features for complex API testing scenarios. It offers better offline functionality and has a more extensive plugin ecosystem.

The code comparison shows similarities in structure, with Hoppscotch using Vue.js and Insomnia using React. Both implement components for request method, URL, and send button, demonstrating a modular approach to building the user interface.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Insomnia API Client

Website Stars GitHub commit activity Slack Channel license Twitter Follow

Insomnia is an open-source, cross-platform API client for GraphQL, REST, WebSockets, Server-sent events (SSE), gRPC and any other HTTP compatible protocol.

With Insomnia you can:

  • Debug APIs using the most popular protocols and formats.
  • Design APIs using the native OpenAPI editor and visual preview.
  • Test APIs using native test suites and collection runner.
  • Mock APIs using a cloud or self-hosted mocking server.
  • Build CI/CD pipelines using the native Insomnia CLI for linting and testing.
  • Collaborate with others using the many collaboration features.
  • And more including the ability to use 3rd party plugins.

The following storage options are supported for your Insomnia projects, collections, design specs and all other resources:

  • Local Vault: for 100% local storage of collections, design specs and every other resource.
  • Git Sync: for Git storage using any 3rd party Git repository, without going through the cloud.
  • Cloud Sync: for cloud collaboration, optionally end-to-end encrypted (E2EE) in the cloud.

Insomnia API Client

Get started for free

Insomnia is available for Mac, Windows, and Linux and can be downloaded from the website:

https://insomnia.rest

Account & Subscriptions

You can use Insomnia without an account with the local Scratch Pad, or you can create an account for free to get access to the full capabilities of the product.

Even with an account, Insomnia only stores your projects and files accordingly to the storage backend that you have selected, which can be Local Vault, Cloud Sync, Git Sync or any combination of them. As such - for example - you have the freedom to choose to store sensitive projects 100% locally or in a Git repository, while still being able to collaborate on others in the cloud. It's the best of both worlds.

For added security, Insomnia also offers a Private Environments feature, where your environments configuration is always stored locally and never in the cloud, independently from the storage option that you have chosen for your project.

Premium features and support

Insomnia has a very generous free plan that will be satisfactory for most users, but if you need to get access to premium capabilities like unlimited collaboration, the Git Sync feature, the ability to create organizations for your projects, using a 3rd party IDP for logins (SAML, OIDC) and many other features, then you can explore the other subscription plans.

You can compare all subscription plans and get started for free.

Why does Insomnia require an account?

Insomnia does not require an account if you decide to use the local Scratch Pad, but to access most capabilities of the product we require an account. Your account data is securely stored in compliance with ISO27001, SOC 2 Type II, ISO27018, Gold CSA STAR regulations and in accordance to our terms of service and privacy policy.

We require an account to sustainably build and improve the product, and to make sure we can continue to offer the many core capabilities in a free and open-source distribution. While open source software is free to use, it is unfortunately not free to build, and our ability to continue working on Insomnia is dependent on our ability to convert a subset of free users (that need premium features) to become paying customers of our product.

If you are a user that cannot share API data like collections and design specifications to the cloud, this is still possible by selecting "Local Vault" as the storage of your Insomnia projects: having an Insomnia account is not tied to how you wish to store your sensitive API data (which can be stored 100% locally via Local Vault, on a 3rd party Git repository without any cloud storage via Git Sync, or in the cloud for ease of collaboration via Cloud Sync).

Bugs and Feature Requests

Have a bug or a feature request? First, read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

For more generic product questions and feedback, join the Slack Team.

Contributing

Please read through our contributing guidelines and code of conduct. Included are directions for opening issues, coding standards, and notes on development.

Documentation

Check out our official Insomnia Documentation.

Develop Insomnia

Development on Insomnia can be done on Mac, Windows, or Linux as long as you have Node.js and Git. See the .nvmrc file located in the project for the correct Node version.

Initial Dev Setup

This repository is structured as a monorepo and contains many Node.JS packages. Each package has its own set of commands, but the most common commands are available from the root package.json and can be accessed using the npm run … command. Here are the only three commands you should need to start developing on the app.

# Install and Link Dependencies
npm i

# Run Lint
npm run lint

# Run type checking
npm run type-check

# Run Tests
npm test

# Start App with Live Reload
npm run dev

Linux

If you are on Linux, you may need to install the following supporting packages:

Ubuntu/Debian
# Update library
sudo apt-get update

# Install font configuration library & support
sudo apt-get install libfontconfig-dev
Fedora
# Install libcurl for node-libcurl
sudo dnf install libcurl-devel

Also on Linux, if Electron is failing during the install process, run the following

# Clear Electron install conflicts
rm -rf ~/.cache/electron

Windows

If you are on Windows and have problems, you may need to install Windows Build Tools

Editor Requirements

You can use any editor you'd like, but make sure to have support/plugins for the following tools:

  • ESLint - For catching syntax problems and common errors
  • JSX Syntax - For React components

Develop Inso CLI

  • npm i
  • Start the compiler in watch mode: npm run inso-start
  • Run: ./packages/insomnia-inso/bin/inso -v

Plugins

Search for, discover, and install plugins from the Insomnia Plugin Hub!

Community Projects

License

Apache-2.0 © Insomnia