Building Your Own Wiki Knowledge Base with Wikitten

wikittenphp wiki systemmarkdown knowledge baseself-hosted wikino database wiki
Published·Modified·

Wikitten is an open-source wiki knowledge management system developed in PHP. It supports Markdown syntax, requires no database, and automatically generates tree-structured directories, making it ideal for personal wiki knowledge bases.

Wiki Interface

Environment Requirements

  • PHP >= 5.3
  • Fileinfo extension support required

Installation

Download the source code from master.zip, place it in the root directory of your site, and extract it. Rename config.php.example to config.php, then modify or comment out the contents according to your actual situation. The configuration file explanation is as follows:

# Set the site title
define('APP_NAME', 'My Wiki');
# Select the home page file, must be located in the library folder (usually no need to modify)
define('DEFAULT_FILE', 'index.md');
# Set the document directory (usually no need to modify)
define('LIBRARY', '/path/to/wiki/library');
# Enable in-page editing for any file (unclear usage, keep default)
define('ENABLE_EDITING', true);
# Enable JSON Front Matter (metadata), allowing title/keywords settings for documents
define('USE_PAGE_METADATA', true);
# Use the dark theme
define('USE_DARK_THEME', true);
# Whether to display the bottom-left LOGO
define('USE_WIKITTEN_LOGO', false);

Wikitten requires pseudo-static support. If using Apache, no modification is usually needed as the .htaccess pseudo-static rules are built into the site root directory. If using Nginx, add the following configuration to the server block and reload Nginx:

location ~* ^/static/(css|js|img|fonts)/.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt|swf|pdf|txt|bmp|eot|svg|ttf|woff|woff2)$ {
    access_log off;
    expires max;
}
location / {
    rewrite ^(.*)$ /index.php last;
}

Finally, visit your domain to test. If you see the screenshot below, the installation was successful. If an error occurs, troubleshoot based on the prompt.

Installation Success

Usage Instructions

Wikitten supports Markdown syntax (programmers' favorite). Simply store your prepared Markdown files in the library directory, and it will automatically generate a tree structure, resulting in the view shown below.

Tree Structure

If you haven't found a suitable Markdown tool locally, you can check out:

Windows Markdown Editor: MarkdownPad Free Markdown Editor: Haroopad VNote: A Markdown Note App Suitable for Programmers

Wikitten template files are located in the views directory. You can modify them appropriately to add website statistics code, comments, and other personalized settings.

Wikitten has no database and no admin backend. Is uploading documents every time you make a modification inconvenient? Don't worry. You can use synchronization tools like Resilio Sync to automatically sync your local documents to the library directory, allowing for automatic updates, as shown below.

Auto Sync

Wikitten supports file/folder search, but unfortunately does not support file content search. We look forward to the author continuing to improve and optimize this in the future.

Search Feature

Summary

Wikitten supports Markdown syntax and is very convenient, but it does not support team collaboration, making it suitable only for individuals using it as a Wiki system. Additionally, it was found that Chinese characters may appear as garbled text in the Windows environment, while this issue does not occur on Linux servers.

Demo: https://wiki.xiaoz.me/ Project Address: https://github.com/victorstanciu/Wikitten Author Website: wikitten.vizuina.com