HimeWiki - A simple wiki engine with AI moderation

HimeWiki is a simple wiki engine built with Go + PostgreSQL.
It features a minimal markup language called Nomark and optional AI-based moderation.

Released under the MIT License.


Features

  • Lightweight - runs as a single binary
  • Nomark Markup - a simple custom markup language (Markdown / Creole planned)
  • PostgreSQL Storage - stores both page content and images in the same DB
  • Optional AI Filter - integrates with OpenAI API for spam filtering and style unification

Requirements

  • Go 1.24 or later
  • PostgreSQL 15 or later
  • Tested on Linux and OpenBSD
  • Not tested on macOS, but expected to work anywhere Go and PostgreSQL are available

Installation

git clone https://tea.kareha.org/pot/himewiki.git
cd himewiki
make

This will build the himewiki binary.


Database Setup

Create a PostgreSQL database named himewiki:

createdb himewiki

Tables and indexes will be created automatically on the first run.


Configuration

Copy the example config and edit it:

cp config.yaml.example config.yaml

(!) config.yaml must exist in the current working directory.

Basic Example

app:
  mode: "devel"
  addr: ":4444"

database:
  host: "localhost"
  port: 5432
  user: "hime"
  password: "SuperStrongPassw0rd"
  name: "himewiki"
  sslmode: "disable"

site:
  base: "https://wiki.example.org/"
  name: "HimeWiki"
  card: "https://icon.example.org/hime/card.png"

AI Filter (Optional)

Enable AI filtering for posts and images by setting the OpenAI API Key.
To disable a filter, set agent: "nil".

filter:
  agent: "ChatGPT"   # use "nil" to disable
  key: "(Your OpenAI Key Here)"
  system: "You are a wiki content filter..."
  prompt: "Please rewrite in mild style..."

image-filter:
  agent: "ChatGPT"   # use "nil" to disable
  key: "(Your OpenAI Key Here)"
  max-length: 4194304
  max-size: 512

Run

./himewiki

Then open your browser at http://localhost:4444/.


License

MIT License

Author: Aki Kareha aki@kareha.org


For Researchers

Although HimeWiki is a hobby project and intentionally kept simple,
its design may be of interest for academic research in fields such as CSCW, HCI, and NLP.

  • CSCW: collaborative editing systems and AI-assisted cooperation
  • HCI: user experience and interaction with AI-mediated content
  • NLP: style transfer, politeness adjustment, and malicious-to-benevolent text transformation

If you are a researcher looking for an experimental platform, feel free to fork this project
and extend it for your study.

HimeWiki itself will remain minimal, but we encourage forks to explore research-oriented features such as:

  • logging raw user input (before AI filtering)
  • tracking user behavior for analysis
  • comparing AI-filtered vs. original edits
  • experimenting with different filtering prompts and styles

We would be delighted if HimeWiki could serve as a starting point for future studies.

Description
No description provided
Readme MIT 3.6 MiB
Languages
JavaScript 86.1%
CSS 11.9%
Go 1.8%
HTML 0.2%