A server for irmin using a custom wire protocol, designed to have minimal overhead.
To run the server:
$ dune exec bin/server/server.exe -- --root ./data
Run the server with web-based dashboard on port 9999:
$ dune exec bin/server/server.exe -- --root ./data --dashboard 9999
For more information:
```shell
$ dune exec bin/server/server.exe -- --help
irmin-server
accept WebSocket
connection.
To run the server:
$ dune exec -- ./examples/server.exe --uri=ws://localhost:9090/ws
irmin-server
can also be executed using Docker
:
$ docker run --env PORT=9999 $(docker build -q .)
irmin-client
is a command-line application that can be used to send commands to irmin-server
For a list of available commands:
$ dune exec bin/client/client.exe -- --help
For help with a specific command (for example, ping):
$ dune exec bin/client/client.exe -- ping --help
irmin-client
can also send commands to irmin-server
via WebSocket.
To run an example thats ping the server:
$ dune exec ./examples/ping.exe ws://localhost:9090/ws
irmin-server
accept WebSocket
connection which makes communication from a browser possible.
To run the server:
$ dune exec -- ./examples/server.exe --uri=ws://localhost:9090/ws
irmin-client-jsoo
is a browser application that can be used to send commands to irmin-server
via WebSocket
cd
into examples/js
$ dune build
To run an example thats ping the server from the browser:
Open the file _build/default/examples/js/index.html
in the browser
An OCaml client library is provided to interact with the server. Some examples can be found in the examples/ directory.
See src/irmin-client/client_intf.ml
A specification of the wire protocol can be found in PROTOCOL.md