Git Product home page Git Product logo

milkman's Introduction

CircleCI Donate

Milkman Logo Milkman - An Extensible Request/Response Workbench

Milkman is heavily inspired by Postman. But I got sick of all those electron-based applications that need ages and loads of memory to start up. Therefore i created a JavaFx-based workbench for crafting requests / responses. It is not limited to e.g. http (or more specifically rest) requests. Due to nearly everything being a plugin, other things are possible, like database-requests or GRPC, GraphQl, etc...

Download

  • Download latest version in Release Section.
  • Download plugin archive as well, if you want to use any of those plugins.

For downloading the nightly build:

  • Login to circleci.com (e.g. via github-authentication)
  • Go to Milkman Builds
  • Choose latest build and Download the build from the artifacts tab

Install via Chocolatey

  • To install just Milkman run Choco install milkman
  • To install a plugin run Choco install milkman-<plugin name> ex. Choco install milkman-explore
  • Install Milkman and all plugins available run Choco install milkman-plugins

Changes

latest changes can be seen in the Changelog

Features

  • Everything is a plugin: Request-types (e.g. Http Request), request-aspects (e.g. Headers, Body, etc), editors for request aspects (e.g. table-based editors for headers), importers, whatever it is, you can extend it. The core application only handles Workspaces with Environments, Collections, Requests and their aspects.
  • Http Request Plugin: Several plugins are provided already that extend the core application to be a replacement for postman. Crafting and Executing Http/Rest requests with json highlighting. Support Proxy-server configuration and SSE.
  • Grpc Plugin: support of Grpc Services, Server Reflection and Streaming
  • JavaFX Application: as in: fast (compared to electron at least :D) and skinn-able (you can extend milkman with your own themes using simple CSS).
  • Commandline Interface: there is a command line interface for Milkman which allows to edit/execute requests on your command line.
  • Some more details of the core application features, such as hotkeys etc.

Existing Plugins:

Note: see respective plugin folder for more details

Http Request Plugin: (included in main distribution)

The Http request plugin packaged with the release contains all means to do http request as well as import collections, environments or dumps from postman. To migrate from postman, just export a dump-file from postman and import it by pasting its content into the Postman (v2.1) Dump-Importer. The Http Request Plugin also comes with Proxy-support. Some proxies require credentials and support for supplying BASIC proxy credentials is built into the plugin. See Options-page to activate that as it is off by default. Additionally, the plugin supports chunked responses, enabling testing of Server-sent events (SSE).

Simple Graphql Plugin to craft GraphQL requests. No Auto-complete or schema valiadtion included.

Grpc plugin with server-reflection support and streaming-support. Can also query via proto-defintion.

This plugin introduces SQL capability to milkman. You can query SQL databases via milkman as well, using JDBC drivers.

This plugin allows to synchronize workspaces via Git (using Differential Synchronization). Teams can use this plugin to have a shared workspace that synchronizes between members.

This plugin extends Rest-responses by adding an Explore-Tab where you can use JMesPath queries against a JSON response.

Extends requests by executing a script after request execution. This allows to e.g. set environment variables based on results of json.

Adds capability to share requests via PrivateBin, including Burn After Reading feature

This is a sample plugin that allows to add arbitrary description to every request. Serves as a starting point for learning to extend milkman.

Showcase

Milkman White

Milkman Dark

Plugins

No client fits all, so you are encouraged to write your own plugins to e.g. add headers that are necessary for your internal service structures or add importers for internal service registries.

A sample plugin was provided that extends all requests with a Note tab so you can add some description to any kind of requests.

More details about developing plugins can be found in the plugin development guide.

Installation: all plugins are to be copied to the /plugins folder

Roadmap

This is only the beginning. Following features are already planned:

  • javascript runner for pre request actions / testing of responses
  • more exports
  • different request types (e.g. GraphQl Client, Grpc, protobuf etc)

latest changes can be seen in the (Changelog)[changelog.md]

milkman's People

Contributors

warmuuh avatar 0xflotus avatar mapuo avatar muminc avatar digitalcoyote avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.