Wiki.js v2.5.315 is a database-backed knowledge base
Wiki.js v2.5.315 gives a team browser editing, page history, group permissions, authentication modules, and several ways to search or copy content into outside storage. Writers can use Markdown or a visual editor, while administrators can connect company login systems and set page rules. That breadth makes sense for an internal handbook or support wiki where readers, editors, and administrators need different access. A folder of Markdown with a theme serves a much smaller job.
The size of our checkout matches that product scope. We counted 848 files and about 52,287 lines of source in 14.3 MB before installing anything. The application spans a Vue interface and a Node.js server, with background work for rendering and indexing. Wiki.js also has a GraphQL interface in the current v2 line. Buyers have to operate, upgrade, back up, and secure the application. A static compiler would stop at publishing files.
PostgreSQL is the database choice that survives the next major version
The requirements page supports PostgreSQL 9.5 or later and recommends using a current release. PostgreSQL search also needs the pg_trgm extension. MySQL, MariaDB, MS SQL Server, and SQLite still work with v2, but the same page says all 4 will lose support in the next major version. A new deployment should therefore begin on PostgreSQL unless its owner accepts a later migration. SQLite is explicitly discouraged for production.
Database setup is only one part of the runtime. Wiki.js expects an empty database with a dedicated user and password, plus a dedicated domain or subdomain. It cannot be mounted under a URL subfolder. Node.js 22 and 24 are supported, while the published Docker image includes Node for you. Our source install still pulled 2,276 packages and occupied 1,924 MB, so building locally is much heavier than starting from the packaged image.
What happened when we ran it
Our sandbox installed Wiki.js in 237 seconds, adding 2,276 packages and using 1,924 MB on disk. The production build then completed successfully in 74 seconds. We ran commit 1161ddc in an unprivileged Debian container with 3 CPUs, 8 GB of RAM, Node 22, and no secrets. Those figures cover repository setup and compilation. We did not use them to claim page speed, search throughput, or concurrent-user capacity.
The test command failed with exit code 1 after 12 seconds. Its final output reported 122 errors and 1 warning, with 14 errors and 1 warning potentially fixable by the linter's fix option. The visible failure pointed to WIKI.logger.warn(err) and did not identify a missing system package or runtime service. The log supports one narrow conclusion: this checkout did not complete its test command cleanly in our stated environment.
The package script runs ESLint, Pug lint, and Jest in sequence. Because ESLint exited first, our result says nothing about how many Jest cases would pass. The repository scan found 3 CI workflow files, no Dockerfile, and no tests directory. The last finding describes the directory layout. Tests can still live elsewhere. The failed top-level command matters more for a contributor deciding whether the branch is ready to change.
The current release fixes 2 advisories while v3 stays in beta
Version v2.5.315 was published on September 21, 2026, the same day GitHub recorded the latest push. Its notes list fixes for 2 security advisories, including commit 1161ddc from our run. Operators should update from an older v2 build instead of treating age as a reason to freeze it. The release activity shows maintenance on the stable line, and the security content gives that maintenance an immediate operational purpose.
Version 3 has a public feature-parity issue that was opened in 2023 and updated on September 18, 2026. The maintainer says the beta will continue until v2 features are implemented, and recommends staying on v2 when a needed feature is absent. The checklist still marks new-page templates as unimplemented and rendering as partial. It also replaces the v2 GraphQL development interface with REST and narrows search to PostgreSQL, so migration deserves feature-by-feature testing.
139 open pull requests temper an active release cadence
GitHub showed 28,949 stars, 41 open issues, and 139 open pull requests when we fetched the project on September 21, 2026. A release and repository push landed that day, while the v3 parity issue had changed 3 days earlier. Wiki.js is plainly active. The 139-PR queue is still large enough that a prospective contributor should inspect review times and maintainer response on changes similar to the one they intend to submit.
Open issue 7942 gives operators a specific deployment check. It reports that Helm chart v3.0.0 passes an external PostgreSQL CA as a file path while Wiki.js expects base64 certificate content, causing a CrashLoopBackOff with certificate verification enabled. The report was still open after an August 9, 2026 update. Teams using that chart shape should reproduce SSL database startup before committing a migration window. Disabling certificate checks is not a sound acceptance test.
Wiki.js earns its footprint when you need the whole application
A clean source install that ends at 1,924 MB is difficult to justify for a small public manual maintained through pull requests. MkDocs fits that case with static output and no application database. BookStack offers a more prescribed book-and-chapter model, while Docmost focuses on collaborative workspaces. Wiki.js is the better fit when one deployment must cover browser editing, granular access, login integrations, page history, and storage copies.
The 28,949-star count tells you the audience is large. Your operating needs should decide. A team already running PostgreSQL and a reverse proxy can absorb Wiki.js more easily, and the 74-second build proves the measured commit compiles in a clean Node 22 container. Contributors still face the 122 lint errors that stopped our test command. Trial the editors and permissions with real users, test the v3 parity list against your modules, and keep the database on the supported upgrade path.

