Just a databaseless markdown flat-file wiki engine.
Project homepage: https://www.wikidocs.app
Please consider supporting this project by making a donation via PayPal
- Open source
 - Plain text files
 - No database required
 - Markdown syntax
 - Editor full WYSIWYG
 - Support for math KaTeX
 - Unlimited page revisions
 - Uploading and downloading Attachments
 - Uploading images (also from clipboard)
 - Content can be categorized in namespaces
 - Automatic generated index and sitemap
 - Public and private browsing
 - Syntax highlighting
 - Multi language
 - Dark mode
 - Sitemap
 - and many more...
 
Try the demo playground at: http://demo.wikidocs.app
Authentication code is: demo
Download the lastest release or clone the repository with git clone https://github.com/Zavy86/wikidocs.git
There is a Docker image that sets up Wiki|Docs with Apache2 and PHP automatically.
docker run -d -p 80:80 zavy86/wikidocs
docker run --name wikidocs -d -p 80:80 -v /path/to/local/wikidocs/datasets/or/volume:/datasets -e PUID=1000 -e PGID=1000 zavy86/wikidocs
version: '3'
services:
  wikidocs:
    image: zavy86/wikidocs
    environment:
      - PUID=1000
      - PGID=1000
    ports:
      - 80:80
    volumes:
      - /path/to/local/wikidocs/datasets/or/volume:/datasets
- The 
setup.phpscript will automatically create bothdatasets/config.inc.phpand.htaccessfiles 
- Copy the configuration sample file 
cp config.sample.inc.php datasets/config.inc.php - Edit the configuration file 
nano datasets/config.inc.php - Create the 
.htaccessfile like this: 
<IfModule mod_rewrite.c>
	RewriteEngine On
	RewriteBase /
	RewriteCond %{REQUEST_URI} \.md$ [NC]
	RewriteRule ^.*$ / [R=301,L]
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteRule ^(.*)$ index.php?doc=$1 [NC,L,QSA]
</IfModule>
- Make sure that RewriteBase is the same as the PATH in the configuration file included trailing slashes
 
- Use this as Nginx configuration for WikiDocs:
 
location ~* \.(css|js|jpg|jpeg|png|gif|ico|svg)$ {
  try_files $uri =404;
  add_header Cache-Control "public, max-age=3600";
}
location ~* \.md$ {
  return 301 /;
}
location / {
  if (!-e $request_filename){
    rewrite ^/(.*)$ /index.php?doc=$1 last;
  }
  try_files $uri $uri/ =404;
}
- Copy the configuration sample file 
cp config.sample.inc.php datasets/config.inc.php - Edit the configuration file 
nano datasets/config.inc.php 
You can customize the default template by creating the file styles/styles-custom.css.
Manuel Zavatta
- Amin Persia
 - Alex Meyer
 - Micha
 - Bo Allen
 - Jv3ga
 - Sam
 - kevwkev
 - ะกะตัะณะตะน ะะพัะพะฝ
 - Nicolas Prenveille
 - Antonio Rodrigues
 - Miguel Renato
 - Alain Martini
 - Davide Visentin
 - Christian Weber
 - Petr Husรกk
 - Oliver Lehmann
 
Code released under the MIT License
