dispatch/README.md

116 lines
2.4 KiB
Markdown
Raw Normal View History

2015-12-11 03:35:48 +00:00
# dispatch [![Build Status](https://travis-ci.org/khlieng/dispatch.svg?branch=master)](https://travis-ci.org/khlieng/dispatch)
2015-03-04 17:41:25 +00:00
2017-03-16 21:50:07 +00:00
#### [Try it!](https://dispatch.khlieng.com)
2015-06-04 22:04:34 +00:00
2018-10-06 23:15:09 +00:00
![Dispatch](https://khlieng.com/dispatch.png?1)
2016-01-20 00:09:11 +00:00
2015-06-04 22:04:34 +00:00
### Features
2018-11-10 11:56:31 +00:00
- Searchable history
- Persistent connections
- Multiple servers and users
- Automatic HTTPS through Let's Encrypt
- Client certificates
2015-05-29 00:55:28 +00:00
## Usage
2018-11-10 11:56:31 +00:00
2015-06-04 22:04:34 +00:00
There is a few different ways of getting it:
2015-05-29 00:55:28 +00:00
2016-01-19 23:31:47 +00:00
### 1. Binary
2018-11-10 11:56:31 +00:00
2018-11-29 12:07:27 +00:00
- **[Windows (x64)](https://github.com/khlieng/dispatch/releases/download/v0.5.4/dispatch_0.5.4_windows_x64.zip)**
- **[macOS (x64)](https://github.com/khlieng/dispatch/releases/download/v0.5.4/dispatch_0.5.4_mac_x64.tar.gz)**
- **[Linux (x64)](https://github.com/khlieng/dispatch/releases/download/v0.5.4/dispatch_0.5.4_linux_x64.tar.gz)**
2016-01-19 23:31:47 +00:00
- [Other versions](https://github.com/khlieng/dispatch/releases)
2015-05-29 00:55:28 +00:00
2016-01-19 23:31:47 +00:00
### 2. Go
2018-11-10 11:56:31 +00:00
2018-10-06 23:27:26 +00:00
This requires a [Go environment](http://golang.org/doc/install), version 1.10 or greater.
Fetch, compile and run dispatch:
2018-11-10 11:56:31 +00:00
2015-03-04 17:41:25 +00:00
```bash
2015-12-11 03:35:48 +00:00
go get github.com/khlieng/dispatch
dispatch
2015-03-04 17:41:25 +00:00
```
2015-05-29 00:55:28 +00:00
To get some help run:
2018-11-10 11:56:31 +00:00
```bash
2015-12-11 03:35:48 +00:00
dispatch help
```
2016-01-19 23:31:47 +00:00
### 3. Docker
2018-11-10 11:56:31 +00:00
2015-05-29 00:55:28 +00:00
```bash
2016-01-04 20:28:35 +00:00
docker run -p <http port>:80 -p <https port>:443 -v <path>:/data khlieng/dispatch
2015-05-29 00:55:28 +00:00
```
2015-05-29 00:55:28 +00:00
## Build
2015-05-29 00:55:28 +00:00
### Server
2018-11-10 11:56:31 +00:00
2015-03-04 17:41:25 +00:00
```bash
2015-12-11 03:35:48 +00:00
cd $GOPATH/src/github.com/khlieng/dispatch
go install
2015-03-04 17:41:25 +00:00
```
2015-05-29 00:55:28 +00:00
### Client
2018-11-10 11:56:31 +00:00
2018-05-16 01:54:19 +00:00
This requires [Node.js](https://nodejs.org) and [yarn](https://yarnpkg.com).
2015-05-29 00:55:28 +00:00
Fetch the dependencies:
2018-11-10 11:56:31 +00:00
2015-03-04 17:41:25 +00:00
```bash
go get github.com/jteeuwen/go-bindata/...
2018-05-16 01:54:19 +00:00
yarn global add gulp@next
2015-12-11 03:35:48 +00:00
cd $GOPATH/src/github.com/khlieng/dispatch/client
2018-05-16 01:54:19 +00:00
yarn
2015-05-29 00:55:28 +00:00
```
2015-05-29 00:55:28 +00:00
Run the build:
2018-11-10 11:56:31 +00:00
2015-05-29 00:55:28 +00:00
```bash
2015-12-28 23:34:32 +00:00
gulp build
2015-05-29 00:55:28 +00:00
```
2018-05-16 01:54:19 +00:00
The server needs to be rebuilt to embed new client builds.
2015-12-28 23:34:32 +00:00
For development with hot reloading start the frontend:
2018-11-10 11:56:31 +00:00
2015-12-28 23:34:32 +00:00
```bash
gulp
```
2018-11-10 11:56:31 +00:00
And then the backend in a separate terminal:
```bash
dispatch --dev
2015-12-28 23:34:32 +00:00
```
2016-01-18 02:13:52 +00:00
## Libraries
2018-11-10 11:56:31 +00:00
2016-01-18 02:13:52 +00:00
The libraries this project is built with.
### Server
2018-11-10 11:56:31 +00:00
2016-01-18 02:13:52 +00:00
- [Bolt](https://github.com/boltdb/bolt)
- [Bleve](https://github.com/blevesearch/bleve)
- [Cobra](https://github.com/spf13/cobra)
- [Viper](https://github.com/spf13/viper)
- [Lego](https://github.com/xenolf/lego)
### Client
2018-11-10 11:56:31 +00:00
2016-01-18 02:13:52 +00:00
- [React](https://github.com/facebook/react)
- [Redux](https://github.com/reactjs/redux)
2018-04-26 19:37:58 +00:00
- [Immer](https://github.com/mweststrate/immer)
2018-11-10 11:56:31 +00:00
- [react-window](https://github.com/bvaughn/react-window)
2016-01-18 02:13:52 +00:00
- [Lodash](https://github.com/lodash/lodash)
2018-05-30 02:42:32 +00:00
## Big Thanks
Cross-browser Testing Platform and Open Source <3 Provided by [Sauce Labs][homepage]
[homepage]: https://saucelabs.com