Commit Graph

117 Commits (4902f4d1fe015125bd0cd11e9fe6bed73181e6b7)

Author SHA1 Message Date
Jef Roosens 4902f4d1fe
feat(server): implement signup POST request and automatic sign-in 2025-08-28 13:09:24 +02:00
Jef Roosens 89f8b08b5e
feat: add signup GET route 2025-08-28 12:58:52 +02:00
Jef Roosens 97b30b1840
refactor: split web auth routes 2025-07-17 10:55:47 +02:00
Jef Roosens 5cd1f4f736
feat(gpodder): add signup link admin methods 2025-07-02 10:58:02 +02:00
Jef Roosens c48d2a78ca
feat(gpodder_sqlite): add signup links table 2025-07-02 10:23:22 +02:00
Jef Roosens 2514aa8413
feat(docs): start configuration page 2025-06-29 14:25:36 +02:00
Jef Roosens 6c8183c1e3
feat(web): add users active search 2025-06-29 11:09:54 +02:00
Jef Roosens fce301080c
feat(gpodder): add user filter for paginated users method 2025-06-29 11:07:45 +02:00
Jef Roosens c7c5cf889c
feat(otter): add command to create new users 2025-06-24 14:16:58 +02:00
Jef Roosens 30609b1cef
feat(web): add users page 2025-06-24 13:49:37 +02:00
Jef Roosens 4854c84601
feat(gpodder): add admin paginated users method 2025-06-24 13:38:12 +02:00
Jef Roosens 2524eb5807
refactor(gpodder): split repository for admin view 2025-06-24 13:30:17 +02:00
Jef Roosens 669aa475ca
feat(gpodder_sqlite): add user admin field 2025-06-24 13:08:44 +02:00
Jef Roosens 346c27fc3f
refactor(gpodder): add authenticated view of repository 2025-06-20 10:43:46 +02:00
Jef Roosens 0e91eef0e8
docs: write small homepage 2025-06-20 10:03:49 +02:00
Jef Roosens 4735bc3f13
chore: add docs publish command 2025-06-19 14:53:40 +02:00
Jef Roosens 5e653407f2
chore(docs): set up initial Hugo scaffolding 2025-06-18 12:17:49 +02:00
Jef Roosens dd418c872a
fix(server): serve Content-Type headers with static files 2025-06-17 15:02:46 +02:00
Jef Roosens 32a4a88548
chore: bump versions 2025-06-17 14:07:24 +02:00
Jef Roosens b16c9a0404
fix(gpodder_sqlite): correct imports in tests 2025-06-17 14:01:11 +02:00
Jef Roosens 7887477ed1
feat(web): don't show remove button for current session 2025-06-17 13:51:13 +02:00
Jef Roosens 21b3450aeb
feat(server): add working remove buttons to session page 2025-06-17 13:33:16 +02:00
Jef Roosens a57e301d16
feat(server): implement infinite scroll table for sessions page
A query type is introduced along with the ToQuery trait to convert types
into queries. A query can then be properly formatted as a URL query
parameter string, allowing us to pass arbitrary safely typed query
parameters to the Tera templates. This is then used by HTMX to request
the next page of content once the last row of a table is visible.
2025-06-17 11:09:18 +02:00
Jef Roosens 68b2b1beb4
chore: format code 2025-06-17 09:53:50 +02:00
Jef Roosens e8e0c94937
feat(server): partial implementation of session page pagination 2025-06-17 09:52:47 +02:00
Jef Roosens 32d70daab2
feat(otter): added sessions page template 2025-06-15 15:30:02 +02:00
Jef Roosens 7de4897364
refactor(gpodder): rename store trait 2025-06-15 14:31:36 +02:00
Jef Roosens fc46c4874a
fix(web): refresh navbar on login and logout 2025-06-08 12:50:23 +02:00
Jef Roosens 957387bed7
feat(web): add logout button 2025-06-07 10:20:49 +02:00
Jef Roosens b04955d70e
chore: update changelog 2025-06-06 13:53:18 +02:00
Jef Roosens 82d914ebbb
chore: fix static release binaries using zigbuild 2025-06-06 13:48:45 +02:00
Jef Roosens 275d249320
chore: update to edition 2024; update packages; rename some stuff 2025-06-06 12:50:30 +02:00
Jef Roosens 82e52bc8f9
feat(server): add basic cli error handling to avoid unwraps 2025-04-16 11:03:36 +02:00
Jef Roosens be04d0c7fe
feat(server): add unix socket support 2025-04-16 10:37:58 +02:00
Jef Roosens dca4d2d1ec
refactor(server): lay groundwork for unix socket configuration 2025-04-16 10:37:58 +02:00
Jef Roosens 7abce21aee
refactor: move server to own package; set up workspace dependencies 2025-04-05 10:19:19 +02:00
Jef Roosens 279983c64c
chore: remove all compiler and clippy warnings 2025-04-05 09:23:52 +02:00
Jef Roosens f3ede6f9a6
test(gpodder_sqlite): update tests so they work again 2025-04-05 09:06:05 +02:00
Jef Roosens 974ca80298
chore: listen to clippy 2025-03-31 20:13:18 +02:00
Jef Roosens 823133c034
feat(gpodder): add paginated sessions function 2025-03-31 14:29:58 +02:00
Jef Roosens bf132f93dc
feat: move web routes to / 2025-03-30 16:58:01 +02:00
Jef Roosens 82ccad196c
feat: add login page 2025-03-30 10:37:21 +02:00
Jef Roosens 3071685950
feat: add separate auth middleware for web routes 2025-03-30 09:50:55 +02:00
Jef Roosens b3e49be299
feat: bootstrap htmx templating system 2025-03-29 21:26:06 +01:00
Jef Roosens ad015b47e4
feat: embed htmx and picocss as static routes 2025-03-29 18:02:45 +01:00
Jef Roosens 2c44f788d9
feat: store user agent with sessions 2025-03-29 15:37:50 +01:00
Jef Roosens 5112a6ce35
feat(otter): add log level cli config 2025-03-29 14:43:35 +01:00
Jef Roosens 5f57d85584
feat(gpodder_sqlite): switch to on-disk sqlite for tests and benches 2025-03-20 19:19:54 +01:00
Jef Roosens d329a0e61c
feat(gpodder_sqlite): added benchmarking support 2025-03-19 21:52:17 +01:00
Jef Roosens 73988d6264
test(gpodder_sqlite): start device tests 2025-03-19 15:00:00 +01:00