BookStack vs Wiki.js: when each one fits the documentation you run
Choose BookStack when your team wants a fixed model of shelves, books, chapters and pages, a WYSIWYG editor that non-engineers will use without training, and a conventional PHP and MySQL stack. BookStack is MIT licensed, requires PHP 8.2 or later with MySQL 8.0 or MariaDB 10.6 or later, and its content hierarchy is set by the product rather than by each wiki administrator. Choose Wiki.js 2.x when content has to live alongside source control, when you need a Git storage module that synchronizes in both directions, when your identity provider is one of its many authentication modules, or when you want a Node.js runtime that already fits your platform team's tooling. Wiki.js 2.x is AGPL-3.0 licensed and runs on Linux, Docker and Kubernetes.
The decision turns on four questions. First, structure: does your documentation fit shelves, books and chapters, or does it need a free-form page tree that engineers will maintain in Git? Second, identity: confirm that your provider works with the sign-in methods each product supports, including OIDC, SAML2 and LDAP in BookStack and the broader module list in Wiki.js, and check whether multi-factor enforcement by role meets your policy. Third, Git-based content: if documentation must be reviewed through pull requests, test the Git storage module against a copy of your repository before committing. Fourth, tolerance for change: Wiki.js 3.0 remains a beta marked not for production use in the main repository, so a 2.x deployment should have a planned path and an owner for that transition.
Before you shortlist either product, ask your identity team which sign-in method they will operate, ask your content owners how they expect to organize pages, and ask your platform team whether they want to run Node.js or PHP. Confirm the current Wiki.js 2.x release and its upgrade notes with the project directly, since the 3.0 timeline is not fixed by any source we rely on. The answers will usually point to one product within a single planning session.
Which platform fits which team scenario
This table maps common team situations to the platform that usually fits better and the condition that makes it so. Read each row against your own identity provider, Git workflow and Node.js experience, since those conditions decide most of the outcome. Where a row favors Wiki.js, check the 2.x support line before committing.
| Scenario | Better fit | Condition that makes it so |
|---|---|---|
| Single team handbook with a few dozen pages | BookStack | Content is written by a small group in a WYSIWYG editor, and the team wants books and chapters without tuning storage or auth modules. |
| Multi-department knowledge base with strict book hierarchy | BookStack | Departments need shelves, books, chapters and pages with role-based permissions and MFA enforced per role, which BookStack's fixed structure supports directly. |
| Docs-as-code team that wants Git sync | Wiki.js | The team needs two-way synchronization with a Git repository, which Wiki.js's Git storage module provides, and it is comfortable managing that sync. |
| Azure AD or Keycloak shop | Either, after testing | Both support OIDC or SAML2 sign-in. Wiki.js also lists Azure AD and Keycloak OpenID Connect modules by name, so confirm the group mapping you need in a test instance. |
| Team with no Node.js skills | BookStack | The team would otherwise run and patch a Node.js service, while BookStack's stack is PHP 8.2 or later with MySQL 8.0 or MariaDB 10.6 or later. |
| Team that already runs Node.js services | Wiki.js | Existing Node.js operations, monitoring and patch processes can absorb Wiki.js, and a dedicated domain or subdomain is acceptable. |
| Wiki must live under an existing site path | BookStack | Wiki.js requires a dedicated domain or subdomain and cannot be mapped to a subfolder, so confirm your URL layout before choosing it. |
| Strict upgrade stability is a priority | BookStack | Confirm your upgrade plan for Wiki.js 3.0 before adopting it, because the main repository holds a 3.0 beta marked not for production use, while 2.x is the stable line. |
How BookStack's fixed hierarchy differs from Wiki.js page trees
BookStack forces every page into a shelf, book, chapter and page hierarchy, while Wiki.js 2.x lets you shape the tree with its own page paths. In BookStack, a team decides early where a page belongs before it can be written, and that choice governs how readers browse. In Wiki.js, the page path is the address and the navigation, so structure is set by how each page is named and placed, with storage modules such as Git determining where the content lives on disk. Both models work, but they make different trade-offs for the people who maintain them.
For onboarding, the BookStack hierarchy gives new staff a predictable map: a shelf for a function, books for its processes, chapters for the steps. This helps readers who do not know the wiki's history, but it also means authors must agree on the taxonomy before they write. In Wiki.js, a new contributor can create a page at any path, which is faster on day one and can produce drift over time. Before choosing, run a pilot: ask two or three people outside the documentation team to find a known procedure, and record how many clicks and guesses it takes in each tool.
Reorganizing content is where the difference is most expensive. Moving a chapter in BookStack is a structural action that changes the context of every page inside it, so the team should agree on a naming convention and an owner for each shelf first. Moving a path in Wiki.js is more flexible but can break links that readers and other documents rely on, and if the content is synced to Git, the restructure also becomes a repository change. For finding pages later, BookStack's search and shelf view favor users who know the taxonomy, while Wiki.js favors users who remember a path or title. Confirm search behavior and link redirects with the current release notes and your own test instance, since these details vary by version.
What the PHP and MySQL stack and the Node.js runtime mean for operations
BookStack and Wiki.js both fit a small self-hosted footprint, but they ask different things of your platform team. One runs on a PHP and MySQL stack with official Ubuntu installation scripts, the other on Node.js with a dedicated domain and a database choice you need to make early.
BookStack's PHP and database baseline
BookStack requires PHP 8.2 or later with MySQL 8.0 or MariaDB 10.6 or later. Your team needs someone who can maintain a PHP runtime and a MySQL-family database, including patching and backups. Confirm that your database version policy already covers these minimums before you commit to a host image.
Official scripts, no official containers
BookStack ships official installation scripts for Ubuntu 22.04, 24.04 and 26.04. It does not publish official Docker images and points to community setups such as LinuxServer.io. If your standard is container-based, decide whether you will adopt a community image and who owns its update cycle.
Wiki.js runs almost anywhere
Wiki.js runs wherever Node.js is supported, including Linux, macOS, Windows, Docker and Kubernetes. It also supports sideloading files for environments without internet access. This flexibility helps platform teams that already operate clusters, but it also means the deployment pattern is yours to define and document.
Dedicated domain for Wiki.js
Wiki.js requires a dedicated domain or subdomain and cannot be mapped to a subfolder of an existing site. Plan DNS, TLS certificates and reverse proxy routing before installation. If your organization limits new hostnames, this constraint may decide the question before features do.
Memory floor on Linux
Wiki.js needs at least 1 GB of RAM on Linux systems. Size your virtual machine or container limits with that floor plus headroom for your database and search module. Check the figure against your own hardware standards, because the minimum is a starting point rather than a capacity estimate.
PostgreSQL recommended for Wiki.js 2.x
Wiki.js 2.x recommends PostgreSQL 9.5 or later and also supports MySQL 8.0, MariaDB, MS SQL and SQLite. If you choose PostgreSQL for search, the search module needs the pg_trgm extension, so confirm your database team can enable it. Choosing a database that differs from your BookStack MySQL estate means running two database engines.
Editing, permissions, authentication and storage compared
This table compares how each wiki edits content, handles diagrams, signs users in, stores content and supports databases. Read each row as a question to answer for your environment, and use the cells to decide which gaps need a proof of concept.
| Capability | BookStack | Wiki.js 2.x |
|---|---|---|
| Editing | WYSIWYG editor with an optional Markdown editor, so teams can choose one style or allow both | Editor behavior is set per site and per page; confirm which editors the 2.x release offers before standardizing on a workflow |
| Diagrams | Built-in diagrams.net diagrams inside pages | Confirm diagram support and any plugins with the 2.x documentation before relying on it |
| Content structure | Fixed shelves, books, chapters and pages, which keeps navigation consistent across teams | Flexible page tree on a dedicated domain or subdomain; confirm the hierarchy you need fits the model |
| Single sign-on | OIDC, SAML2 and LDAP sign-in | Azure AD, GitHub, Google, Keycloak OIDC, LDAP and Active Directory, generic OpenID and OAuth2, Okta and SAML 2.0 |
| Multi-factor authentication | Built-in MFA that can be enforced per role | TOTP two-factor authentication; confirm whether enforcement can be scoped by group or role |
| Permissions | Full role and permission system covering shelves, books and pages | Confirm the page-level and group-level rules you need in the 2.x permission model with a test instance |
| Storage | Content stored in the MySQL or MariaDB database | Storage modules include Git, AWS S3 and DigitalOcean Spaces; Git sync runs in both directions, so confirm conflict handling before enabling it |
| Database support | MySQL 8.0 or MariaDB 10.6 or later, with PHP 8.2 or later | PostgreSQL recommended, plus MySQL 8.0 or later, MariaDB, MS SQL and SQLite; the PostgreSQL search module needs pg_trgm |
What the MIT and AGPL-3.0 licenses mean for each team
BookStack is released under the MIT license, one of the most permissive open-source licenses in common use. Your organization can run, modify and redistribute BookStack internally without publishing its changes, provided the copyright and license notice travel with copies of the software. For most internal documentation teams, the license question is settled at adoption and rarely reopens. BookStack's developers also offer paid support plans and accept sponsorship, so support can be bought without buying a different edition of the product.
- Internal use: Running and modifying BookStack inside your own network carries no obligation to release your customizations.
- Notice retention: Keep the MIT copyright and license notice with any copies you distribute, such as a packaged image or appliance.
- Paid support: Support plans come from the BookStack project, which is separate from the license terms.
- Sponsorship: Organizations can sponsor development without changing the license.
- Community contributions: Patches you contribute upstream are your decision, not a condition of running the software.
Confirm with your legal team how the MIT notice should appear in any internal distribution, and ask BookStack directly what its paid support plans include. No further paid edition details are supplied for this comparison.
Wiki.js is licensed under AGPL-3.0, a strong copyleft license that extends source obligations to software accessed over a network. Running unmodified Wiki.js for internal staff is generally a straightforward use of the license. The AGPL becomes significant when you modify the code and make the modified version available to users over a network, because the license can require you to offer those users the corresponding source. Wiki.js is also a fast-moving project to track, so the license question sits next to a version question.
- Unmodified internal use: Running the stock release for your own staff does not by itself trigger source-offer duties under this license.
- Modified hosted deployments: If you change Wiki.js and users interact with the changed version over a network, the AGPL can require offering them the modified source.
- Custom modules and themes: Internal extensions may fall under the same analysis, depending on how they are linked and distributed.
- Stable line: The stable 2.x line lives in the requarks/wiki-v2 repository, with v2.5.316 published on October 2, 2026.
- Beta status: The 3.0 beta in the main requarks/wiki repository is marked not for production use.
Ask counsel whether your planned modifications, integrations and hosting model create network source-offer obligations, and document the decision before you customize the platform.
The Wiki.js license is only part of the picture, because the project publishes two lines from two repositories. The stable 2.x line is the one with a production release in the supplied sources, while the 3.0 beta sits in the main repository and is explicitly marked not for production use. Teams that plan around 3.0 need to understand that the license terms do not change the upgrade risk, which is driven by the maturity of the release line itself. Pinning to the stable line and tracking the beta separately is the conservative approach.
- Stable source: Obtain 2.x releases from the requarks/wiki-v2 repository.
- Beta source: The main requarks/wiki repository holds the 3.0 beta, which its README marks as not for production.
- Upgrade planning: Treat any move to a new major line as a separate project with its own testing window.
- Forks and patches: Patching a pinned 2.x release is a different maintenance task from tracking upstream 3.0 work.
- Documentation: Record which repository and release each environment runs, so license and support questions have a clear answer.
Before committing to a Wiki.js version, confirm the current production status of each line with the project's release pages.
Procurement teams usually want to know who can be paid for what, and what the license requires when the software is embedded in a service. Under MIT, BookStack's terms are short and permissive, so the review concentrates on notice retention and the commercial support relationship. Under AGPL-3.0, the review must cover whether your hosting model makes the software available to outside users, because that is where the copyleft network clause applies. Both products can be supported by specialist providers, but a provider's services are a contract matter, not a change to the license.
- Contract scope: Support plans from a software project and implementation services from a third party are separate purchases with separate terms.
- Customer-facing use: Offering a wiki to clients or partners is where AGPL source-offer questions are most likely to arise.
- Warranty: Neither license provides the kind of support commitment a paid plan would, so ask for those terms in writing.
- Notice files: Keep license texts and attribution records in your software bill of materials.
- Exit terms: Record how you would replace either product, since license terms do not determine migration effort.
Ask your procurement and legal teams to review the license texts together with the written scope of any support or implementation contract.
How the Wiki.js 3.0 transition changes upgrade risk
The key point for a team choosing Wiki.js is that the stable line today is 2.x, and 3.0 is not yet a production target. The stable 2.x line now lives in the requarks/wiki-v2 repository, where v2.5.316 was published on October 2, 2026. The main requarks/wiki repository holds the 3.0 beta, which its README marks as not for production use. A team that deploys 2.x now should pin to a specific 2.x release, track the requarks/wiki-v2 releases page, and treat any move to 3.0 as a separate, planned project rather than a routine upgrade.
Plan for 2.x to be a supported line you run in production while 3.0 matures. Before go-live, stand up a staging instance on the same database engine you will use in production, since Wiki.js recommends PostgreSQL and the search module depends on the pg_trgm extension there. Restore a copy of production content into staging, then test authentication end to end (the identity provider, group mapping and TOTP enrollment), your Git or S3 storage sync, and sideloaded content if you run without internet access. Record which modules and settings you depend on so you can judge a future 3.0 migration against a concrete list. Ask the project for its published migration path and whether 3.0 will support in-place upgrades from 2.x. Those answers are not in the supplied facts, so confirm them before committing a date.
The comparison with BookStack changes here. BookStack's current release is v26.09.1, published on September 29, 2026, after v26.09 on September 24, 2026. Its installation requirements are PHP 8.2 or later with MySQL 8.0 or MariaDB 10.6 or later. Confirm the upgrade cadence and any breaking changes in the BookStack release notes before you set a patching policy, and record the BookStack and Wiki.js versions you run together so that both upgrades stay on your change calendar. If your shortlist depends on a stable upgrade path with fewer open questions about the platform's next major line, weigh that against Wiki.js's dual-line situation as part of the decision.
Moving content from BookStack to Wiki.js or back
This sequence moves page text, attachments and user identities between BookStack and Wiki.js while you rebuild the structure, permissions and navigation that do not transfer on their own. It ends with a verified cutover, so each side can be checked against the same inventory before users switch.
Inventory books, chapters and pages
Export a full list of shelves, books, chapters and pages from BookStack, including page owners, last-edited dates, tags and attachments. Record which pages are linked from outside the wiki and which contain embedded diagrams. Wiki.js has no shelf level, so note how each shelf will be represented as a top-level path or a set of folders. Done when the inventory covers every page and you have a written count to compare against after the move.
Map the hierarchy to Wiki.js paths
Decide how each BookStack book and chapter becomes a Wiki.js path, for example a folder path that mirrors book and chapter names. Wiki.js requires a dedicated domain or subdomain and cannot be mapped to a subfolder, so confirm the target URL scheme before you rename anything. Reverse the map if you move from Wiki.js into BookStack, where pages must sit inside books and chapters. Done when every source page has one agreed target path and a mapping document is signed off by the content owners.
Export and convert content formats
BookStack stores pages in its own editor format and supports Markdown as an optional editor, so export each page in a format both platforms can read, typically Markdown or HTML, and check how tables, code blocks and diagrams survive conversion. Diagrams created with the built-in diagrams.net integration usually need to be exported as images or source files. Confirm the exact export options in your installed version and the Wiki.js editor you plan to use. Done when a sample of pages from each book renders correctly in a test instance.
Migrate users and identity mappings
Map BookStack accounts to the identity source Wiki.js will use. If both platforms sign in through the same OIDC, SAML 2.0 or LDAP directory, users keep their identity and only need matching accounts, which transfers identity but not role assignments. Wiki.js offers TOTP two-factor authentication, and BookStack offers built-in MFA that can be enforced per role, so record which second factor each user must re-enroll. Done when a test user from each group can sign in on the target platform and the account mapping is reviewed by the identity owner.
Rebuild permissions and navigation
Permissions do not transfer between the two platforms, so recreate access rules from your role matrix on the target. In BookStack, rebuild shelf, book and chapter permissions. In Wiki.js, rebuild group and path rules and the navigation tree, and reconnect any plugins or storage modules such as Git sync, which must be configured again. Confirm how each platform behaves when a user holds several roles. Done when a test matrix of users and pages gives the same allowed and denied results on both sides.
Import content and verify links and attachments
Import the converted pages into the target, then attach files and images to the matching pages. Crawl the new site and compare it with the inventory from step one, checking every internal link, image, attachment and external reference. Broken relative links are the most common failure, so rewrite them against the new paths before you accept the import. Done when the page count matches the inventory, the link check returns no broken internal references, and sampled attachments open for a test user.
Cut over and retain the source
Freeze edits on the source platform, run a final incremental export, and point users and bookmarks to the new address. Keep the old platform read-only and backed up for a period your records and retention policy set, so you can answer questions about moved content. Confirm the redirect or notice plan for old URLs and the backup restore test before you decommission anything. Done when users can reach the new platform, the source is read-only, and the cutover record lists what transferred and what was rebuilt.
Where a BookStack or Wiki.js implementation usually runs long
The longest stretches in either project are rarely the install itself. Identity integration testing and permission mapping consume the most calendar time, because BookStack's role and permission system and Wiki.js's authentication modules each need to match how your directory groups actually map to editors, readers and administrators. For BookStack, test OIDC, SAML2 or LDAP sign-in against a staging identity provider, then confirm that per-role multi-factor enforcement behaves as intended. For Wiki.js, confirm which authentication strategy you enable (Azure AD, Keycloak OpenID Connect, LDAP and Active Directory, SAML 2.0 and others), how group claims are read, and whether TOTP two-factor authentication is enforced or optional. Ask your identity team to supply a written group-to-role matrix before any work starts, since rework here is the most common source of delay.
Content cleanup before migration is the second hidden workload. Legacy wiki exports often contain duplicate pages, orphaned attachments and inconsistent headings, and BookStack's fixed hierarchy of shelves, books, chapters and pages forces a decision about where each page belongs. Wiki.js has no such fixed hierarchy, so the cleanup question shifts to path naming and page organization. On the Wiki.js side, Git storage configuration adds its own work: you must decide the repository layout, the sync direction (the Git module synchronizes content in both directions, so conflicting edits made through the web interface and the repository need a policy), the credentials used, and how the sync is tested under failure. Your implementation partner or internal team should produce a written content inventory and a sync design, then validate both with a sample of real pages.
Database backup and restore design and staff training on the editor are easy to underestimate. BookStack depends on MySQL 8.0 or MariaDB 10.6 or later, and Wiki.js 2.x recommends PostgreSQL 9.5 or later, with the PostgreSQL search module requiring the pg_trgm extension. In both cases, backups must cover the database and the uploaded files or storage target, and a restore must be rehearsed on a separate host, not assumed. Confirm recovery objectives with your own risk owners, not with a vendor default. Editor training also differs: BookStack offers a WYSIWYG editor with an optional Markdown editor, while Wiki.js has its own editing flow tied to its storage module. Budget time for both the rollout and for a short written style guide, and ask any partner to state in its quote which of these items are included in fixed scope and which are optional retainer work.
Questions buyers ask before choosing BookStack or Wiki.js
What drives the cost of running BookStack versus Wiki.js?
Software licenses are free for both, so cost comes from hosting, staff time and any paid help you buy. BookStack needs a PHP 8.2 or later runtime and MySQL 8.0 or MariaDB 10.6 or later, and it has official installation scripts for Ubuntu 26.04, 24.04 and 22.04. Wiki.js 2.x runs on Node.js and recommends PostgreSQL, with Linux systems needing at least 1 GB of RAM, per the Wiki.js requirements documentation. Recurring costs are the servers, database backups, patching and any support contract. Ask any vendor or partner for a quote that lists each component, what is one-time and what recurs, and who performs each task.
Can a small team run BookStack or Wiki.js itself?
Yes, both are self-hosted and a team with basic Linux and database skills can operate either one. BookStack has official installation scripts but no official Docker images, so you would rely on community Docker setups such as LinuxServer.io if you want containers. Wiki.js runs on Node.js wherever it is supported, including Docker and Kubernetes, and needs a dedicated domain or subdomain because it cannot be mapped to a subfolder. Confirm that someone on your team will own upgrades, backups, TLS certificates and restore testing before you commit.
How much internal staff time does each platform need?
Expect ongoing time for patching the operating system, PHP or Node.js, the database and the wiki itself, plus periodic restore tests. BookStack's stack is PHP with MySQL or MariaDB, which many operations teams already run. Wiki.js adds a Node.js runtime and a database choice that you should settle early, since PostgreSQL is the recommended option. Ask for a written runbook that covers each recurring task, its owner and how long a typical upgrade takes in your environment, since no supplied figure gives a standard duration.
How long does migrating content into BookStack or Wiki.js usually take?
Migration length depends on the volume of pages, attachments, page history, permissions and links you need to keep, not on the platform alone. BookStack's fixed hierarchy of shelves, books, chapters and pages means you must map every source space or folder into that model before import, which is design work. Wiki.js organizes content by path, so migration usually centers on storage choice and link structure, and its Git storage module can synchronize content in both directions. Ask a partner to inventory your content and authentication setup first, then quote the migration as a fixed scope with written deliverables.
Should we wait for Wiki.js 3.0 before choosing it?
No, not for a production decision today. The main requarks/wiki repository holds Wiki.js 3.0, which its README marks as beta and not for production use. The stable line is 2.x, and v2.5.316 was published on October 2, 2026, per the Wiki.js 2 releases page. If you choose Wiki.js now, plan for an upgrade path later and check the 3.0 release notes and migration guidance when they are final, since configuration and storage behavior may change. Pick the platform that fits your needs today, and budget time to review the upgrade when it is stable.
Is single sign-on free on BookStack and Wiki.js?
Both support single sign-on in their open-source distributions. BookStack supports OIDC, SAML2 and LDAP sign-in along with multi-factor authentication that can be enforced per role. Wiki.js lists authentication modules including Azure AD, GitHub, Google, Keycloak OpenID Connect, LDAP and Active Directory, generic OpenID and OAuth2, Okta and SAML 2.0, with TOTP two-factor authentication. The real cost question is the work to configure and test each identity provider against your directory and group mappings, which you should scope and confirm in writing before go-live.
When does it make sense to bring in an implementation partner?
Bring in a partner when the work exceeds your team's capacity or skills, such as migrating years of content, integrating SAML or LDAP with a regulated directory, hardening the server, or preparing evidence for a compliance assessment. DeployOpen plans, implements, integrates, hardens, backs up, upgrades and documents self-hosted open-source platforms inside your own infrastructure, and most engagements are fixed-scope with agreed deliverables and timelines. DeployOpen does not publish a price list, so a quote follows from the written scope. Note that DeployOpen prepares controls and evidence for assessments but does not issue audit reports or certifications.
What drives the running cost of each wiki
The running cost of either wiki is mostly staff time and the database and hosting choices made at installation, not the software licence, since both BookStack and Wiki.js 2.x are free to self-host. For BookStack, the infrastructure is a PHP 8.2 or later application on MySQL 8.0 or MariaDB 10.6 or later, installed on a server or through the official installation scripts for Ubuntu 26.04, 24.04 or 22.04. BookStack does not publish official Docker images, so a team that standardizes on containers must decide whether to accept a community image and who patches it. For Wiki.js 2.x, the cost drivers are a dedicated domain or subdomain (it cannot sit under a subfolder), at least 1 GB of RAM on Linux, and a database that the requirements documentation recommends as PostgreSQL 9.5 or later. Confirm the database engine you will operate, because PostgreSQL search also depends on the pg_trgm extension.
The recurring costs are patching, upgrades, backups and identity maintenance. Wiki.js is the riskier line to budget for: the stable 2.x line is maintained as v2.5.316 (October 2, 2026), while the 3.0 beta in the main repository is marked not for production use, so a migration to 3.0 is a future project with its own testing and storage rework. Git storage sync in Wiki.js writes content in both directions, which means backup design must cover the Git remote as well as the database, and someone must own conflict handling. BookStack keeps content in its database and file storage, so its backup set is simpler to define, but restore testing still takes staff time. Identity integration is a one-time build cost with a recurring review cost: BookStack's OIDC, SAML2 and LDAP sign-in and enforceable multi-factor authentication, and Wiki.js's broader module list including Keycloak, Okta and Azure AD, each need role mapping that must be re-checked when the identity provider changes.
When requesting a quote, ask for the scope in writing: installation and hardening, the identity provider and sign-in method to configure, the storage and backup design (including Git remote handling for Wiki.js), a migration plan from any existing wiki, upgrade and patch responsibilities, and whether a retainer covers the Wiki.js 3.0 evaluation when it leaves beta. Ask which items are one-time and which recur, how paid support is priced, and what happens if an upgrade breaks a customization. DeployOpen does not publish prices, so the quote follows from that written scope. Compare each quote against the same list of components so the totals reflect the same work.
How DeployOpen helps choose, implement and migrate a wiki
DeployOpen is a Chainscore Labs company that plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside the client's own infrastructure. For a BookStack vs Wiki.js decision, we start from your content model, identity setup and hosting constraints, then build and document the option you choose.
How we scope
- We confirm which content model fits your teams: shelves, books and chapters, or a Git-backed page tree.
- We map your identity requirements, such as OIDC, SAML 2.0 or LDAP, and who needs edit and view rights.
- Engagements are fixed-scope, with deliverables and timelines agreed in writing before any work starts.
How we build
- We install the chosen platform in your cloud account, data center or air-gapped network.
- We configure the database, hosting domain, authentication modules and storage backend you approved.
- We test permissions, sign-in paths and content migration before the wiki goes to end users.
How we hand over
- We document the install, configuration, backup and restore steps for your own administrators.
- We walk your team through editing conventions, permission roles and day-to-day administration tasks.
- We provide an upgrade plan covering the release line you run, so future version changes are planned.
How we support
- Ongoing support, upgrades and continuous testing are available as retainers after handover.
- Retainers can cover patching, backup checks and major version reviews, including any future Wiki.js 3.0 move.
- Ask any provider to confirm in writing which upgrade and migration work sits inside the agreed scope.

