Homestar Image Processing Demo is a frontend for demonstrating Homestar workflows. It requires a backend to run the workflows.
Install dependencies.
npm install
Work on the application in local development.
npm run dev
Navigate to localhost:5173
in your web browser.
Export a static build.
npm run build
The build outputs the static site to the build
directory.
The application can be configured in .env:
VITE_WEBSOCKET_ENDPOINT
. Backend websocket endpoint.VITE_PING_INTERVAL
. Ping interval for heartbeat check over websocket connection.VITE_MAX_PING_RETRIES
. Max retries before a workflow is failed.VITE_EMULATION_MODE
. Enable emulation with an echo server. Primarily for testing the frontend, does not process images.
The built site publishes with the Fission CLI and the Fission GH publish action. Publishing from the command line is configured in fission.yaml, and the GitHub publish action is configured in publish.yml.
To setup publishing with the Fission CLI:
- Install the CLI
- Run
fission setup
to make a Fission account - Run
npm run build
to build the app - Delete
fission.yaml
- Run
fission app register
to register a new Fission app (accept the./build
directory suggestion for your build directory) - Run
fission app publish
to publish your app to the web
After publishing, your app will be available online at the domain assigned by the register command.
To set up the GitHub publish action:
- Reigster the app with the CLI
- Export your machine key with
base64 ~/.config/fission/key/machine_id.ed25519
- Add your machine key as a GH Repository secret named
FISSION_MACHINE_KEY
- Update the
publish.yml
with the name of your registered app
See the Fission Guide and the publish action README for more details.
The source code for this template is available under the Apache 2.0 license.