httplaceholder

A very flexible cross platform HTTP stub application.

Stars
85
Forks
4
Open issues
21
Closed issues
86
Last release
5 months ago
Last commit
5 months ago
Watchers
85
Total releases
74
Total commits
859
Open PRs
0
Closed PRs
219
Repo URL
Platform
License
mit
Category
Usecase
Offers premium version?
NO
Proprietary?
NO
About

HttPlaceholder
Quickly stub away any HTTP service.

Report a Bug ยท Request a Feature ยท Ask a Question


Table of Contents

  • About
    • Built With

  • Getting Started

    • Prerequisites
    • Installation
    • Example

  • Getting started
  • Documentation

    • Tools

  • Roadmap
  • Support
  • Project assistance
  • Contributing
  • Authors & contributors
  • Security
  • License

About

HttPlaceholder lets you stub away any HTTP webservice.

It was thought up while I was working at a company which had many interconnected webservices. The development process was very painful, because it meant all the other webservices should also be started on my local dev PC, or I had to use the "development" environment, which did not work for half of the time. HttPlaceholder fills this gap nicely.

HttPlaceholder:

  • can easily be installed on your dev PC.
  • can be used to easily create stubs, either as separate YAML files, through the API or through the user interface.
  • can easily be hosted on any server.
  • can use many different HTTP condition checkers and response writers to make your HTTP stubs as specific as you need.

Also visit the website: https://httplaceholder.org/

Built With

Getting Started Prerequisites

Linux, Windows and Mac are supported.

Installation

Follow these steps to install / update HttPlaceholder. If you update HttPlaceholder, make sure to read the changelog to see if there are no breaking changes.

Install on Windows

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/dukeofharen/httplaceholder/master/scripts/Install-Windows.ps1'))

Install on Linux

curl -o- https://raw.githubusercontent.com/dukeofharen/httplaceholder/master/scripts/install-linux.sh | bash

Install on Mac

curl -o- https://raw.githubusercontent.com/dukeofharen/httplaceholder/master/scripts/install-mac.sh | bash

Docker

HttPlaceholder has a Docker image; it can be found here.

Run the following command to run a basic HttPlaceholder container: docker run -p 5000:5000 dukeofharen/httplaceholder:latest

Install as .NET tool

dotnet tool install --global HttPlaceholder
Example

  • Install HttPlaceholder (see Installation).
  • Create a new .yaml file (e.g. stub.yaml).
  • Copy and paste these contents in your new file:

- id: situation-01
  conditions:
    method: GET
    url:
      path:
        equals: /users
      query:
        id:
          equals: 12
        filter:
          equals: first_name
  response:
    statusCode: 200
    text: |
      {
        "first_name": "John"
      }
    headers:
      Content-Type: application/json

For more sophisticated examples, go to the samples to view samples for all supported HTTP condition checkers and response writers. Learn more about HttPlaceholder by reading the documentation.

Documentation

Tools

Roadmap

See the open issues for a list of proposed features (and known issues).

Support

Reach out to the maintainer at one of the following places:

Project assistance

If you want to say thank you or/and support active development of HttPlaceholder:

Contributing

First off, thanks for taking the time to contribute! Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make will benefit everybody else and are greatly appreciated.

We have set up a separate document containing our contribution guidelines.

Thank you for being involved!

Authors & contributors

The original setup of this repository is by dukeofharen (https://ducode.org).

For a full list of all authors and contributors, check the contributor's page.

Security

HttPlaceholder follows good practices of security, but 100% security can't be granted in software. HttPlaceholder is provided "as is" without any warranty. Use at your own risk.

For more info, please refer to the security.

License

This project is licensed under the MIT license.

See LICENSE for more information.

Alternative Projects
No projects found

Subscribe to Open Source Businees Newsletter

Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.

We'll never share your email with anyone else.