selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Mycorrhiza Wiki logo

Self-host Mycorrhiza Wiki

v1.15.1

Git-backed file-system wiki engine for personal knowledge

ReleaseOpen SourceAGPL-3.0
Updated2 years ago
LanguageGo
Setup difficultyEasy
Stars
378
Port
1737 (HTTP web interface)
Requires
Git
Install with Docker

What is Mycorrhiza Wiki?

Mycorrhiza Wiki is a lightweight wiki engine built for personal knowledge bases, digital gardens, and small team wikis. It keeps all content as plain files tracked by Git, so no database is required. Pages use a custom markup format called Mycomarkup and are organized as hyphae — units that can be nested, tagged with categories, and embedded into each other through transclusion. The interface offers keyboard shortcuts, web feeds for recent changes, Open Graph previews, and interwiki links. Access control is optional and can use local accounts or Telegram authentication. The server runs as a single Go binary on port 1737 by default. You can install it via Docker, system packages on several distributions, Homebrew, Nix, or by compiling from source with Go 1.22. The code is AGPL-3.0 licensed and actively developed.

Should you self-host Mycorrhiza Wiki?

Mycorrhiza Wiki scores 53/100 on selfhost.directory (how scoring works) and ranks #19 of 31 in Wikis. It has 378 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is easy: most people get it running in one sitting. It is AGPL-3.0-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is outline (78/100, 41 098 stars). It scores higher overall, so compare the two before you pick. See Mycorrhiza Wiki vs outline side by side.

Features

  • Basic Auth via reverse proxyConfigured at reverse proxy level, not in Mycorrhiza itself
  • Built-in authorization
  • Categories
  • Custom markup language (Mycomarkup)
  • File-based storage
  • Interwiki Links
  • Keyboard-driven navigation
  • Nested hyphae
  • Open Graph Support
  • Telegram loginExperimental feature, requires HTTPS and public domain
  • Transclusion
  • Web feeds

Mycorrhiza Wiki README

How to install Mycorrhiza Wiki

Install Mycorrhiza Wiki with Docker

Docker

FROM golang:alpine as build WORKDIR src COPY . . ENV CGO_ENABLED=0 RUN go build -o /out/mycorrhiza .

FROM alpine/git as app EXPOSE 1737

RUN apk add --no-cache curl HEALTHCHECK CMD curl -Ns localhost:1737 || exit 1

WORKDIR / RUN mkdir wiki COPY --from=build /out/mycorrhiza /usr/bin

WORKDIR /wiki VOLUME /wiki ENTRYPOINT ["mycorrhiza"] CMD ["/wiki"]

Dockerfile provided in repository; may need modification for production use

How to configure Mycorrhiza Wiki

  • AllowRegistrationfalseWhether you want unregistered visitors to be able to register themselves using the web form.

    Whether you want unregistered visitors to be able to register themselves using the web form.

    values: true, false

  • HeaderLinksHyphaThe name of the hypha where you can configure the header.

    The name of the hypha where you can configure the header.

  • HomeHyphahomeThe name your home hypha has.

    The name your home hypha has.

  • ListenAddr1737What port is used for serving the web interface of Mycorrhiza.

    What port is used for serving the web interface of Mycorrhiza.

  • LockedfalseWhether the users have to authorize first to access the wiki.

    Whether the users have to authorize first to access the wiki.

    values: true, false

  • NaviTitleIcon🍄The icon shown before the colon in the navigational titles above each hypha.

    The icon shown before the colon in the navigational titles above each hypha.

  • RegistrationLimit0There cannot be more registered users than this number. If the number is zero, there is no limit.

    There cannot be more registered users than this number. If the number is zero, there is no limit.

  • TelegramBotNameUsername of your bot, sans @.

    Username of your bot, sans @.

  • TelegramBotTokenToken of your bot.

    Token of your bot.

  • URLWhat URL is used for Opengraph and Web feed in the web interface.

    What URL is used for Opengraph and Web feed in the web interface.

  • UseAuthfalseWhether to enable authorization system.

    Whether to enable authorization system.

    values: true, false

  • UserHyphauThe name of the hypha that is parent of all user hyphae.

    The name of the hypha that is parent of all user hyphae.

  • UseWhiteListfalseWhether to use a whitelist to allow specific users in.

    Whether to use a whitelist to allow specific users in.

    values: true, false

  • WhiteListList of usernames to allow when whitelist is enabled.

    List of usernames to allow when whitelist is enabled.

  • WikiNameMycorrhiza WikiThe name your wiki has. It is shown in the header by default and in other places.

    The name your wiki has. It is shown in the header by default and in other places.

Mycorrhiza Wiki releases & version history

More in Wikis

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…