···11+{
22+ description = "doodler dev env";
33+44+ inputs = {
55+ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
66+ utils.url = "github:numtide/flake-utils";
77+ };
88+99+ outputs = { self, nixpkgs, utils }:
1010+ utils.lib.eachDefaultSystem (system:
1111+ let
1212+ pkgs = import nixpkgs { inherit system; };
1313+ in
1414+ {
1515+ devShells.default = pkgs.mkShell {
1616+ buildInputs = with pkgs; [
1717+ gleam
1818+ erlang_27
1919+ rebar3
2020+ bun
2121+ just
2222+ ];
2323+2424+ shellHook = ''
2525+ echo "doodler dev env loaded"
2626+ just --list
2727+ echo "Use just to run them."
2828+ '';
2929+ };
3030+ });
3131+}
3232+
+17
justfile
···11+default:
22+ @just --list
33+44+# Build the SPA
55+build:
66+ gleam run -m lustre/dev build
77+88+# Run a dev server using lustre/dev start
99+dev:
1010+ gleam run -m lustre/dev start
1111+1212+# Deploy doodler to my server
1313+deploy: build
1414+ ssh deploy-doodler@gitlab rm /srv/doodler/*
1515+ scp ./dist/* deploy-doodler@gitlab:/srv/doodler
1616+1717+