This set of modules contains a web server and the client for the seqexec
The backend is written with http4s, it exposes a REST API and can provide static files for the UI. It is intended to run in the same process as the seqexec-server
This project uses an extra plugin
- sbt-revolver: This plugin allows to restart the web server and trigger a recompilation when the source code changes
Go to the JVM project
project seqexec_web_server
~reStart
Now every time a file is changed in the server code, the server files will be compiled, then the server will restart
By default the REST backend will run on port 7070
It can be stopped by executing
reStop
from within the project.
This module contains a web-based seqexec client. It contains a SPA (Single-page application) which communicates to the backend using Ajax-style calls and websockets
For the common case we want to develop the client but we also need to run the backend.
an sbt task
startSeqexecAll
Will do the following:
- Launch the backend on the background
- Pack the client going through scala.js and webpack
- Launch webpack-dev-server with a proxy to the backend
Now you can open the client at
if you want to update the client and get automatic reload do in sbt:
project seqexec_web_client
~fastOptJS
and to stop all the processes you can do
stopSeqexecAll