Home

Awesome

Nightly Donate Gitter

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...

:exclamation::exclamation: Update on Insomnia

Hello Insomnia Users :wave:. Recently, a way to import insomnia data was added due to the latest changes on insomnia. Rest assured that the restriction of having an account in Postman (and now, Insomnia) was one of the main reasons to create Milkman and such a thing will never ever happen.
The importer will be available in version 5.7.0 but is already implemented in the nightly release.

Download

Install via Chocolatey (Win)

Install via Homebrew (MacOs)

Changes

latest changes can be seen in the Changelog

FAQ

some resolved issues and FAQs are available in the wiki.

Features

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 or insomnia. 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.
To migrate from insomnia, see docs. 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).

Graphql Plugin

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

Grpc Plugin

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

JDBC Plugin

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

Cassandra Plugin:

Allows to execute CQL queries for given cassandra databases.

Git Team Synchronization Plugin

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.

Explore Plugin:

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

Scripting Plugin:

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

PrivateBin Sharing Plugin

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

Note Plugin:

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

Test Plugin

A testrunner plugin that allows to run multiple requests in sequence and verify the results

Auth Plugin

An OAuth Plugin for managing oauth credentials and transparent refreshing of tokens

Websocket Plugin

A websocket plugin for interacting with websocket endpoints

Socket.IO Plugin

A Socket.IO plugin for interacting with Socket.IO endpoints

NoSql Plugin

A NoSql plugin for interacting with all kinds of NoSql Databases

Showcase

Milkman White

Milkman Dark

Additional themes available here: https://github.com/lopitz/milkman-themes

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 (or via plugin-management, since version 5.8.0)

Changes

latest changes can be seen in the Changelog