- journal.routes.search (off by default) registers journal-search, the
results page for ?q= in the API's relevance order (no sort is sent),
server-rendered with a Polish-aware result count.
- JournalSearchBox: an icon button and a WAI-ARIA combobox with debounced
?fields=suggest suggestions, stale answers dropped, query words marked
ignoring diacritics; a plain GET form without JS.
- The module keeps the search path out of the route cache and the sitemap
and marks it noindex, follow.
- Client: suggestPosts and the fields option; useJournalLinks.searchLink.
- index and category pages paginate with ?page=N and 404 out of range
- category content renders above the list through the html gate
- related posts fall back to the latest posts
- --journal-* tokens and neutral base styles
- pl/en strings registered only for locales the app enables
- journal module registers the Journal pages at journal.routes paths
- typed anonymous-GET client, html gate, SSR x-forwarded-for forwarding
- fixture API, built-server SSR smoke and git-tag install check