What's Changed
- feat(git-sync): one-way GitHub → Wiki sync by @NagariaHussain in #660
- feat(mobile): make the Wiki SPA usable on a phone by @NagariaHussain in #665
- feat: fuzzy search box for the editor tree by @NagariaHussain in #666
- docs(claude): document upstream PR workflow by @NagariaHussain in #673
- fix(reader): stop clipping descenders in sidebar space title by @NagariaHussain in #674
- feat: per-space Accept Contributions toggle by @NagariaHussain in #675
- feat(settings): manage global Wiki Settings from the frontend by @NagariaHussain in #676
- fix(editor): stop selection bubble menu overlapping the sticky toolbar by @NagariaHussain in #678
- feat(editor): open a page by default when entering a space by @NagariaHussain in #679
- fix(editor): broken link formatting on paste (#667) by @NagariaHussain in #677
- feat: per-page SEO meta fields, Page Settings dialog & BreadcrumbList JSON-LD by @NagariaHussain in #687
- fix(reader): reveal current page in sidebar on load and navigation by @NagariaHussain in #690
- fix: clear stale website 404 cache when wiki routes change by @NagariaHussain in #692
- fix: detect metadata-only edits as revision changes by @NagariaHussain in #686
- fix(editor): flush dirty page buffers on navigation and save by @NagariaHussain in #691
- ci: shard Playwright E2E tests 4 ways by @NagariaHussain in #693
- fix: redirect space URL to first page in sidebar order by @NagariaHussain in #696
- chore: apply biome formatting across frontend by @NagariaHussain in #694
- fix: "Open in ChatGPT/Claude" uses wrong page URL after sidebar navigation by @NagariaHussain in #700
- fix: hide unpublished content from search results by @NagariaHussain in #701
- fix: don't flag valid third-party links as broken (#575) by @NagariaHussain in #702
- test(editor): cover markdown paste rendering (#609) by @NagariaHussain in #703
- feat: upgrade to frappe-ui v1 (1.0.0-beta) by @NagariaHussain in #695
- feat: horizontal tab navigation by @NagariaHussain in #718
- feat: auto-generated meta (OG) images by @NagariaHussain in #719
- feat: llms.txt, .md page endpoints, and wiki routes in sitemap.xml by @NagariaHussain in #721
- fix(og): title generated cards with the page title, not meta_title by @NagariaHussain in #723
- feat: editable route on page create by @NagariaHussain in #722
- fix: search roles server-side in the space permissions picker by @NagariaHussain in #725
- fix(reader): match frappe-ui docs chrome by @NagariaHussain in #726
- refactor!: move the editor SPA from /wiki to /wiki-app by @NagariaHussain in #728
- fix: published pages honour author blank lines by @NagariaHussain in #729
- feat: add "Published pages only" filter to Broken Links report by @NagariaHussain in #704
- feat: send reader's Edit button straight to GitHub for synced spaces by @NagariaHussain in #706
- Merging develop into Version 3 by @NagariaHussain in #730
Full Changelog: v3.0.0-rc.5...v3.0.0