Add board directory view (#1132)

* feat(directory): add board directory view

* fix(directory): populate board status

* style(directory): tighten board table

* docs(board manager): point board owners to manager

* fix(directory): show loading status

* style(directory): center board column in directory table

* perf(directory): cap board status checks

* style(directory): simplify board row links

* test(ci): stabilize coverage run

* test(ci): stabilize coverage harness

* test(ci): avoid async app flush act

* test(app): narrow layout harness coverage

* test(ci): stabilize app update distribution mock

* test(ci): preload app harness before route tests

* fix(directory): address final review findings
This commit is contained in:
Tommaso Casaburi
2026-05-19 23:34:33 +07:00
committed by GitHub
parent 4370e89174
commit cda1f7519f
62 changed files with 1572 additions and 171 deletions
+21 -4
View File
@@ -134,7 +134,7 @@
"time_x_months_ago": "{{count}} months ago",
"time_1_year_ago": "1 year ago",
"time_x_years_ago": "{{count}} years ago",
"open": "open",
"open": "Open",
"bump_order": "Bump order",
"creation_date": "Creation date",
"sort_by": "Sort by",
@@ -206,6 +206,7 @@
"no_file_chosen": "No file chosen",
"error": "Error",
"vote": "vote",
"directory": "Directory",
"warning": "Warning",
"comment_field_too_long": "Comment too long ({{length}}/2000).",
"field_too_long": "Field too long.",
@@ -264,8 +265,23 @@
"copy_user_id": "Copy user ID",
"copy_direct_link": "Copy direct link",
"board_address_tooltip": "The address of this board's peer-to-peer node",
"vote_button_unavailable_intro": "Not available yet. Each directory will have a voting page listing the boards competing for /{{boardIdentifier}}/.",
"vote_button_unavailable_outro": "5chan Pass holders will be able to participate in directory voting. Final governance mechanics are still being designed to include BSO-holder alignment. Learn more at 5chan.app/pass.",
"directory_heading": "Displaying all ({{count}}) known /{{boardIdentifier}}/ boards on 5chan",
"directory_score": "Score",
"directory_vote": "Vote",
"directory_board": "Board",
"directory_owner": "Owner",
"directory_status": "Status",
"directory_status_online": "online",
"directory_status_offline": "offline",
"directory_owner_anonymous": "Anonymous",
"directory_subtitle": "The highest-scoring board resolves /{{boardIdentifier}}/; if it goes offline, 5chan rotates to the next-highest.",
"directory_footnote": "To submit your own board, open a pull request <repoLink>here</repoLink>. Read more on the <passLink>5chan Pass</passLink> page.",
"directory_voting_unavailable_intro": "Voting isn't enabled yet. The board ranked #1 in /{{boardIdentifier}}/ is temporarily fixed because it's currently managed by devs.",
"directory_voting_unavailable_outro": "5chan Pass holders and BSO token holders will be able to upvote and downvote each board in this list. Learn more at 5chan.app/pass.",
"loading_directory": "Loading directory",
"directory_empty": "No boards listed for this directory yet.",
"upvote": "Upvote",
"downvote": "Downvote",
"upload_failed": "Upload failed",
"upload_not_supported_web": "Uploading media isn't supported by your browser due to technical limitations (CORS). It is supported in the 5chan Android app and Mac/Linux/Windows desktop app. Download from the official release page: https://github.com/bitsocialnet/5chan/releases/latest",
"upload_not_supported_web_before_link": "Uploading media isn't supported by your browser due to technical limitations (CORS). It is supported in the 5chan Android app and Mac/Linux/Windows desktop app.",
@@ -389,5 +405,6 @@
"media_failed_to_load_source_unknown": "External host, not 5chan",
"media_failed_to_load_open_source": "Open original file",
"media_failed_to_load_inline": "External image from {{host}} failed. Try VPN.",
"media_failed_to_load_inline_unknown": "External image failed. Try VPN."
"media_failed_to_load_inline_unknown": "External image failed. Try VPN.",
"directory_status_unavailable_reason": "check only available for top 5 boards"
}