growi is a free, open source documentation & knowledge base project written in TypeScript and released under MIT. It has 1,476 GitHub stars, 250 forks and 96 open issues, and was last pushed 18 hours ago. On this registry it ranks #69 of 100 tracked projects in Documentation & Knowledge Base, with 5 head-to-head comparisons available. It gained 6 stars over the last 30 tracked days.

What is growi?

GROWI is an MIT-licensed, self-hostable team wiki and knowledge base built in TypeScript that lets organizations write, organize, and co-edit documentation in markdown on their own infrastructure.

What it is

GROWI is a wiki engine and documentation platform for teams, written primarily in TypeScript and React and running on Node.js with MongoDB as its datastore. It organizes content as hierarchical pages authored in markdown, so a team builds a tree of spaces, sections, and articles rather than scattering notes across flat folders. The project ships as a Docker image, supports docker-compose and an experimental Helm chart, and documents on-premise installation paths for Ubuntu Server and CentOS. Optional Redis and ElasticSearch components extend it, and a plugin ecosystem distributed under the growi-plugin keyword on npm and GitHub allows custom extensions.

The concrete problem it solves is the team that needs an internal wiki but cannot or will not hand its documentation to a hosted SaaS vendor. GROWI provides the collaboration surface — page trees, markdown editing, multi-user simultaneous editing, and enterprise authentication — inside infrastructure the organization controls. For existing users of Crowi, the project publishes a migration guide from Crowi on-premise, positioning GROWI as the successor path for that deployment style.

Key capabilities

  • Hierarchical markdown pages, with a hosted demo site for evaluating the page layout before installation.
  • Simultaneous editing by multiple people on the same page.
  • Authentication through LDAP and Active Directory, plus OAuth providers.
  • Single sign-on with SAML.
  • Slack and Mattermost integration, plus IFTTT.
  • Pluggable architecture; plugins discoverable on npm under the keyword growi-plugin and on GitHub under the topic growi-plugin.
  • Docker-ready and Docker Compose-ready distribution, with documentation for running multiple sites from one deployment and for HTTPS termination through a Let's Encrypt proxy integration.

Who uses it and how

  • Internal engineering and operations teams running a private wiki on their own servers, installed on Ubuntu Server or CentOS.
  • Organizations with existing directory infrastructure that need LDAP, Active Directory, OAuth, or SAML-based SSO rather than local accounts.
  • Teams that want chat-adjacent workflows, wiring page activity into Slack or Mattermost or triggering automation through IFTTT.
  • Operators running several distinct wiki sites from a shared installation, documented as a multi-app admin cookbook.
  • Kubernetes users who can adopt the Helm chart, noting the chart is marked experimental.

Getting started

Production startup is documented through the growilabs/growi Docker image and the docker-compose path in the admin guide. Kubernetes deployments can use the GROWI Helm chart, while bare-metal installs follow the Ubuntu Server or CentOS guides.

How it compares

The facts name no paid products that GROWI replaces, so a like-for-like commercial comparison cannot be made here. The only related tool named in the material is Crowi, for which GROWI publishes a migration guide from Crowi on-premise; apart from that lineage, GROWI stands alone in this registry.

When to use it — and when not to

A self-hoster must operate MongoDB, and optionally Redis and ElasticSearch, where full-text search requires ElasticSearch with the Japanese (kuromoji) and ICU analysis plugins installed. Development and builds additionally assume Node.js v24.x, pnpm 10.x, and Turborepo. Teams unwilling to run a database and a search cluster, or those who need only a handful of static pages, should look elsewhere; the Helm chart is explicitly experimental, so Kubernetes users should treat it as such.

project readme (upstream, from github) — read inline

Latest version Slack - Join US

Documentation / Demo

GROWI

docker pulls CodeQL Node CI for app development Node CI for app production

Demonstration

Table Of Contents

Features

Quick Start for Production

docker-compose

Helm (Experimental)

On-premise

Migration Guide from Crowi (en/ja) is here.

Configuration

See GROWI Docs: Admin Guide (en/ja).

Environment Variables

See GROWI Docs: Environment Variables (en/ja).

Development

Dependencies

  • Node.js v24.x
  • pnpm 10.x
  • Turborepo
  • MongoDB v6.x or v8.x

Optional Dependencies

Command details

command desc
npm run app:build Build GROWI app client
npm run app:server Launch GROWI app server
npm run start Invoke npm run app:build and npm run app:server

For more info, see GROWI Docs: List of npm Scripts.

Documentation

Contribution

Found a Bug?

If you found a bug in the source code, you can help us by submitting an issue to our GitHub Repository. Even better, you can submit a Pull Request with a fix.

Missing a Feature?

You can request a new feature by submitting an issue to our GitHub Repository. If you would like to implement a new feature, firstly please submit the issue with your proposal to make sure we can confirm it. Please clarify what kind of change you would like to propose.

  • For a Major Feature, firstly open an issue and outline your proposal so it can be discussed.
    It also allows us to coordinate better, prevent duplication of work and help you to create the change so it can be successfully accepted into the project.
  • Small Features can be created and directly submitted as a Pull Request.

Translations

Want to help translate GROWI into your language? No GitHub account is required. See Contributing to GROWI translations for how to join and submit translations.

Language on GitHub

You can write issues and PRs in English or Japanese.

Discussion

If you have questions or suggestions, you can join our Slack team and talk about anything, anytime.

License

Frequently asked questions

Is growi free to use?

growi is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does growi do?

:anchor: GROWI - Team collaboration software using markdown

What is growi written in?

growi is primarily written in TypeScript. Its source is publicly available at https://github.com/growilabs/growi, and it has 1,476 GitHub stars.