Commit Graph
110 Commits
Author SHA1 Message Date
Tommaso Casaburi 621235379c fix(feed): support strict community refs and safer domain publishing 2026-04-15 12:51:21 +07:00
Tommaso Casaburi 74f8fae496 fix(post): load capcode icons from public asset root 2026-04-09 16:30:21 +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 CasaburiandGitHub 816281c607 fix(thread-page): make thread auto updates opt-in (#1115)
* fix(thread-page): make thread auto updates opt-in

Wire `Auto` and `Update` to the same manual refresh path and cover the thread flow with an e2e harness.

* fix(thread-page): address PR review findings
2026-03-20 16:48:57 +08:00
Tommaso CasaburiandGitHub aedee9fb83 feat(archive): implement comment.archived and add archive page (#1074)
* feat(archive): implement comment.archived and add archive page

Add isCommentArchived() utility, /board/:boardIdentifier/archive route,
archive view with filtered feed, and UI integration (board buttons, edit
menu, catalog row, post). Archived indicator on catalog and posts.

* fix(archive): address review feedback from Bugbot and CodeRabbit

Add missing i18n keys (archived, thread_archived, view, loading_archive),
add /archive/settings route, replace hardcoded English in archive.tsx, and
fix mobile test state.
2026-03-13 16:06:36 +08:00
Tommaso CasaburiandGitHub d7703953fb refactor: migrate 5chan to the community hooks API (#1073)
* refactor(community-api): migrate 5chan to community hooks

* fix(review): address PR feedback

* fix(review): preserve legacy board context fallbacks

* fix(review): address latest bot feedback

* fix(review): use communityAddress in edit menu privileges
2026-03-13 13:25:10 +08:00
Tommaso CasaburiandGitHub 0aafb7f538 fix(post): move failed publish notice into comment body (#1066)
Align the failed notice and delete action with the existing post card and footer controls.
2026-03-12 17:56:52 +08:00
Tommaso CasaburiandGitHub 6c03253cb4 fix(post): stop thread navigation from forcing OP alignment (#1052)
* Update README.md

* fix(post): stop thread navigation from forcing OP alignment

Route-driven thread opens now use the normal top-of-page behavior, while explicit OP permalink intents carry a scrollThreadContainerCid state and resolve against the visible thread container only. The old spacer injection path is removed.

* fix(post): address PR review follow-ups
2026-03-11 18:43:36 +08:00
Tommaso CasaburiandGitHub 6ed3708322 fix(post): align op permalinks to the outer thread container (#1050)
* fix(post): align op permalinks to the outer thread container

* perf(scroll-to-reply): stop interval when max attempts/duration reached
2026-03-10 18:08:20 +08:00
plebeius 417482060d refactor: org name changed from bitsocialhq to bitsocialnet 2026-03-09 17:01:35 +08:00
plebeius 29b6c85541 test: cover board actions, pagination, and thread routes
Core browsing flows around board controls, pagination, and thread pages were still largely unmeasured in the honest whole-repo report. That left route mismatches, cached-thread hydration, board action wiring, and mod-queue control regressions underprotected in CI.
2026-03-08 14:37:35 +08:00
plebeius 8414fac15c style(mod queue): flatten feed items, add View Thread button for replies 2026-03-07 20:33:08 +08:00
plebeius 1b9f69839d fix(routing): canonicalize board aliases in thread routes 2026-03-07 13:48:18 +08:00
plebeius ae744d0f78 feat(posts): add purge UI feedback for mods
Show Purged author/ID, red content message, and file-deleted media when
post.commentModeration.purged is true. Mirrors removal UI pattern.
2026-03-06 21:44:33 +08:00
plebeius 65731ceb3a fix(markdown): handle unavailable reply quote links 2026-03-06 14:55:40 +08:00
plebeius 59851a4b01 fix(publishing): abandon challenge close and clean failed local posts 2026-03-05 19:30:50 +08:00
plebeius 4508f589dd chore(deps): migrate from pkc-react-hooks to bitsocial-react-hooks 2026-03-05 17:14:23 +08:00
plebeius 84e6057bb8 feat(post): add mobile footer to thread view
Post a Reply, Return/Catalog/Top, Update/Auto buttons, stats row (Replies/Images/Page), and license footer links. Matches mobile board view styling.
2026-03-03 15:07:14 +08:00
plebeius e556a9e662 chore(deps): replace plebbit/plebbit-react-hooks with bitsocialhq/pkc-react-hooks
bitsocialhq/pkc-react-hooks is a fork of plebbit-react-hooks that we're maintaining temporarily as an attempt to modernize the original repository using AI tools, possibly merging changes back into plebbit-react-hooks, which should also be rebranded to pkc-react-hooks eventually, under the org pkcprotocol.
2026-02-28 15:02:56 +08:00
plebeius 0e1421fff7 fix styling 2026-02-24 16:36:13 +08:00
plebeius 925297bc3a refactor footer 2026-02-23 20:50:30 +08:00
plebeius 609436a0fb fix(post): use feed cache fallback for instant post content on catalog navigation 2026-02-23 19:43:49 +08:00
plebeius f86906ae15 fix(post): add modQueueError, isPublishing, onApprove, onReject to memo comparator 2026-02-23 19:01:19 +08:00
plebeius 91667966f8 perf(feeds): defer useReplies, Virtuoso for all paths, CLS fixes, memo
Defer useReplies to hover-only in CatalogPost. Memo CatalogRow and Post. Remove useWindowWidth and autoUpdate from CatalogPost. Replace display:none with opacity for images. Add width/height to img tags in catalog-row and comment-media. Use Virtuoso for all rendering paths (infinite, finite, pagination). Optimize filteredComments with Set lookup. Add Vite manual chunks for markdown, virtuoso, floating-ui.
2026-02-23 18:51:42 +08:00
plebeius 4433834c1c refactor(ui): rename topbar to boardsbar and add desktop footer for board, thread, and catalog 2026-02-23 16:47:51 +08:00
plebeius 981940731b refactor: remove NFT avatar functionality
Removes avatar-settings component, avatar-visibility store, and all
avatar rendering from posts. Strips avatar from account JSON, renames
NFT gateway label to media IPFS gateway, removes Polygon RPC and
hide-avatars toggle. Deletes 6 avatar-related translation keys.
2026-02-19 17:40:10 +08:00
plebeius dedf18e199 perf(replies): progressive render, 500 replies/page, content-visibility
Set repliesPerPage to 500 to avoid Virtuoso pagination sort drift. Add useProgressiveRender with startTransition batching and CSS content-visibility for long reply lists.
2026-02-15 18:46:49 +08:00
plebeius 25375612a9 fix(post): show OP backlinks in board feed cards 2026-02-11 19:06:29 +08:00
plebeius d862550132 fix(post): render OP backlinks from replies quoting OP 2026-02-11 18:52:10 +08:00
plebeius 716c782d1a fix: scroll OP quote to thread card on same-route click 2026-02-11 18:43:39 +08:00
plebeius c7c8c46557 feat(post): add backlinks for quotedCids 2026-02-09 19:56:07 +08:00
plebeius 63ee8aa168 refactor: rebrand default subplebbits to 5chan directories 2026-01-28 16:51:27 +08:00
plebeius 14e8c92fa0 feat(mod-queue): add view mode selection and integrate with post components 2026-01-25 16:29:15 +08:00
plebeius b8e3a0202a fix(replies): reply permalink didn't auto-scroll to deep replies 2026-01-19 16:02:45 +01:00
plebeius 5e1114e087 fix(post): OP thumbnail overlaps with replies when image has unusual dimensions 2026-01-18 18:41:05 +01:00
plebeius 122b17790a fix(views): display useSubplebbit and useComment errors in board, post, and mod-queue views 2026-01-12 17:59:03 +01:00
plebeius a959f14290 fix(edit-menu): use correct banExpiresAt path in commentModeration.author 2026-01-09 16:43:21 +01:00
plebeius 402313107c feat(post): add pending approval label 2026-01-08 17:09:35 +01:00
plebeius 9fe31c873b refactor: clean up imports and move inline component definitions after imports 2026-01-03 16:17:48 +01:00
plebeius fa32833b2a perf(components): prevent rerenders from updatingState
Use Zustand selectors with custom equality functions to only subscribe to specific fields needed by components, avoiding unnecessary rerenders when transient state like updatingState changes. Extract offline indicators into separate components to isolate rerenders. Memoize card components in catalog and popular threads views.
2026-01-02 16:42:16 +01:00
plebeius 6724f91c79 fix(post): redirect to 404 when thread URL specifies wrong board 2025-12-31 20:14:51 +01:00
plebeius 5aa1eaf13a fix(views): use directory codes in document titles and fix order 2025-12-28 23:13:25 +01:00
plebeius c0e6f5fe5c unused var 2025-12-28 22:18:57 +01:00
plebeius c094786f97 pass threadNumber to reply modal store 2025-12-28 22:16:38 +01:00
plebeius 882b7b4a99 feat: add infinite scroll for replies 2025-12-27 18:07:23 +01:00
plebeius 34bebda4f7 fix eslint warnings 2025-12-23 19:21:48 +01:00
plebeius 5e79ce91b6 refactor: remove description and rules mock posts
Removed all fake posts for subplebbit description and rules, including dedicated routes, components, and all related logic across the codebase. Board admins can now pin regular posts if they want to provide a description.
2025-12-23 19:14:25 +01:00
plebeius 5de2587cf4 feat(post): add moderator and administrator role indicators 2025-11-28 13:29:31 +01:00
plebeius d78fed1fda refactor(routing): migrate to directory-based board routing 2025-11-07 12:50:58 +01:00
plebeius 1360dd8348 feat: rename plebchan to 5chan 2025-10-17 23:30:35 +02:00