Commit Graph
210 Commits
Author SHA1 Message Date
Tommaso Casaburi 3a5e5e58e4 Merge branch 'master' of github.com:bitsocialnet/5chan 2026-05-15 18:40:31 +07:00
Tommaso CasaburiandGitHub a6f6e42bd7 fix(mod queue): stop resurfacing stale pending history (#1130) 2026-05-15 18:35:41 +07:00
Tommaso Casaburi 69008dfd81 fix(favicon): add touch and search icons 2026-05-15 17:59:32 +07:00
Tommaso Casaburi 8217bad735 fix(catalog): hide threads across board catalogs 2026-05-14 16:59:55 +07:00
Tommaso Casaburi a4e058c6ac fix(mod queue): keep error details out of visible text 2026-05-13 17:54:58 +07:00
Tommaso Casaburi 9f6c073264 feat(author badges): add 5chan developer badges 2026-05-13 17:29:33 +07:00
Tommaso Casaburi a97b891c5f fix(p2p): force browser mode on p2p subdomains 2026-05-11 17:18:16 +07:00
Tommaso CasaburiandGitHub 556973a445 Improve React Doctor score and badge (#1127)
* fix(react doctor): improve quality score and badge

* fix(react doctor): address review feedback

* fix(review): address final bot feedback
2026-05-10 18:25:13 +07:00
Tommaso Casaburi 0c0fd0b018 Merge branch 'codex/feature/p2p-stats-settings'
# Conflicts:
#	package.json
#	public/translations/ar/default.json
#	public/translations/bn/default.json
#	public/translations/cs/default.json
#	public/translations/da/default.json
#	public/translations/de/default.json
#	public/translations/el/default.json
#	public/translations/en/default.json
#	public/translations/es/default.json
#	public/translations/fa/default.json
#	public/translations/fi/default.json
#	public/translations/fil/default.json
#	public/translations/fr/default.json
#	public/translations/he/default.json
#	public/translations/hi/default.json
#	public/translations/hu/default.json
#	public/translations/id/default.json
#	public/translations/it/default.json
#	public/translations/ja/default.json
#	public/translations/ko/default.json
#	public/translations/mr/default.json
#	public/translations/nl/default.json
#	public/translations/no/default.json
#	public/translations/pl/default.json
#	public/translations/pt/default.json
#	public/translations/ro/default.json
#	public/translations/ru/default.json
#	public/translations/sq/default.json
#	public/translations/sv/default.json
#	public/translations/te/default.json
#	public/translations/th/default.json
#	public/translations/tr/default.json
#	public/translations/uk/default.json
#	public/translations/ur/default.json
#	public/translations/vi/default.json
#	public/translations/zh/default.json
#	src/components/settings-modal/__tests__/settings-modal.test.tsx
#	src/components/settings-modal/settings-modal.tsx
#	yarn.lock
2026-05-07 16:59:44 +07:00
Tommaso Casaburi 14a4790c8b feat(p2p settings): add browser p2p stats 2026-05-07 16:56:29 +07:00
Tommaso CasaburiandGitHub aaa0d88d6a fix: remove Android self-install updater (#1125)
* fix: remove Android self-install updater

* fix: open Android updates in native browser
2026-05-06 17:56:00 +07:00
Tommaso Casaburi 36bb1f726d fix(media): classify mp4-formatted gif previews as video 2026-05-02 23:42:20 +07:00
Tommaso Casaburi 3de85520bd fix(android upload): handle transient imgur errors 2026-05-01 22:54:05 +07:00
Tommaso Casaburi 9f388693eb fix(media hosting): restore android imgur support 2026-05-01 22:52:56 +07:00
Tommaso Casaburi 7e1513b688 feat(media hosting): disable unreachable providers 2026-05-01 22:52:55 +07:00
Tommaso Casaburi 78e5d58d08 feat(media hosting): add imgbb provider 2026-05-01 22:52:54 +07:00
Tommaso Casaburi bc213ecea2 fix(posting): clarify direct file links 2026-05-01 18:03:04 +07:00
Tommaso Casaburi fdbb650baa build(android): add fdroid distribution flavor 2026-04-30 18:58:50 +07:00
Tommaso Casaburi 28286f042b feat(p2p): enable browser pkc mode 2026-04-29 23:43:03 +07:00
Tommaso Casaburi fd26d6fd10 fix(catalog): preserve literal preview markers 2026-04-29 15:24:54 +07:00
Tommaso Casaburi 8ba1761d07 Merge branch 'codex/fix/mod-queue-post-order' 2026-04-27 15:13:38 +07:00
Tommaso Casaburi 463509e105 fix(replies): order approved queue replies 2026-04-27 15:12:52 +07:00
Tommaso Casaburi b0b5d45376 fix(feed): measure expanded reply media height 2026-04-27 13:30:38 +07:00
Tommaso CasaburiandGitHub 5dc5408a15 fix(codebase audit): preserve cleanup without regressions
Fix codebase audit regressions while preserving UI/UX behavior and adding review-driven hardening.
2026-04-24 15:48:07 +07:00
Tommaso Casaburi be13311834 fix(post card): clarify full error copying 2026-04-22 13:44:55 +07:00
Tommaso Casaburi fb19ee47c8 fix(publishing): normalize media links to https 2026-04-21 14:23:52 +07:00
Tommaso Casaburi c046c542b6 chore(deps): use published bitsocial react hooks 2026-04-20 22:11:36 +07:00
Tommaso Casaburi 81b9b2e807 fix(mod queue): preserve moderated queue history 2026-04-19 15:02:36 +07:00
Tommaso Casaburi f2ab25bd08 Merge branch 'codex/fix/mod-queue-approved-stuck'
# Conflicts:
#	package.json
#	yarn.lock
2026-04-19 13:46:29 +07:00
Tommaso Casaburi 8957f0439e fix(mod queue): keep approved items from sticking 2026-04-19 13:45:24 +07:00
Tommaso Casaburi 70d8c37222 feat(multiboards): expand time filters in place 2026-04-18 16:47:04 +07:00
Tommaso Casaburi df01cbfb49 merge: codex/fix/all-active-sort
# Conflicts:
#	public/translations/ar/default.json
#	public/translations/bn/default.json
#	public/translations/cs/default.json
#	public/translations/da/default.json
#	public/translations/de/default.json
#	public/translations/el/default.json
#	public/translations/en/default.json
#	public/translations/es/default.json
#	public/translations/fa/default.json
#	public/translations/fi/default.json
#	public/translations/fil/default.json
#	public/translations/fr/default.json
#	public/translations/he/default.json
#	public/translations/hi/default.json
#	public/translations/hu/default.json
#	public/translations/id/default.json
#	public/translations/it/default.json
#	public/translations/ja/default.json
#	public/translations/ko/default.json
#	public/translations/mr/default.json
#	public/translations/nl/default.json
#	public/translations/no/default.json
#	public/translations/pl/default.json
#	public/translations/pt/default.json
#	public/translations/ro/default.json
#	public/translations/ru/default.json
#	public/translations/sq/default.json
#	public/translations/sv/default.json
#	public/translations/te/default.json
#	public/translations/th/default.json
#	public/translations/tr/default.json
#	public/translations/uk/default.json
#	public/translations/ur/default.json
#	public/translations/vi/default.json
#	public/translations/zh/default.json
2026-04-18 16:01:00 +07:00
Tommaso Casaburi 49422591b8 fix(multiboards): restore stable time-filter suggestions 2026-04-18 15:58:27 +07:00
Tommaso Casaburi e161606147 perf(board): reduce desktop reverse-scroll jank on /all
Apply the asymmetric viewport buffer that already fixed mobile to desktop
multiboard feeds, and trim per-post mount cost so remounts during scroll-up
are cheaper:

- Desktop multiboard buffer goes from {600,600} to {1200,2400} (top-heavy),
  matching the mobile pattern from 99c0bbfac so items stay mounted longer
  when scrolling back up
- Cache feed post height estimate by CID in pretext-height-estimates so
  remounts skip the Pretext text-measurement work
- Memoize CommentMedia and switch its expanded-media-store reads to atomic
  selectors so it stops rerendering on unrelated store changes
- Memoize useCommentMediaInfo return so its reference is stable for memo
  comparators downstream
- Stop useFetchGifFirstFrame from forcing an extra render on every post
  mount by bailing out of equivalent setState calls
- Extract PendingModerationActions out of PostInfo so the two
  usePublishCommentModeration calls only run on the post page when
  mod-approval is actually pending, not on every feed item
2026-04-18 13:31:02 +07:00
Tommaso Casaburi ee7a5b5778 refactor(core): remove legacy plebbit terminology 2026-04-17 10:48:27 +07:00
Tommaso Casaburi e366dac25c fix(quotes): keep same-thread board previews local 2026-04-16 15:33:12 +07:00
Tommaso Casaburi 621235379c fix(feed): support strict community refs and safer domain publishing 2026-04-15 12:51:21 +07:00
Tommaso Casaburi f52545ec5b fix(directories): support multisub public keys 2026-04-13 14:54:23 +07:00
Tommaso Casaburi 19095aefa1 fix(hooks): handle pkc rebrand regressions 2026-04-11 16:57:00 +07:00
Tommaso CasaburiandGitHub 7ba28becc5 fix(catalog): stop virtualizing single-board catalogs (#1121)
* fix(catalog): defer pretext row work and trim multiboard append batches

* fix(catalog): stop virtualizing single-board catalogs
2026-04-03 15:08:22 +07:00
Tommaso CasaburiandGitHub 251e103db3 feat: finalize pretext feed sizing rollout (#1120)
* feat(feeds): add pretext-backed item sizing across board, catalog, and thread replies

* feat: finalize pretext feed sizing rollout

* fix(catalog): raise multiboard viewport buffer

* fix(board): preserve pretext query overrides
2026-04-02 19:45:55 +07:00
Tommaso Casaburi 0b844e6060 fix(favicon): harden sfw board icon swapping 2026-03-24 16:03:31 +07:00
Tommaso Casaburi 85e81aae2e fix(release): normalize asset names 2026-03-21 12:41:32 +08:00
Tommaso CasaburiandGitHub 5ecf8fbea8 feat: add in-app update flow and native e2e verification (#1112)
* feat(app-update): add in-app update flow with native e2e coverage

* docs(ai-workflow): infer closed-issue labels automatically

* fix(app-update): address native updater review findings

* fix(android): validate updater redirect hosts

* fix(electron): harden updater file names
2026-03-20 13:31:52 +08:00
Tommaso Casaburi a2286aa68e feat(app-update): add in-app update flow with native e2e coverage 2026-03-19 20:19:48 +08:00
Tommaso CasaburiandGitHub 8c37258f20 perf(replies): prefer cached board preview replies (#1101)
* perf(replies): prefer cached board preview replies

* fix(replies): address review feedback
2026-03-17 19:01:56 +08:00
Tommaso CasaburiandGitHub c9bd6258b2 fix(electron): restore packaged desktop app loading (#1095)
* fix(electron): restore packaged desktop app loading

Rebuild and verify Electron native modules before packaging and use the Vite base URL for packaged asset preloads.

* test(preload-utils): cover non-root base urls
2026-03-17 17:04:47 +08:00
Tommaso CasaburiandGitHub f812fe1d18 fix(pwa): make web updates deterministic (#1093)
* fix(pwa): make web updates deterministic

* fix(pwa): address review feedback
2026-03-17 16:20:13 +08:00
Tommaso CasaburiandGitHub f4ff7a23f7 feat(post-menu): add Report/Delete, reorder buttons, edit-only-for-mods, copy link 5chan.app (#1089)
* Update crypto address UI for .bso accounts

* feat(post-menu): add Report/Delete, reorder buttons, edit-only-for-mods, copy link 5chan.app

- Remove redundant reason field from edit menu (purged posts unreachable)
- Add Report post (placeholder alert) and Delete post (mobile) to post menus
- Reorder: Report, Hide, Delete, Copy x3, Image search
- Mobile edit checkbox only for mods; authors use Delete in post menu
- Copy direct link always uses 5chan.app domain
- 10px margin-top on mod menu save button

* fix(post-menu): add confirmation before delete post (Bugbot)
2026-03-16 17:54:17 +08:00
Tommaso Casaburi 6ecf3c40d3 fix(thread): count user id tooltips from thread data
Replace the DOM-based user ID tooltip count with a deduped per-thread author map in `getThreadPostCountsByAuthor()`. This keeps mounted preview copies from doubling ID totals on desktop and mobile thread views.
2026-03-16 15:13:04 +08:00