Commit Graph
80 Commits
Author SHA1 Message Date
plebeius 3799dccd88 perf: prevent unnecessary re-renders from RPC client state changes 2026-01-14 15:05:45 +01:00
plebeius eb8e226ff1 perf: isolate IPFS state updates in board and catalog views to prevent excessive re-renders 2026-01-13 17:21:30 +01:00
plebeius c0c6e9ee31 perf(feeds): use hasMore instead of length check for conditional virtualization 2026-01-13 17:01:51 +01:00
plebeius 341e72ad5b fix(error-display): add delay to prevent false positive error displays 2025-12-31 16:00:58 +01:00
plebeius 652385561b feat(all-feed): add NSFW/SFW filter 2025-12-29 16:18:59 +01:00
plebeius 5aa1eaf13a fix(views): use directory codes in document titles and fix order 2025-12-28 23:13:25 +01:00
plebeius 80e7af81f3 refactor: remove hide gore boards and hide adult boards functionality 2025-12-15 17:04:26 +01:00
plebeius 198b6135da fix: show cached feed time filter in UI 2025-12-08 23:52:13 +01:00
plebeius 1a6ac4a2be fix: use stable time filter for virtuoso state key in cached feeds 2025-12-08 23:32:42 +01:00
plebeius 896ca4ad13 perf: implement LRU-cached persistent feed mounting to eliminate Virtuoso flash
Keep Board/Catalog feeds mounted outside React Router's control to prevent
Virtuoso from remounting when navigating to/from post pages. The feed is
hidden via CSS when viewing posts and shown again when returning, eliminating
the visible flash/displacement that occurred during scroll restoration.

- Add FeedCacheContainer to manage LRU cache of 2 feeds
- Modify Board/Catalog to accept cache props and visibility state
- Add route utilities for feed/post route detection
2025-12-08 22:40:16 +01:00
plebeius 9e13292ae3 fix: reset board scroll on link nav
Force scroll-to-top on link navigation while keeping POP restores, and scope Virtuoso keys per pathname to avoid cross-board scroll leakage.
2025-12-08 13:03:25 +01:00
plebeius ad1a017c57 missing color 2025-11-13 21:15:47 +01:00
plebeius 12101fe75e feat: add Multiboards category with /subs/ and /all/ 2025-11-12 16:35:38 +01:00
plebeius e3e25995d6 feat(board): add more_threads_last_year suggestion 2025-11-08 15:56:32 +01:00
plebeius d78fed1fda refactor(routing): migrate to directory-based board routing 2025-11-07 12:50:58 +01:00
plebeius bae6faa929 feat: implement 5chan-specific default board list 2025-11-03 22:06:18 +01:00
plebeius 1360dd8348 feat: rename plebchan to 5chan 2025-10-17 23:30:35 +02:00
plebeius 760e8d900e fix: remove unused variables from catalog and post views
- catalog.tsx: Remove unused 'coloredFeed' variable assignment in useMemo
- post.tsx: Remove unused 'useState' import

The useMemo in catalog.tsx still executes its side effects (applying filter
colors to the store) without needing to assign the return value.
2025-10-16 23:16:38 +02:00
plebeius b10ada55e7 perf: eliminate redundant derived state in board and post views 2025-10-16 23:13:18 +02:00
Tom (plebeius.eth) 339a9bc18a fix(mod multisub): mod page was missing post form 2025-06-04 16:37:17 +02:00
Tom (plebeius.eth) 22b828b3e8 feat(catalog filters): add color highlighting of threads matching pattern 2025-03-07 17:43:09 +01:00
Tom (plebeius.eth) d7a9c1640b feat(catalog filter): add filtering with complex patterns, including regex, help modal 2025-03-06 23:48:17 +01:00
Tom (plebeius.eth) ad60404792 fix catalog filter counts persistence between subplebbits and page refreshes 2025-03-06 18:07:44 +01:00
Tom (plebeius.eth) a8f7de7d85 feat(catalog): add search 2025-03-06 16:27:09 +01:00
Tom (plebeius.eth) cf183393a4 update board buttons UI, add catalog search UI 2025-03-06 15:44:26 +01:00
Tom (plebeius.eth) b127876ce4 feat(catalog): add catalog filters 2025-03-06 00:07:08 +01:00
Tom (plebeius.eth) 64c857fb9d chore(package.json): upgrade plebbit-react-hooks 2025-03-05 22:05:20 +01:00
Tom (plebeius.eth) b686ca3dd0 refactor settingsmodal to render it globally 2025-03-05 12:06:27 +01:00
Tom (plebeius.eth) 797a1f23c6 perf(feed): optimize posts rendering via props refactoring, memoizations 2025-03-03 23:47:33 +01:00
Tom (plebeius.eth) b85568654e centralize state hooks 2025-02-28 23:36:33 +01:00
Tom (plebeius.eth) 588d9fbdb0 fix(feed): "no posts" could appear in an empty board after the user published to it 2025-02-23 16:30:13 +01:00
Tom (plebeius.eth) 628115f198 feat(catalog): show posts published by account instantly in feed 2025-02-23 16:28:30 +01:00
Tom (plebeius.eth) 06988e354a use backend states by default 2025-02-20 15:34:30 +01:00
Tom (plebeius.eth) 882703b00d feat: auto subscribe new accounts to specific default subplebbits 2025-02-20 15:15:19 +01:00
Tom (plebeius.eth) 68a2d301f1 update loading strings 2025-02-20 13:54:55 +01:00
Tom (plebeius.eth) 273f62f285 add translation 2025-02-11 12:27:03 +01:00
Tom (plebeius.eth) 53638b023d update translations 2024-12-21 00:55:18 +01:00
Tom (plebeius.eth) 6692c65c4b add route validation checks 2024-10-29 17:40:09 +01:00
Tom (plebeius.eth) 0705bd9dbd fix: color missing, translation missing 2024-10-15 13:10:47 +02:00
Tom (plebeius.eth) ba9496ca42 feat(catalog): add warning to switch filter if there aren't enough posts in p/all and p/subscriptions 2024-10-12 15:35:27 +02:00
Tom (plebeius.eth) 664a33482f move filters to interface settings, enable for all feeds 2024-09-12 21:22:22 +02:00
Tom (plebeius.eth) d45cc8b126 use zustand memoization for catalog filters, it fixes the useFeed bug with performance 2024-09-10 18:20:24 +02:00
Tom (plebeius.eth) 6e472b2b17 perf(catalog): optimize filtered feed 2024-09-08 14:47:52 +02:00
Tom (plebeius.eth) c70fa57cba add catalog filters 2024-09-05 15:36:00 +02:00
Tom (plebeius.eth) da33358ca4 feat(catalog): add text pattern filters 2024-09-05 14:46:44 +02:00
Tom (plebeius.eth) 8598d1056e feat(feed): show account comments instantly in the feed once published, instead of waiting for the feed to update 2024-08-03 13:21:09 +02:00
Tom (plebeius.eth) 9241daed34 update document title 2024-06-28 17:14:57 +02:00
Tom (plebeius.eth) d3c29fd6ec feat(catalog): add 'you have blocked this board' message and unblock button 2024-06-27 14:18:10 +02:00
Tom (plebeius.eth) 9495e98183 feat(catalog): display error from subplebbit in feed (such as, 'address is incorrect') 2024-06-27 14:13:46 +02:00
Tom (plebeius.eth) 092c25bb0c fix eslint 2024-06-20 15:00:31 +02:00