Commit Graph
3905 Commits
Author SHA1 Message Date
Tommaso Casaburi 872116b132 fix(post-form): use native browser styling for flash tag select
Exclude the flash tag dropdown from themed post-form select styling so it
renders with the browser's default select appearance, matching the flag selector.
2026-05-31 16:27:02 +07:00
Tommaso Casaburi d3b5c40321 fix(comment-content): render reason text as comment content 2026-05-31 16:09:01 +07:00
Tommaso Casaburi d48cf10ee8 chore(release): v0.9.0 v0.9.0 2026-05-31 11:48:49 +07:00
Tommaso CasaburiandGitHub b442e05191 feat(rules page): rebuild directory rules page with vendored lists (#1147)
* feat(rules page): rebuild directory rules page with vendored lists

Mirror per-directory JSON from lists into src/data/5chan-directories, rework /rules layout to match 4chan (sidebar nav, category boxes, P2P load), and keep spoiler markup visible in rule text via parseSpoilers.

* fix(rules): keep directory defaults cache atomic

* fix(rules): derive defaults from shared directory refresh

* fix(rules): address directory refresh edge cases
2026-05-31 11:39:40 +07:00
Tommaso CasaburiandGitHub e4638ac8c7 fix(media): embed additional direct image formats (#1146) 2026-05-30 23:45:21 +07:00
Tommaso Casaburi f3494cc6bd merge: add playwright-cli low-spec throttling workflow 2026-05-30 17:29:35 +07:00
Tommaso Casaburi 711c97d834 chore(dev): add playwright-cli low-spec throttling workflow
Add pw-throttle.sh and a verification playbook so agents can stress-test UI
on throttled Chromium sessions before claiming perf-sensitive changes feel fast.
2026-05-30 17:29:30 +07:00
Tommaso Casaburi c5a759d34a Merge branch 'codex/chore/dev-overhead-preview' 2026-05-30 17:27:40 +07:00
Tommaso Casaburi 8cc9c401d3 chore(dev): add production preview launcher 2026-05-30 17:26:58 +07:00
Tommaso Casaburi 5412fd5277 merge: fix ROBOT9002 board name in directory list 2026-05-30 17:18:38 +07:00
Tommaso Casaburi d9c040d5f7 fix(boards): use ROBOT9002 board name in directory list
The home boards list still linked ROBOT9001 after the board was renamed.
2026-05-30 17:18:28 +07:00
Tommaso Casaburi f88b47cf34 merge: hide flash board footer 2026-05-30 16:45:28 +07:00
Tommaso Casaburi 08ebdce29c fix(board): hide feed footer on flash table 2026-05-30 16:44:55 +07:00
Tommaso Casaburi af20b1a452 chore(deps): update vulnerable resolutions 2026-05-30 16:23:47 +07:00
Tommaso Casaburi e8002727d4 docs(ai workflow): prefer local codegraph context 2026-05-30 16:23:38 +07:00
Tommaso Casaburi 05ecfb47a1 Update .gitignore 2026-05-30 16:12:41 +07:00
Tommaso Casaburi 5541c4f047 Merge branch 'master' of github.com:bitsocialnet/5chan 2026-05-30 16:12:29 +07:00
Tommaso CasaburiandGitHub 9b3a95dd95 feat(flash board): add SWF posting support (#1145) 2026-05-30 16:07:41 +07:00
Tommaso Casaburi fa07e4a406 Merge branch 'master' of github.com:bitsocialnet/5chan 2026-05-30 15:39:04 +07:00
Tommaso CasaburiandGitHub 56894700c1 feat(oekaki): add drawing flow for /i/ (#1144)
* feat(oekaki): add drawing flow for /i/

* fix(oekaki): address review feedback

* fix(oekaki): reset Tegaki edit sessions

* fix(oekaki): block drawing during export

* fix(oekaki): destroy Tegaki on preload errors

* fix(oekaki): preserve drawing on export failure

* fix(oekaki): unlock controls after export failure
2026-05-30 15:06:47 +07:00
Tommaso Casaburi 2969a91690 Merge branch 'codex/fix/modal-top-offset' 2026-05-30 13:10:26 +07:00
Tommaso Casaburi b983cfdce4 fix(ui): position disclaimer and directory modals 50px from top
Align home disclaimer and directory submit dialogs near the top of the viewport instead of vertically centering them.
2026-05-30 13:10:22 +07:00
Tommaso Casaburi 55bb873ab1 fix(board-pagination): increase footer pagelist padding 2026-05-30 13:08:54 +07:00
Tommaso Casaburi 5a0b4909b8 Merge branch 'codex/fix/directory-loading-center' 2026-05-29 17:47:53 +07:00
Tommaso Casaburi a435d93c8a fix(home): unify stats loading state with feed status string
Show a single centered loader without stat labels until all directory
stats resolve, using useFeedStateString like popular threads. Center
directory table status loading in its cell.
2026-05-29 17:47:47 +07:00
Tommaso Casaburi 0469f61a45 feat(theme): add halloween special theme 2026-05-29 17:45:18 +07:00
Tommaso CasaburiandGitHub e082c7b428 fix(react): address Doctor findings (#1143)
Accessibility/semantics pass aligned with React Doctor: role-based spans/divs become real buttons, role=status becomes <output>, modals use native <dialog>, author/peer flags render as <img>, and embed/challenge iframes are sandboxed. Includes review follow-ups: correct button chrome/centering/themed dialog colors and focus rings, the missing aria-label i18n keys (all languages), the Yandex image-search URL, clearer .bso setup steps, a keyboard-accessible image-search dropdown, and removal of the post-edit ('comment edited') display (mod edits unchanged).
2026-05-29 17:09:07 +07:00
Tommaso Casaburi ac95e58433 Merge branch 'codex/fix/i18next-locize-notice' 2026-05-27 17:43:03 +07:00
Tommaso Casaburi c220c62b82 fix(i18n): disable i18next Locize support notice
Suppress the runtime Locize promo console message during i18next initialization.
2026-05-27 17:43:01 +07:00
Tommaso Casaburi eb23224d35 chore(deps): bump bitsocial-react-hooks to 0.1.13 2026-05-27 17:40:53 +07:00
Tommaso Casaburi 30dde0944d fix(rules): show friendly loading state string for board rules
Replace hardcoded loading text in BoardRulesDisplay with useStateString and LoadingEllipsis so rules loading matches other views like board downloads from peers.
2026-05-27 17:39:06 +07:00
Tommaso CasaburiandGitHub 029939089f fix(flags): align board flag rendering (#1142)
* fix(flags): align board flag rendering

* ci: run react doctor on changed pr files
2026-05-27 16:06:13 +07:00
Tommaso Casaburi 45a113c621 chore(deps): upgrade react-doctor to 0.2.6
Remove obsolete packageExtensions for react-doctor@0.0.31.
2026-05-26 18:24:57 +07:00
Tommaso Casaburi bd40fe043c chore(deps): bump bitsocial-react-hooks to 0.1.12 2026-05-26 15:13:03 +07:00
Tommaso Casaburi a40b446f14 fix(p2p stats): show peer transfer counters 2026-05-25 15:18:04 +07:00
Tommaso Casaburi 680dd71285 fix(p2p-stats): center loading state and add animated ellipsis
Use LoadingEllipsis for the P2P stats loading message with centered layout and extra bottom spacing.
2026-05-25 14:11:57 +07:00
Tommaso Casaburi 633542a1f7 fix(flags): move reply flag below link and auto-geo on /bant/
Hide the flag selector on /bant/ while still publishing geographic location, and place the reply modal flag field after the link field.
2026-05-24 23:38:15 +07:00
Tommaso Casaburi 2030b8c5bb fix(ui): use native browser styling for flag select
Match 4chan's unstyled flag dropdown by excluding it from themed form select rules.
2026-05-24 23:30:59 +07:00
Tommaso Casaburi 639c627a04 fix(p2p stats): prefer browser IPv4 for own endpoint 2026-05-24 23:18:42 +07:00
Tommaso Casaburi 271cb14ae6 Merge branch 'master' of github.com:bitsocialnet/5chan
# 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-05-24 23:18:28 +07:00
Tommaso CasaburiandGitHub f74b33f43b feat(flags): add comment flags (#1140)
* feat(flags): add comment flags

* fix(flags): address review feedback

* fix(flags): clear stale flag publish data
2026-05-24 23:14:36 +07:00
Tommaso Casaburi 31329f7856 Merge branch 'codex/fix/option-board-support-alert' 2026-05-24 19:17:55 +07:00
Tommaso Casaburi 5fad3c73ba fix(post): link board-specific option errors to supported boards
When fortune or dice options are used on the wrong board, show which
boards support them with clickable links in the post form and reply modal.
2026-05-24 19:17:50 +07:00
Tommaso Casaburi d19ebf6459 Merge remote-tracking branch 'origin/master' 2026-05-24 18:18:24 +07:00
Tommaso CasaburiandGitHub 804c14fc35 Improve P2P stats peer locations and Kubo display (#1139)
* feat(p2p stats): plot peers by ip location

* fix(p2p stats): show own node map marker

* feat(p2p stats): support full node peers

* fix(p2p stats): clean up kubo stats

* fix(p2p stats): address review feedback
2026-05-24 17:32:05 +07:00
Tommaso Casaburi 03222b033a Merge branch 'codex/feature/pending-approval-reason' 2026-05-24 17:06:16 +07:00
Tommaso Casaburi 348e3393c7 feat(post): show pending approval reason 2026-05-24 17:06:03 +07:00
Tommaso Casaburi a6a1320381 fix(feed): clarify loading states 2026-05-24 16:25:02 +07:00
Tommaso Casaburi 0df81b598e fix(board header): replace loading icon with spinner 2026-05-23 23:30:51 +07:00
Tommaso CasaburiandGitHub f5039285a7 fix(p2p stats): improve own-IP geolocation and world map accuracy (#1138)
* fix(p2p stats): improve own-IP geolocation and world map accuracy

Resolve the user's public endpoint when libp2p only advertises private listen addresses, look up an accurate country flag for "Your IP", snap peer markers to country centroids, and add leeching seeder link plus panel layout tweaks.

* fix(p2p stats): skip caching own-IP lookups cancelled by abort

When the P2P stats panel unmounts mid-request, its AbortSignal cancels
the in-flight fetchOwnPublicEndpoint / fetchOwnIpCountryCode calls. Those
empty results were still cached for 30-60s, so reopening the panel within
that window showed "Your IP" as unavailable or without a country flag even
though nothing had actually failed. Skip caching when the signal aborted so
a later open retries. Addresses Cursor Bugbot finding.
2026-05-23 22:47:41 +07:00