Introduce full backend API surface for projects, snapshots and user pubkeys: controllers, DTOs, JPA entities, repositories, services, and tests. Add SecurityConfig improvements (JWT decoder, audience/issuer/timestamp validation and CORS), a GlobalExceptionHandler for consistent error responses, and remove a stray test call from BackendApplication. Also update README (architecture, docs, CLI/Frontend/Backend notes), add CLAUDE.md, VSCode settings, and multiple frontend/CLI Rust changes. Small housekeeping: add .DS_Store and test adjustments.
Adds source modules for api (auth, vault, mod), cli entrypoints, command implementations (diff, init, log, pull, push, rollback, set, unset), plus config, crypto and error support. main.rs was updated to wire up the new CLI. Cargo.toml updated to declare required dependencies and Cargo.lock regenerated.
/api/auth
is able to auth against keycloak with device codes and retriving a accessToken to access the spring boot backend.
Test Keycloak JWT validation against access token issued via NextAuth; ensure Spring Boot resource server correctly validates token signature, expiration, issuer, and optional audience.
Add a docker-compose.yml to run a local development stack: Postgres (with mounted init scripts), Redis, MinIO, Keycloak (start-dev) and pgAdmin, plus a bridge network and persistent volumes. Also add init/init.sql to create the keycloak database and grant privileges to the admin user so Keycloak can connect to its dedicated DB. Default credentials and port mappings are provided for development convenience.
Bootstrap repository with multi-component scaffolding: a Spring Boot backend (Maven wrapper, pom.xml, BackendApplication, test, resources, .gitignore/.gitattributes), a Go CLI app using Cobra (root + subcommands: diff, log, login, pull, push, set, unset), prebuilt CLI binaries and a build script, and a Next.js frontend (configs, package.json, styles, pages, and static assets). This commit provides the skeleton for development across backend, CLI, and frontend components.