evan
69048954e4
fix(opds): add inline search template for simpler clients
...
continuous-integration/drone/push Build is passing
Some OPDS clients (e.g. crosspoint-reader) don't resolve the
OpenSearch descriptor and only detect search via a rel="search"
link whose href contains {searchTerms} directly. Add such a link
alongside the existing descriptor so these clients can search.
2026-07-18 21:19:20 -04:00
evan
ff44db311d
chore: better tags
continuous-integration/drone/push Build is passing
2026-07-03 13:59:22 -04:00
evan
0704b5d650
fix: book search
continuous-integration/drone/push Build is passing
2026-03-22 17:21:16 -04:00
evan
4c1789fc16
fix: doc parsing
continuous-integration/drone Build is passing
2026-01-24 13:33:09 -05:00
evan
082f7e926c
fix: fix annas archive url
2026-01-24 13:33:01 -05:00
evan
6031cf06d4
chore: update nix flake
2026-01-24 13:25:52 -05:00
evan
8fd2aeb6a2
chore: add various tests
2025-12-13 14:04:32 -05:00
evan
bc076a4f44
fix: metadata count test
continuous-integration/drone/push Build is passing
2025-11-20 17:02:10 -05:00
evan
f9f23f2d3f
fix: word count calculation
continuous-integration/drone/push Build is failing
2025-11-12 19:13:04 -05:00
evan
3cff965393
fix: annas archive parsing
continuous-integration/drone/push Build is passing
2025-08-17 17:04:46 -04:00
evan
7937890acd
fix: docker build
continuous-integration/drone/push Build is passing
2025-08-10 13:18:37 -04:00
evan
938dd69e5e
chore(db): use context & add db helper
2025-08-10 13:17:51 -04:00
evan
7c92c346fa
feat(utils): add pkg utils
2025-08-10 13:17:44 -04:00
evan
456b6e457c
chore: update go & flake
continuous-integration/drone/push Build is failing
2025-08-07 17:42:41 -04:00
evan
d304421798
hm
continuous-integration/drone/push Build is passing
2025-07-05 18:17:47 -04:00
evan
0fe52bc541
fix: search parsing
continuous-integration/drone/push Build is failing
2025-07-05 16:46:06 -04:00
evan
49f3d53170
chore: nix flake
continuous-integration/drone/push Build is failing
2025-07-05 15:21:44 -04:00
evan
57f81e5dd7
fix(api): ko json content type
continuous-integration/drone/push Build is passing
2025-05-13 12:37:45 -04:00
evan
162adfbe16
feat: basic toc
continuous-integration/drone/push Build is passing
2025-04-26 10:19:00 -04:00
evan
e2cfdb3a0c
update cicd
continuous-integration/drone/push Build is passing
2025-03-14 08:36:01 -04:00
evan
acf4119d9a
fix(sql): document user stats
continuous-integration/drone/push Build is passing
continuous-integration/drone Build was killed
2025-01-25 15:03:07 -05:00
evan
f6dd8cee50
fix(streaks): incorrect calculation logic
continuous-integration/drone/push Build is passing
2024-12-02 19:27:50 -05:00
evan
a981d98ba5
feat(admin): basic log filter
continuous-integration/drone/push Build is passing
2024-12-01 19:48:51 -05:00
evan
a193f97d29
perf(db): incremental user streaks cache
continuous-integration/drone/push Build is passing
2024-12-01 18:58:46 -05:00
evan
841b29c425
improve(search): progress & retries
continuous-integration/drone/push Build is passing
2024-12-01 17:04:41 -05:00
evan
3d61d0f5ef
perf(db): incremental document stats cache
continuous-integration/drone/push Build is passing
2024-12-01 12:48:25 -05:00
evan
5e388730a5
formatting: lua plugin
2024-12-01 11:28:33 -05:00
evan
0a1dfeab65
fix(search): set user agent for dl
continuous-integration/drone/push Build is passing
2024-08-13 22:32:16 -04:00
evan
d4c8e4d2da
fix(search): broken parser & download source
continuous-integration/drone/push Build is passing
2024-08-11 11:02:46 -04:00
evan
bbd3a00102
tests(db): additional document tests
2024-08-10 09:26:30 -04:00
evan
3a633235ea
tests(db): add additional tests & comments
continuous-integration/drone/push Build is passing
2024-06-16 20:00:41 -04:00
evan
9809a09d2e
chore(prettier): format templates
continuous-integration/drone/push Build is passing
2024-06-16 18:04:43 -04:00
evan
f37bff365f
chore(templates): prettier plugin & tables
2024-06-16 17:08:10 -04:00
evan
77527bfb05
chore(templates): add better template loading
continuous-integration/drone/push Build is passing
2024-05-27 20:20:47 -04:00
evan
8de6fed5df
fix(ui): document add styling
2024-05-27 14:01:10 -04:00
evan
f9277d3b32
feat(admin): handle user deletion
continuous-integration/drone/push Build is passing
2024-05-27 13:32:40 -04:00
evan
db9629a618
chore(lint): address linter
continuous-integration/drone/push Build is passing
2024-05-26 19:56:59 -04:00
evan
546600db93
feat(admin): handle user demotion & promotion
continuous-integration/drone/push Build is passing
2024-05-25 21:12:07 -04:00
evan
7c6acad689
chore(templates): component-ize things
continuous-integration/drone/push Build is passing
2024-05-25 20:04:26 -04:00
evan
5482899075
feat(admin): adding user & importing
2024-05-25 20:02:57 -04:00
evan
5a64ff7029
fix(tz): incorrect local_time function use
continuous-integration/drone/push Build is passing
2024-04-06 20:56:30 -04:00
evan
a7ecb1a6f8
fix(tz): add tzdata to docker image
continuous-integration/drone/push Build is passing
2024-04-06 09:39:04 -04:00
evan
2d206826d6
add(admin): add user
continuous-integration/drone/push Build is passing
2024-03-11 22:20:41 -07:00
evan
f1414e3e4e
fix(timezones): move from utc offsets to timezones
...
This fixed various issues related to calculating streaks, etc. Now we
appropriately handle time as it was, vs as it is relative to an offset.
2024-03-11 22:20:21 -07:00
evan
8e81acd381
fix(users): update user stomped on admin
continuous-integration/drone/push Build is passing
2024-03-10 21:48:43 -04:00
evan
6c6a6dd329
feat(api): first user is admin
continuous-integration/drone/push Build is passing
2024-02-25 19:40:36 -05:00
evan
c4602c8c3b
chore(db): update sqlc
2024-02-25 19:01:34 -05:00
evan
fe81b57a34
tests(db): migrate to testify
continuous-integration/drone/push Build is passing
2024-02-25 15:13:53 -05:00
evan
a69b7452ce
chore(dev): dynamically load templates during dev
continuous-integration/drone/push Build is passing
2024-02-25 14:54:50 -05:00
evan
75ed394f8d
tests(all): improve tests, refactor(api): saving books
continuous-integration/drone/push Build is passing
2024-02-24 20:45:26 -05:00