/wiki

Wiki.js | A modern, lightweight and powerful wiki app built on NodeJS, Git and Markdown

Primary LanguageCSSGNU Affero General Public License v3.0AGPL-3.0

Wiki.js

Release License Backers on Open Collective Sponsors on Open Collective Downloads Docker Pulls
Build Status Codacy Badge Standard - JavaScript Style Guide Chat on Gitter Twitter Follow

A modern, lightweight and powerful wiki app built on NodeJS, Git and Markdown

Requirements

Wiki.js can run on virtually all platforms where Node.js can (Windows, Mac, Linux, etc.).

  • Node.js 6.11.1 or later
  • MongoDB 3.2 or later
  • Git 2.7.4 or later
  • An empty Git repository (optional)

Read the full prerequisites article for full details.

Docker

A docker Wiki.js image is available on Docker Hub:

Docker Image

You can also use a Dockerfile (see example) or Docker Compose (see example) to run Wiki.js.

Cloud Install

Deploy to Heroku

Docker Cloud, Azure, IBM Bluemix and more coming soon!

Demo

Wiki.js documentation site is actually running Wiki.js! Check it out ยป

We do not provide a demo with write access because of potential security / spam issues. The best way to try it is to install it on your own server / computer. It's easy!

Milestones

Current and upcoming milestones (major features only, see the changelog for complete list of features and bug fixes):

1.0.78 - Stable

Progress

Note: As 2.0 is under development, no new features are being developed in the 1.0 branch.

  • Fixed: Missing raven dependency for sentry logging
  • Fixed: Azure AD email getter

2.0.0 - Dev

Progress

Goals:

  • Decouple front-end and back-end completely.
  • All operations and queries will be made via GraphQL API.
  • New fully responsive layout, with better customization capabilities.
  • Full localization support, especially for non-latin languages.
  • Modular approach to auth, editors, logging, search and storage.

Release Date: Q2 2018

Breaking Changes:

  • MongoDB is being phased out in favor of PostgreSQL/MySQL/SQLite + Redis. An upgrade tool will be provided to migrate existing data to the new system.
  • Node.js 8.9 LTS or later is now the minimum supported version.

2.0 Milestone:

  • GraphQL API
  • Migrate to Sequelize + Redis datastore
  • Telemetry for analytics and crash reporting (Optional and fully anonymized)
  • Docker support + Auto compile/publish to Docker Hub
  • Support sub-directory installations (e.g. example.com/wiki)
  • Make use of all available CPU cores, distributed jobs queue
  • Modular authentication providers (+ new Auth0, Discord and Twitch providers)
  • Shared kernel for both app and setup
  • Improved installation wizard
  • Modular logging providers
  • New Login page
  • Two-Factor Authentication (2FA)
  • New Navigation Concept
  • New Admin Area
    • UI
    • System Info
    • Manager Groups ๐Ÿš€
    • Manager Users ๐Ÿš€
  • Modular editors
    • Markdown editor
      • Core Editor
      • Live Preview
      • Toolbar
    • Operations
      • Save
    • Dialogs
      • Properties
      • Access
      • Image + File Manager
  • Modular content parsers/renderers
  • Modular search engines
    • PostgreSQL search engine
    • Algolia
    • Elasticsearch
    • Solr
  • Modular storage engines ๐Ÿš€
    • Git
    • Local Disk
  • Multilingual versions of the same page (i18n)
  • History / Revert to previous version
  • Persist system settings to database instead of file-based
  • User Groups + Better permissions management
  • Tags per document / folder

๐Ÿš€ = Currently in development

2.1 Milestone

  • Comments / Discussion per document
  • Profile page per user
  • Diagrams as code (Mermaid module)
  • Themes
  • Additional storage engines
    • Dropbox
    • Google Drive
    • Amazon S3
    • Azure Blob Storage
    • DigitalOcean Spaces
    • Onedrive
    • Owncloud
    • SCP (SSH)
  • Modular Editor: TinyMCE (wysiwyg)

TBD Milestone

  • Better simultaneous user editing handling
  • High Availability support (multiple concurrent instances)

Gitter

Want to discuss features, ideas or issues? Join our gitter channel. We are very active and friendly!
Chat on Gitter

Twitter

Follow our Twitter feed to learn about upcoming updates and new releases!
Twitter Follow

Translations

We are looking for translators to make Wiki.js available in multiple languages. If your language is not listed below and would like to contribute to this project, contact us on our gitter channel and we'll provide you with the necessary tool to add translations, no coding required!

Languages that are already translated:

Special Thanks

Algolia
Algolia for providing access to their incredible search engine.

Browserstack
Browserstack for providing access to their great cross-browser testing tools.

Cloudflare
Cloudflare for providing their great CDN, SSL and advanced networking services.

DigitalOcean
DigitalOcean for providing hosting of the Wiki.js documentation site.

Contributors

This project exists thanks to all the people who contribute. [Contribute].

Backers

Thank you to all our backers! ๐Ÿ™ [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]