feat(build): embed static assets into Go binary
Some checks failed
continuous-integration/drone/push Build is failing

Embed frontend build output directly into Go binary using //go:embed.
This removes runtime dependency on ../frontend/public/ path and
simplifies Docker builds by serving assets from embedded filesystem.

- Add backend/web/embed.go with embed.FS directive
- Update server to serve from embedded static assets
- Update Makefile to copy frontend build to web/static/
- Update Dockerfile for simplified multi-stage build
- Update frontend package.json output paths
- Remove custom 'oc' command from flake.nix dev shell
This commit is contained in:
2026-02-22 20:36:03 -05:00
parent 93b5c3f110
commit 59de41f827
7 changed files with 30 additions and 61 deletions

View File

@@ -21,11 +21,6 @@
config.allowUnfree = true;
}
);
oc = pkgs.writeShellScriptBin "oc" ''
PRJ_ROOT=$(git rev-parse --show-toplevel 2>/dev/null || pwd)
cd "$PRJ_ROOT" && OPENCODE_EXPERIMENTAL_LSP_TOOL=true opencode
'';
in
{
devShells.default = pkgs.mkShell {
@@ -38,11 +33,11 @@
# Frontend
bun
watchman
tailwindcss_4
# Custom Commands
oc
];
shellHook = ''
export LD_LIBRARY_PATH=${pkgs.stdenv.cc.cc.lib}/lib:$LD_LIBRARY_PATH
'';
};
}
);