![hoppscotch.io logo](https://raw.githubusercontent.com/hoppscotch/hoppscotch/master/static/logo.png)
Hoppscotch - A free, fast and beautiful API request builder
Helps you create requests faster, saving precious time on development - Subscribe
Built with โค๏ธ by liyasthomas and contributors
Contact
Support
Table of contents
- Features
- Demo
- Usage
- Built with
- Developing
- Docker
- Releasing
- Contributing
- Continuous Integration
- Versioning
- Changelog
- Authors
- License
- Acknowledgements
- Badges
Features
Methods
GET
- Requests retrieve resource informationHEAD
- Retrieve response headers identical to those of a GET request, but without the response body.POST
- The server creates a new entry in a databasePUT
- Updates an existing resourceDELETE
- Deletes resource or related componentCONNECT
- Establishes a tunnel to the server identified by the target resourceOPTIONS
- Describe the communication options for the target resourceTRACE
- Performs a message loop-back test along the path to the target resourcePATCH
- Very similar toPUT
but makes a partial update on a resource<custom>
- Some APIs use custom request methods such asLIST
. Type in your custom methods.
Theming: Customize now
- Choose theme: System, Light, Dark (default) and Black
- Choose accent color: Blue, Green (default), Teal, Purple, Orange, Pink, Red, and Yellow
- Toggle multi-colored headings
- Toggle auto-scroll to response
Customized themes are synced with local session storage
Features
- Instant loading with Service Workers
- Offline support
- Low RAM/memory and CPU usage
- Add to Home Screen
- Desktop PWA
- Choose
method
- Enter
URL
- Send
Features
- Copy/share public "Share URL"
- Generate/copy request code for
JavaScript XHR
,Fetch
andcURL
- Import
cURL
- Label requests
- Send and receive data
- Basic and Bearer Token authentication
- Set endpoint and get schemas
- Multi-column docs
- Set custom request headers
- Query schema
- Get query response
Types
- None
- Basic
- Bearer Token
- OAuth 2.0
- OIDC Access Token/PKCE
Options
- Set
Content Type
- Add or remove Parameter list
- Toggle between key-value and RAW input parameter list
- Copy response to clipboard
- Download response as a file
- View preview of HTML responses
Collections are synced with cloud / local session storage
Features
- Hide your IP address
- Fixes
CORS
(Cross Origin Resource Sharing) issues - Access APIs served in non-HTTPS (
http://
) - Use custom Proxy URL
Official Hoppscotch Proxy is hosted by Apollo Software - Privacy Policy
Use-cases
- Include timestamp in the request headers
- Send a random alphanumeric string in the URL parameters
Usage
- Add your requests to Collections and Folders
- Export Collections and easily share your APIs with the rest of your team
- Import Collections and Generate Documentation on-the-go
- Scroll down to the footer
- Click "Choose Language" icon button
- Select your language from the menu
Keep in mind: Translations aren't available for all source and target language combinations
To provide a localized experience for users around the world, you can add you own translations.
All i18n
contributions are welcome to i18n
branch only!
-
Proxy - A simple proxy server created for Hoppscotch
-
CLI ฮฒ - A CLI solution for Hoppscotch
-
Browser Extensions - Browser extensions that simplifies access to Hoppscotch
Extensions fixes
CORS
issues.
Add-ons are developed and maintained under Official Hoppscotch Organization.
Sign in with
- GitHub
Sync
- History
- Collections
- Environments
- Notes
Use-cases
- Check the status code as an integer
- Filter response headers
- Parse the response data
Notes are only available for signed-in users
Use-cases
- By storing a value in a variable, you can reference it throughout your request section
- If you need to update the value, you only have to change it in one place
- Using variables increases your ability to work efficiently and minimizes the likelihood of error
To find out more, please check out Hoppscotch Wiki.
Demo
Usage
- Choose
method
- Enter
URL
- Send request
- Get response
Built with
Developing
- Update
.env.example
file found in repository's root directory with your own keys and rename it to.env
.
Sample keys only works with the production build.
Browser based development environment
Local development environment
- Clone this repo with git.
- Install dependencies by running
npm install
within the directory that you cloned (probablyhoppscotch
). - Start the development server with
npm run dev
. - Open development site by going to
http://localhost:3000
in your browser.
Docker compose
- Clone this repo with git.
- Run
docker-compose up
- Open development site by going to
http://localhost:3000
in your browser.
Docker
#pull
docker pull liyasthomas/postwoman
#build
docker build -t postwoman:latest .
#run
docker run -p 3000:3000 postwoman:latest
Releasing
- Clone this repo with git.
- Install dependencies by running
npm install
within the directory that you cloned (probablyhoppscotch
). - Build the release files with
npm run build
. - Find the built project in
./dist
.
Contributing
Please contribute using GitHub Flow. Create a branch, add commits, and open a pull request.
Please read CONTRIBUTING
for details on our CODE OF CONDUCT
, and the process for submitting pull requests to us.
Continuous Integration
We use Travis CI for continuous integration. Check out our Travis CI Status.
Versioning
This project is developed by Liyas Thomas using the Semantic Versioning specification. For the versions available, see the releases on this repository.
Changelog
See the CHANGELOG
file for details.
Authors
Lead Developers
- Liyas Thomas - Author
- John Harker - Lead developer
- Andrew Bastin - Lead developer
- James George - Lead maintainer
- Caneco - Logo and banner designer
Testing and Debugging
Collaborators
See the list of contributors who participated in this project.
Thanks
Financial Contributors
Become a financial contributor and help us sustain our community [Support].
GitHub Sponsors
![Shivam Mishra](https://github.com/scmmishra.png?size=64)
![Zach Silveira](https://github.com/zackify.png?size=64)
![Harshit Pant](https://github.com/pantharshit00.png?size=64)
![Jan Piotrowski](https://github.com/janpio.png?size=64)
![Anil Kumar](https://github.com/ankumar.png?size=64)
![Gabriel Peal](https://github.com/gpeal.png?size=64)
![Kristjรกn Oddsson](https://github.com/koddsson.png?size=64)
![Don Okuda](https://github.com/donokuda.png?size=64)
![Erica Brescia](https://github.com/ebrescia.png?size=64)
![Pedro Filho](https://github.com/pedroapfilho.png?size=64)
![Peter Pistorius](https://github.com/peterp.png?size=64)
![Tom Preston-Werner](https://github.com/mojombo.png?size=64)
![Max Lynch](https://github.com/mlynch.png?size=64)
![David McKay](https://github.com/rawkode.png?size=64)
![Brian Shaler](https://github.com/brianshaler.png?size=64)
![Max Stoiber](https://github.com/mxstbr.png?size=64)
![John Caine](https://github.com/jjcaine.png?size=64)
Organizations
Support this project with your organization. Your logo will show up here with a link to your website [Support].
Individuals
Code Contributors
This project exists thanks to all the people who contribute [Contribute].
License
This project is licensed under the MIT License - see the LICENSE
file for details.
Acknowledgements
- Hat tip to anyone whose code was used
- Inspirations: