boojack
5f194da7d3
chore(main): release 0.29.1 ( #5985 )
2026-06-05 08:06:30 +08:00
boojack
bb76949fc0
chore(server): centralize CORS policy
2026-06-04 22:37:41 +08:00
boojack
d69f1aab27
chore: tweak demo data
2026-06-03 00:21:45 +08:00
boojack
0e2a9a9c0c
fix(web): render video attachment posters on mobile
2026-06-02 23:08:16 +08:00
goingforstudying-ctrl
e8d32e87d1
fix: support <meta name=description> in link previews ( #6000 )
...
Co-authored-by: goingforstudying-ctrl <goingforstudying-ctrl@users.noreply.github.com>
2026-06-02 23:02:21 +08:00
boojack
0d31e3c2fb
chore(media): add zoom controls to preview dialog
2026-06-02 22:46:07 +08:00
boojack
fadc974364
docs: consolidate agent guidance
2026-05-31 18:53:37 +08:00
boojack
53abb8020e
refactor(frontend): remove react-use dependency
2026-05-31 18:32:17 +08:00
boojack
7c3bff4e98
fix(markdown): keep task item content in one grid column
2026-05-27 23:57:23 +08:00
boojack
f22c4bd5c2
chore(main): release 0.29.0 ( #5909 )
2026-05-27 20:48:29 +08:00
boojack
e0bb3a2e68
fix(editor): wrap selected text when pasting URL
2026-05-27 20:36:27 +08:00
boojack
648b3bd812
feat(memo): add task list quick actions ( #5983 )
2026-05-27 09:13:55 +08:00
boojack
e564c1a993
chore: update about page
2026-05-26 21:14:59 +08:00
boojack
e53b7d96e7
fix: delete user cleanup ( #5981 )
2026-05-25 22:10:29 +08:00
boojack
d1208a68e9
chore: update sponsors
2026-05-25 20:39:25 +09:00
boojack
3c3382a3c6
fix: avoid update event on memo create attachments ( #5961 )
2026-05-16 21:18:44 +08:00
boojack
858f7419b4
chore(seed): tweak seed data
2026-05-15 09:04:28 +08:00
boojack
63d6431d3e
chore: update images in README for dark mode
...
Signed-off-by: boojack <stevenlgtm@gmail.com>
2026-05-15 08:33:19 +08:00
Santosh Yadav
ddcaf5f25c
chore: fix coderabbit logo for light and dark theme ( #5954 )
2026-05-15 07:10:27 +08:00
boojack
ab2b08a21e
chore(seed): refresh demo memos and sponsor showcase
2026-05-15 00:23:11 +08:00
boojack
727480d49d
chore: revamp sponsors section in README
...
Updated the featured sponsors section to include a table layout and added new sponsor information.
Signed-off-by: boojack <stevenlgtm@gmail.com>
2026-05-14 23:56:57 +08:00
boojack
439ddaebf5
refactor(placeholder): extract tile sprite strip
2026-05-14 20:38:00 +08:00
boojack
411ba7b34c
feat(about): add about page with bird sprites
2026-05-14 20:30:37 +08:00
boojack
638e4f398e
feat(placeholder): add woodpecker tilemap
2026-05-14 09:35:11 +08:00
boojack
cf55f11072
feat(frontend): add pixel bird tilemaps
2026-05-14 00:03:21 +08:00
boojack
ca2bc4eb84
chore: render placeholder ascii pieces as components
2026-05-13 09:06:23 +08:00
boojack
aa5cb455e9
refactor(web): use / as the home route instead of /home
...
Home now lives at `/` directly. Unauthenticated visitors are sent to
`/explore` by the landing gate; old `/home` URLs redirect to `/` for
bookmark compatibility.
2026-05-12 23:17:46 +08:00
boojack
8c16ffa1f1
feat: add <Placeholder> component with ASCII bird states ( #5949 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 22:48:37 +08:00
Mayank Saini
f1e2a06b46
feat: add configurable --log-level flag ( #5934 )
...
Signed-off-by: boojack <stevenlgtm@gmail.com>
Co-authored-by: boojack <stevenlgtm@gmail.com>
2026-05-12 21:10:05 +08:00
boojack
a6024eebf1
perf: lazy load heavy first-screen dependencies ( #5947 )
2026-05-12 20:11:39 +08:00
boojack
7f1f53ffc4
fix(s3presign): preserve motion media payload
2026-05-09 22:51:56 +08:00
boojack
511c04bca2
chore: fix linter
2026-05-09 19:08:21 +08:00
boojack
f3f059b2f7
chore: add batch get settings API
2026-05-09 09:30:28 +08:00
boojack
21303e879d
fix(sse): stream initial response and refresh tokens
2026-05-09 09:15:50 +08:00
boojack
88ac3ec31e
feat(stats): support filtered all-user stats
...
- Add state and filter inputs to ListAllUserStats and reuse it for explore/archive sidebar stats.
- Reduce duplicate home initialization requests by sharing stats/settings data paths.
- Include memo paragraph regression coverage from the current working tree.
2026-05-09 09:11:04 +08:00
boojack
c49e75f91f
chore: avoid copying memo protobuf locks
2026-05-09 08:32:00 +08:00
boojack
078488ca81
fix(httpgetter): prevent DNS rebinding in link metadata fetch
2026-05-08 23:24:16 +08:00
boojack
4a1e401bd9
fix(memo): enforce parent visibility for comments
2026-05-08 23:22:56 +08:00
boojack
1df6479443
feat: add dedicated shortcuts page ( #5942 )
2026-05-08 23:06:12 +08:00
boojack
02096836c3
test: stabilize backend tests in CI
...
- Avoid requiring built frontend assets in cache header tests.
- Skip Testcontainers-backed store tests when Docker is unavailable.
2026-05-08 22:24:54 +08:00
boojack
b6f42cbe6b
chore: upgrade frontend to React 19 ( #5940 )
2026-05-08 22:10:48 +08:00
boojack
084f40bc9e
fix(frontend): correct static cache headers
2026-05-08 21:25:05 +08:00
boojack
4f0556e23f
chore: update sponsors
...
Added sponsorship information for InstaPods.
Signed-off-by: boojack <stevenlgtm@gmail.com>
2026-05-08 19:48:30 +08:00
hchengting
bcbcb03894
chore: update zh-Hant translation ( #5930 )
2026-05-04 20:18:00 +08:00
boojack
5ccba98adc
refactor: split STT and Audio-LLM into separate interfaces ( #5928 )
2026-05-03 00:21:58 +08:00
boojack
238f27dea1
feat(transcription): explicit STT settings with provider, model, prompt ( #5926 )
2026-05-02 19:35:18 +08:00
boojack
ef55013418
feat(memo): create memos on the selected calendar date ( #5925 )
2026-05-02 11:53:50 +08:00
Steven
d349fe4409
chore(theme): rebalance dark palette for readability
2026-05-02 09:11:46 +08:00
Steven
8daef1dc89
feat(activity-calendar): aggregate by ViewContext.timeBasis
...
Fixes the inconsistency where switching the memo list to update_time
left the activity heatmap aggregating by created_time. The heatmap
now follows the same time basis as the list it sits next to.
Backend
- UserStats gains memo_updated_timestamps (additive proto field, tag 8).
- GetUserStats and ListAllUserStats populate it alongside the existing
memo_created_timestamps. No DB migration; memo.updated_ts already
exists on every row.
Frontend
- useFilteredMemoStats reads timeBasis from ViewContext and selects
the matching timestamp source.
- StatisticsView and MonthNavigator forward timeBasis through to
MonthCalendar / YearCalendar so tooltip text matches the basis
("X memos in DATE" vs "X memos updated on DATE").
- Falls back to memoCreatedTimestamps when an old server returns an
empty memoUpdatedTimestamps array (detected by length divergence,
since protobuf-es deserializes missing repeated fields as []).
Tests
- Backend: TestGetUserStats_MemoUpdatedTimestamps verifies the field
is populated and reflects post-creation updates.
- Frontend: filtered-memo-stats covers create/update source switching
and the old-server fallback path; activity-calendar-tooltip covers
basis-aware label selection.
Spec and implementation plan committed under docs/superpowers/.
2026-05-02 00:26:53 +08:00
Steven
ea0625da45
feat(stats): admin instance resource statistics
2026-05-01 23:15:56 +08:00