insomnia/README.md

123 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Insomnia API Client
[![Slack Channel](https://chat.insomnia.rest/badge.svg)](https://chat.insomnia.rest/)
[![license](https://img.shields.io/github/license/Kong/insomnia.svg)](https://github.com/Kong/insomnia/blob/master/LICENSE)
Insomnia is an open-source, cross-platform API client for GraphQL, REST, and gRPC.
![Insomnia API Client](https://raw.githubusercontent.com/Kong/insomnia/develop/screenshots/main.png)
## Download
Insomnia is available for Mac, Windows, and Linux and can be downloaded
from the website.
**[https://insomnia.rest/download](https://insomnia.rest/download/)**
## Bugs and Feature Requests
Have a bug or a feature request? First, read the
[issue guidelines](CONTRIBUTING.md#using-the-issue-tracker) and search for existing and
closed issues. If your problem or idea is not addressed yet, [please open a new issue](/issues).
For more generic product questions and feedback, join the [Slack Team](https://chat.insomnia.rest) or email
[support@insomnia.rest](mailto:support@insomnia.rest)
## Contributing
Please read through our [contributing guidelines](CONTRIBUTING.md) and [code of conduct](CODE_OF_CONDUCT.md). Included are directions for opening issues, coding standards, and notes on development.
## Documentation
Check out our open-source [Insomnia Documentation](https://docs.insomnia.rest/).
## Develop Insomnia app
Development on Insomnia can be done on Mac, Windows, or Linux as long as you have [Node.js](https://nodejs.org) and [Git](https://git-scm.com/). See the `.nvmrc` file located in the project for the correct Node version.
<details>
<summary>Initial Dev Setup</summary>
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`](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.
```shell
# Install and Link Dependencies
npm run bootstrap
# Run Tests
npm test
# Start App with Live Reload
npm run app-start
```
### Linux
If you are on Linux, you may need to install the following supporting packages:
<details>
<summary>Ubuntu/Debian</summary>
```shell
# Update library
sudo apt-get update
# Install font configuration library & support
sudo apt-get install libfontconfig-dev
```
</details>
<details>
<summary>Fedora</summary>
```shell
# Install libcurl for node-libcurl
sudo dnf install libcurl-devel
```
</details>
Also on Linux, if Electron is failing during the bootstrap process, run the following
```shell
# 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](https://github.com/felixrieseberg/windows-build-tools)
</details>
<details>
<summary>Editor Requirements</summary>
You can use any editor you'd like, but make sure to have support/plugins for the following tools:
- [ESLint](http://eslint.org/) For catching syntax problems and common errors
- [JSX Syntax](https://facebook.github.io/react/docs/jsx-in-depth.html) For React components
</details>
## Develop Inso CLI
- Bootstrap: `npm run bootstrap`
- 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](https://insomnia.rest/plugins/)!
## Community Projects
- [Insomnia Documenter](https://github.com/jozsefsallai/insomnia-documenter) Generate beautiful API documentation pages using the [documenter plugin](https://insomnia.rest/plugins/insomnia-plugin-documenter) or your Insomnia export file.
- [GitHub API Spec Importer](https://github.com/swinton/github-rest-apis-for-insomnia) A complete set of GitHub REST API route specifications that can be imported straight into Insomnia.
- [Swaggymnia](https://github.com/mlabouardy/swaggymnia) Generate [Swagger](https://swagger.io/) documentation for your existing API in Insomnia.
## License
[MIT](LICENSE) &copy; [Insomnia](https://insomnia.rest)