aboutsummaryrefslogtreecommitdiff
path: root/docs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Implement course selection started/stopped statesRunxi Yu2024-10-101-0/+4
| | | | Implements: https://todo.sr.ht/~runxiyu/cca/13
* Replace tcourse.sql with an example importable CSVRunxi Yu2024-10-101-0/+14
|
* docs/fields.txt: RemoveRunxi Yu2024-10-091-27/+0
|
* cca.scfg.example: usem_delay_shift_bits should default to 5Runxi Yu2024-10-071-1/+1
|
* Reapply "{config,wsc}.go, cca.scfg.example: Dynamic course update delay"Runxi Yu2024-10-071-3/+7
| | | | This reverts commit 831040c3d7dbc116a25848786bc5ab83fef6149b.
* Revert "{config,wsc}.go, cca.scfg.example: Dynamic course update delay"Runxi Yu2024-10-071-7/+3
| | | | This reverts commit de3f0b9e7003e4521f5ea866134e77ff859ab99b.
* {config,wsm}.go, cca.scfg.example: Configurable immediate propagationRunxi Yu2024-10-061-0/+5
|
* iadocs, etc.: Add source to appendixRunxi Yu2024-10-061-1/+1
|
* {config,wsc}.go, cca.scfg.example: Dynamic course update delayRunxi Yu2024-10-061-3/+7
|
* docs/.gitignore: Delete because emptyRunxi Yu2024-10-061-0/+0
|
* *: Overhaul structure again and embed everythingRunxi Yu2024-10-063-28/+8
| | | | | | | | - Remove sub-Makefiles; recursive make is annoying - Just use one top-level Makefile that builds everything - Embed templates and minified static resources into the binary - Embed all compiled documentation into the binary and serve - Embed all source into the binary and serve
* */Makefile: Update againRunxi Yu2024-10-051-0/+7
|
* *: Further restructuringRunxi Yu2024-10-051-3/+6
|
* *.go: Move to backendRunxi Yu2024-10-051-1/+1
| | | | And adjust Makefiles, admin handbook, and lint.sh accordingly.
* iadocs: Update IA documentationRunxi Yu2024-10-051-0/+1
|
* docs: max-width: 50rem;Runxi Yu2024-10-051-1/+1
|
* docs/admin: Document database setupRunxi Yu2024-10-051-1/+10
|
* docs/admin: Update protocol informationRunxi Yu2024-10-051-3/+2
|
* {config,ws}.go, cca.scfg.example: Add perf.course_update_intervalRunxi Yu2024-10-051-0/+4
| | | | | | This causes a drastic increase in performance. References: https://todo.sr.ht/~runxiyu/cca/7
* {config,ws}.go, cca.scfg.example: Remove chanPool/SendQRunxi Yu2024-10-051-4/+0
|
* {config,main}.go, cca.scfg.example: Settable static pathRunxi Yu2024-10-041-6/+3
| | | | | | | | | Because of the poor performance of using NGINX as a reverse proxy, I've added native TLS in commit 4a1a7af76408e956ebc343bf28960fdd00c00c58. Serving static files was already supported, but it was expected that people use a static web server to do so, so we didn't support a configurable static path. Now since reverse proxy setups are discouraged, it makes more sense to be better at serving static files.
* {config,main}.go, cca.scfg.example: Support TLSRunxi Yu2024-10-041-0/+16
|
* main.go, cca.scfg.example: Remove FastCGI supportRunxi Yu2024-10-041-5/+3
| | | | | | I would love to serve FastCGI but it is a huge pain to get WebSocket working, at least with NGINX. I don't think OpenBSD httpd would be better at this either.
* cca.scfg.example: Listen on 127.0.0.1:5555 only by defaultRunxi Yu2024-10-031-3/+3
| | | | | | I would have used IPv6, i.e. [::1]:5555, but our school network only has IPv4 and it'd be easier to keep everything on the same protocol, though this probably wouldn't matter for standard reverse proxy setups.
* {config,ws}.go, cca.scfg.example: Allow same-user fake authRunxi Yu2024-10-031-5/+0
| | | | This is useful for testing whether connection collisions work well.
* {config,ws}.go, cca.scfg.example: Add fake auth supportRunxi Yu2024-10-021-0/+5
| | | | | Fake authentication is useful when benchmarking the server with an external program without going insane with the OpenID Connect forms.
* admin_handbook: List configuration caveatsRunxi Yu2024-09-301-3/+7
|
* docs, iadocs: RevampRunxi Yu2024-09-303-0/+187
|
* docs: TeXinfo kinda sucks, removingRunxi Yu2024-09-303-57/+0
|
* {config,index}.go, cca.scfg.example, style.css, *.html: Link to sourceRunxi Yu2024-09-301-0/+4
|
* auth.go, config.go, cca.scfg.example: Issue expiring cookiesRunxi Yu2024-09-301-0/+3
|
* ws.go, config.go, config.scfg.example: Attempt to fix deadlockRunxi Yu2024-09-291-0/+4
| | | | | | | When propagate tries to propagate a message to a connection that actually called propagate, it deadlocks because the it tries to send to that connection's send channel in the same goroutine. This is an attempt at a fix.
* Add phony all target for the handbooksRunxi Yu2024-09-271-0/+3
|
* Add an admin handbook stubRunxi Yu2024-09-273-0/+51
|
* Add a .gitignore to ignore generated .html files from TeXinfoRunxi Yu2024-09-271-0/+3
|
* courses.go, etc: Make courses a map instead of a sliceRunxi Yu2024-09-261-4/+0
| | | | | We need to refer to courses by their ID, and a map makes significantly more sense than a slice.
* *.go, cca.scfg.example: Expose performance optionsRunxi Yu2024-09-261-0/+20
|
* cca.scfg.example -> docs/Runxi Yu2024-09-241-0/+65
|
* docs, scripts, sql: Sort support files into subdirectoriesRunxi Yu2024-09-241-0/+26