kumbuka

module
v0.37.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2026 License: Apache-2.0

README

Kumbuka

Keep your knowledge close.
A small, self-hosted, Markdown-first wiki for documentation.

Kumbuka is a self-hosted knowledge platform backed by PostgreSQL. It provides a clean place for documentation, notes, and team knowledge while keeping your data under your control.

For installation, configuration, authentication, plugins, and administration, see the Kumbuka documentation.

Quick start

Start Kumbuka with Docker Compose:

docker compose -f deploy/compose.yaml up -d

Then open:

http://localhost:8080

On a fresh database, Kumbuka will guide you through creating the first administrator.

Example Kubernetes manifests are available in deploy/kubernetes.

You can also run the server directly:

kumbuka \
  --database-url 'postgres://USER:PASS@HOST:5432/kumbuka?sslmode=disable' \
  --listen-address 0.0.0.0:8080 \
  --public-url http://localhost:8080

Configuration

Kumbuka can be configured using command-line flags or environment variables. Environment variables use the KUMBUKA__ prefix.

Flag Environment variable Default
--listen-address KUMBUKA__LISTEN_ADDRESS 127.0.0.1:8080
--public-url KUMBUKA__PUBLIC_URL http://localhost:8080
--route-prefix KUMBUKA__ROUTE_PREFIX empty
--database-url KUMBUKA__DATABASE_URL —
--read-only KUMBUKA__READ_ONLY false

For all available settings and deployment options, see kumbuka.me.

Ecosystem

License

Licensed under the Apache License, Version 2.0.

Directories

Path Synopsis
cmd
kumbuka command
internal
app
application/portablearchive
Package portablearchive coordinates portable archive restoration across application capabilities.
Package portablearchive coordinates portable archive restoration across application capabilities.
credential
Package credential contains reusable local-credential policy and hashing primitives.
Package credential contains reusable local-credential policy and hashing primitives.
flags
Package flags parses deployment-level configuration for the Kumbuka server.
Package flags parses deployment-level configuration for the Kumbuka server.
http/response
Package httpresponse writes shared HTTP response formats used across transport layers.
Package httpresponse writes shared HTTP response formats used across transport layers.
i18n
Package i18n provides request-localized interface messages for Kumbuka.
Package i18n provides request-localized interface messages for Kumbuka.
markdownurl
Package markdownurl locates resource URL destinations without rewriting Markdown source syntax.
Package markdownurl locates resource URL destinations without rewriting Markdown source syntax.
metrics
Package metrics exposes Kumbuka's built-in Prometheus instrumentation.
Package metrics exposes Kumbuka's built-in Prometheus instrumentation.
pdf
Package pdf sends standalone page documents to an external PDF renderer.
Package pdf sends standalone page documents to an external PDF renderer.
pluginupdate
Package pluginupdate discovers and downloads first-party Kumbuka plugin updates.
Package pluginupdate discovers and downloads first-party Kumbuka plugin updates.
portable
Package portable defines Kumbuka's versioned, instance-portable archive format.
Package portable defines Kumbuka's versioned, instance-portable archive format.
route
Package route generates deployment-local browser URLs.
Package route generates deployment-local browser URLs.
runtimeinfo
Package runtimeinfo maps deployment-owned process configuration to administrator-safe presentation data.
Package runtimeinfo maps deployment-owned process configuration to administrator-safe presentation data.
secrets
Package secrets encrypts sensitive application settings with a deployment-managed key.
Package secrets encrypts sensitive application settings with a deployment-managed key.
pkg
ascii
Package ascii contains predicates for the ASCII character classes used by Kumbuka.
Package ascii contains predicates for the ASCII character classes used by Kumbuka.
icons
Package icons exposes the icon catalogs used by the Kumbuka interface.
Package icons exposes the icon catalogs used by the Kumbuka interface.
mention
Package mention finds Kumbuka @username references in authored text.
Package mention finds Kumbuka @username references in authored text.
pagemove
Package pagemove contains pure page-path rules shared by application workflows and persistence transactions.
Package pagemove contains pure page-path rules shared by application workflows and persistence transactions.
plugin
Package plugin defines Kumbuka's in-process module contracts.
Package plugin defines Kumbuka's in-process module contracts.
plugin/wasm
Package wasm adapts untrusted WASI reactors to Kumbuka's module contracts.
Package wasm adapts untrusted WASI reactors to Kumbuka's module contracts.
pluginbrowser
Package pluginbrowser defines the core-owned, isolated browser module surface.
Package pluginbrowser defines the core-owned, isolated browser module surface.
plugincap
Package plugincap adapts already-authorized application data to public wire values.
Package plugincap adapts already-authorized application data to public wire values.
pluginusage
Package pluginusage defines derived page metadata used to select source-aware plugin modules without making Markdown depend on persistence details.
Package pluginusage defines derived page metadata used to select source-aware plugin modules without making Markdown depend on persistence details.
renderprofile
Package renderprofile collects opt-in request and render timing diagnostics without coupling HTTP, Markdown, and WASM instrumentation to each other's logging.
Package renderprofile collects opt-in request and render timing diagnostics without coupling HTTP, Markdown, and WASM instrumentation to each other's logging.
reviewsuggestions
Package reviewsuggestions applies persisted page-review suggestions to immutable Markdown snapshots.
Package reviewsuggestions applies persisted page-review suggestions to immutable Markdown snapshots.
revision
Package revision compares persisted page revisions for display.
Package revision compares persisted page revisions for display.
searchquery
Package searchquery parses Kumbuka's user-facing page search language.
Package searchquery parses Kumbuka's user-facing page search language.
utils
Package utils provides small, dependency-free helpers shared across Kumbuka.
Package utils provides small, dependency-free helpers shared across Kumbuka.
Package plugins supplies bundled plugin distribution bytes, not a separate plugin runtime.
Package plugins supplies bundled plugin distribution bytes, not a separate plugin runtime.
scripts
generate-icons command
Command generate-icons creates Kumbuka's Lucide icon picker catalog.
Command generate-icons creates Kumbuka's Lucide icon picker catalog.
test
browser/plugins-admin-server command
A loopback-only, in-memory fixture for the plugin administration browser test.
A loopback-only, in-memory fixture for the plugin administration browser test.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL