Commit graph

182 commits

Author SHA1 Message Date
oxalica
2b6fbe8794 Impl global room listing at /room 2024-09-03 04:08:34 -04:00
oxalica
a9d5eb9631 Explicitly allow Authorization header for CORS
It would not be included when just allow `*`.
2024-09-03 04:08:34 -04:00
oxalica
b05f704406 Rework /room/{}/item and pagination query
- Now it use `skipToken` and `top` to (mostly) align to OData spec.

- Its response type is now a normal struct and is documented.

- Room metadata is now excluded from room item query.
2024-09-03 04:08:34 -04:00
oxalica
77216aa0f8 Switch from event stream to WebSocket for events 2024-09-02 23:43:26 -04:00
oxalica
5fadffef4d Add GitHub CI and fix clippy warnings 2024-09-01 20:20:30 -04:00
oxalica
812d6c8602 Reduce deps rebuild for nix package 2024-09-01 20:02:36 -04:00
oxalica
263c0ca44b Fix typos 2024-08-31 22:39:09 -04:00
oxalica
42a778bef2 Impl default config for testing frontend 2024-08-31 20:04:37 -04:00
oxalica
5d15900436 Impl /room and /room/{ruuid}/admin endpoints 2024-08-31 18:33:23 -04:00
oxalica
e84b13c876 Package with nix and add systemd unit example 2024-08-31 16:38:43 -04:00
oxalica
a63d0df443 Use serde_jcs for RFC 8785 compliancy
This fixes serialization and reduces maintainance cost, but does more
data copying on serialization.
2024-08-31 15:24:07 -04:00
oxalica
6e7229e4ac Make more server constants configurable 2024-08-31 01:25:38 -04:00
oxalica
abdc32b51f Use configuration file to simplify CLI 2024-08-31 01:02:20 -04:00
oxalica
4937502d4c Define error response format and refactor error handling 2024-08-31 00:04:16 -04:00
oxalica
4ceffe3f31 Split out timestamp check and actually check nonce 2024-08-31 00:04:16 -04:00
oxalica
668b873b07 Reorganize workspace layout and split out blahd 2024-08-31 00:04:16 -04:00
oxalica
370722731b Simplify rich text on-wire format 2024-08-30 13:05:29 -04:00
oxalica
c492bb2537 Use rich text format for chat 2024-08-30 12:26:45 -04:00
oxalica
4d3371e485 Add draft API docs 2024-08-29 20:50:03 -04:00
oxalica
ff89d36ee5 Allow multiple initial members on room creation 2024-08-29 19:57:43 -04:00
oxalica
cf5d648315 Enforce sorted fields for signed payloads 2024-08-29 19:06:48 -04:00
oxalica
74bd0d42e2 Report 403 Forbidden for insufficient permission 2024-08-29 18:34:50 -04:00
oxalica
4456513139 Fix room permission check 2024-08-29 18:19:26 -04:00
oxalica
d672d067cd Ser/de bitflags as raw integers 2024-08-29 18:14:40 -04:00
oxalica
501b3e8db4 Impl private rooms 2024-08-29 17:14:56 -04:00
oxalica
9ced78d13d Apply more limits on incoming requests 2024-08-29 15:58:33 -04:00
oxalica
e71140e1fa Impl example frontend 2024-08-29 15:58:33 -04:00
oxalica
0c905f61cf Impl API to fetch events as-is 2024-08-27 01:29:48 -04:00
oxalica
482432758c Allow using userkey literal in ctl commands 2024-08-27 01:29:48 -04:00
oxalica
bcfac0c6b6 Allow CORS and fix event readiness notification 2024-08-27 01:29:48 -04:00
oxalica
593da123b6 Initial impl 2024-08-27 01:29:48 -04:00
oxalica
ae7a2b09fc Init 2024-08-25 14:26:34 -04:00