nowo-tech / wiki-bundle
Symfony bundle for versionable team wiki pages (Outline/Notion-style) with Tiptap rich text
v1.0.3
2026-07-16 09:07 UTC
Requires
- php: >=8.2 <8.6
- ext-zip: *
- doctrine/doctrine-bundle: ^2.10 || ^3.0
- doctrine/orm: ^2.15 || ^3.0
- league/commonmark: ^2.7
- league/html-to-markdown: ^5.1
- nowo-tech/tiptap-editor-bundle: ^1.0
- symfony/config: ^7.4 || ^8.0
- symfony/console: ^7.4 || ^8.0
- symfony/dependency-injection: ^7.4 || ^8.0
- symfony/form: ^7.4 || ^8.0
- symfony/framework-bundle: ^7.4 || ^8.0
- symfony/http-kernel: ^7.4 || ^8.0
- symfony/routing: ^7.4 || ^8.0
- symfony/security-bundle: ^7.4 || ^8.0
- symfony/translation: ^7.4 || ^8.0
- symfony/twig-bundle: ^7.4 || ^8.0
- symfony/validator: ^7.4 || ^8.0
- symfony/yaml: ^7.4 || ^8.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- phpstan/extension-installer: ^1.0
- phpstan/phpstan: ^2.0
- phpstan/phpstan-phpunit: ^2.0
- phpstan/phpstan-symfony: ^2.0
- phpunit/phpunit: ^10.0
- rector/rector: ^2.0
- symfony/ai-agent: ^0.1
- symfony/ai-bundle: ^0.1
- symfony/asset: ^7.4 || ^8.0
- symfony/browser-kit: ^7.4 || ^8.0
- symfony/dom-crawler: ^7.4 || ^8.0
- symfony/var-exporter: ^7.4 || ^8.0
Suggests
- nowo-tech/html-to-word-bundle: Export wiki pages to DOCX/PDF (phase 2).
- nowo-tech/translation-yaml-tools-bundle: Translate wiki content across locales.
- symfony/ai-bundle: Ask questions about wiki pages with configurable AI agents and RAG tools.
README
⭐ Found this useful? Give it a star on GitHub so more developers can find it.
Symfony bundle for a versionable team wiki: spaces, page trees, immutable revisions, diff, search, and Tiptap rich-text editing (Notion-like variant).
Features
- Wiki spaces scoped per team or user
- Pages with slug, parent/child tree, archive (revisions kept)
- Immutable revisions on every save
- Revision diff between any two versions
- Full-text search in title and current revision body (per space or all accessible spaces), with contextual excerpts
- Import / export — Outline and Notion Markdown trees (UI +
wiki:import/wiki:exportcommands) - Symfony AI (optional) — ask questions about wiki content with RAG context (
symfony/ai-bundle) WikiAccessCheckerInterface+WikiTeamMembershipResolverInterfacefor app ACL- Twig layout overrides + CSRF on POST actions
- Integrates TiptapEditorBundle (
variant: notionby default)
Installation
composer require nowo-tech/wiki-bundle nowo-tech/tiptap-editor-bundle
# config/packages/nowo_wiki.yaml nowo_wiki: user_class: App\Entity\User
See Installation.
Demo
make -C demo/symfony8 up
# Demo started at: http://localhost:8025 → /tools/wiki
Documentation
- GitHub Actions CI requirements
- Installation
- Configuration
- Usage
- Contributing
- Code of Conduct
- Changelog
- Upgrading
- Release
- Security
- Engram
- Spec-driven development
- GitHub Spec Kit
Additional documentation
Tests and coverage
| Language | Coverage |
|---|---|
| PHP | 100% — make test-coverage |
| TypeScript | 100% — make test-ts (wiki assets) |
PHPUnit: 230 tests. Coverage threshold enforced via make test-coverage-100 / composer test-coverage-100.
License
MIT — see LICENSE.