Add .gitkeep to backend/web/static/ to ensure directory exists
for Go embed directive. The static/* pattern requires at least
one file to exist at build time, otherwise compilation fails.
Update .gitignore to allow .gitkeep while ignoring other contents.
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
Add AETHERA_ prefixed env vars for server configuration:
- AETHERA_DATA_DIR: data directory path
- AETHERA_LISTEN: listen address
- AETHERA_PORT: listen port
Env vars take precedence over defaults but CLI flags override both.