Full stack Scala application with a Scalajs frontend. Depends on Frontend. This application is built on on top of Smithy4s and is deployed as a Docker container on fly.io.
Live at: https://morning-bird-7081.fly.dev/
Deployed on a very small 2vcpu and 512mb vm.
The backend can be configured.
SMITHY_CLASSPATH_CONFIG
: location of a json file used to load dependencies to include during code gen. The file content looks like this:
{
"entries": {
"com.disneystreaming.alloy:alloy-core:0.2.8": "/opt/docker/smithy-classpath/alloy-core-0.2.8.jar"
}
}
ScalaJS application shipped in Backend.
It is recomended that you have 3 long running proccesses to develop this application:
- backend:
sbt ~backend/reStart
- cd into
modules/frontend
and runnpm i && npm run dev
- frontend scalajs:
sbt "~frontend/fastLinkJS"
The images are pushed to the docker hub so you can deploy them on your own infrastructure.
- latest: daddykotex/smithy4s-code-generation:latest
- latest: daddykotex/smithy4s-code-generation:with-dependencies
- daddykotex/smithy4s-code-generation:$SHA
- daddykotex/smithy4s-code-generation:with-dependencies-$SHA
The images are pushed to the fly.io registry so that it can be deployed quickly from there.
Use the following command to use the right version of flyctl via nix:
nix-shell -p flyctl -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/555bd32eb477d657e133ad14a5f99ac685bfdd61.tar.gz