You need Go 1.27, npm, and sqlc.
Run make to build, and make clean to remove what it built.
On top of the build requirements it needs
golangci-lint,
a PostgreSQL the current user can create databases on,
and a browser in PATH for the end-to-end tests
(chromium, chromium-browser or google-chrome).
Store a cookie by visiting the backend first, then you should be able to use the vite development server.
You need to set up a few environment variables
as seen in ui/dev.ts.
./cca -dev-login adds a form to the sign-in pages
that signs you in as any account you name,
without contacting the identity provider.
The domain rule, the administrator list and the student roster
still apply.
It refuses to start unless listen.address
is a loopback address such as 127.0.0.1:8080.
Never use it on a server other people can reach.
Copy cca.conf.example to cca.conf
and adapt it to your environment.
Every CHANGE-ME in it has to be replaced;
left alone, the process refuses to start
rather than running on a placeholder.
cca.conf is not tracked:
the signing key is a secret,
and the administrator list names real people.
Note that this service does not have automatic database schema migrations. Instance administrators run the schema and the migrations themselves.
GET /healthz: is the process alive? no database. Restarting is the fix when this fails, and only when this fails.GET /readyz: can it serve right now?
We recommend not using reverse proxies. If you must, make sure they handle WebSocket correctly.