- Backend app lives in
wiki/(Frappe app, Python). - Frontend SPA lives in
frontend/(Vue + Frappe UI) and is shipped to/assets/wiki/frontend.
Source of truth for schema is wiki/**/doctype/**/**/*.json.
- Wiki Document (
wiki/frappe_wiki/doctype/wiki_document/wiki_document.json)- Tree doctype for wiki content (groups + pages) with nested ordering.
- Wiki Space (
wiki/wiki/doctype/wiki_space/wiki_space.json)- Top-level space for grouping pages and navigation.
- Links to a root
Wiki Documentgroup and controls space branding.
- Wiki Contribution (
wiki/frappe_wiki/doctype/wiki_contribution/wiki_contribution.json)- Draft changes applied to the
Wiki Documenttree (create/edit/move/delete/reorder).
- Draft changes applied to the
- Wiki Contribution Batch (
wiki/frappe_wiki/doctype/wiki_contribution_batch/wiki_contribution_batch.json)- Approval unit that merges contributions into the live
Wiki Documenttree.
- Approval unit that merges contributions into the live
- Wiki Feedback (
wiki/wiki/doctype/wiki_feedback/wiki_feedback.json)- Stores ratings and feedback for a wiki document.
- Links to
Wiki Document.
External DocTypes referenced by links:
User(authors/reviewers).Top Bar Item(navbar config).
- SPA is initialized in
frontend/src/main.jsand wrapped byFrappeUIProviderinfrontend/src/App.vue. - Uses
frappe-uiresource helpers and UI components across pages and components infrontend/src/**. - The compiled assets are referenced by
wiki/www/wiki.html.
- Published
Wiki Documentpages are rendered byWikiDocumentRendererinwiki/frappe_wiki/doctype/wiki_document/wiki_document.pyusingtemplates/wiki/document.html. - The renderer uses
Wiki Document.get_web_contextfor breadcrumbs, tree navigation, and content HTML. /wikiroute uses a Vue SPA entry point:wiki/www/wiki.htmlloads/assets/wiki/frontend/assets/*and injects boot data.wiki/www/wiki.pyprovides the boot context (CSRF token, site info).