A simple wiki built around the standard PHP Markdown class.
Currently I've hacked the link handling methods in the markdown class so that relative paths are treated as wiki page references, but in all cases this relative path is treated as fixed from the wiki root. This hacking should probably be done by extending the Markdown class and overriding or wrapping the necessary methods.
So a link syntax of [My page](myDir/myPage)
will be treated as a wiki link and linked to the page {$wikibase}/myDir/myPage}
, so looking for a file called myPage.markdown in the directory myDir which is a sub-directory of the document directory.
server {
listen 80;
server_name examplek.com;
root /var/www;
index index.php index.html index.htm;
location ~ /markdown/ {
try_files $uri /markdown.php?$args;
include fastcgi_params;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}
location ~ \.php$ {
try_files $uri /index.php;
include fastcgi_params;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}
access_log /var/log/www/access.log;
error_log /var/log/www/error.log;
}
- Specifying a stylesheet
- Extract topmost header in document for use as a title
- Error message handling
- Documentation of install
- Version control. Choice between git and self-versioning
- Override layout rendering with templates
- Solve mod_rewrite baseUrl - maybe an extra config?
- History and rollback
- Allow translations of interface (how are we doing UTF-8 wise?)
- Search
- Recent changes page
- Meta information: categorising, tagging, document title, author
- Improve test coverage of MarkdownWiki class
- Tighter/more secure file-update/conflict checking
- Documentation of layout templates / accessible data structures
- REST-based API that deals with raw markdown
- Figure out a better way of extending the base markdown class.
- Authentication / login
- Export/import markdown documents
- sub-content / shared modules
- Navigation items
- Other text-format types ( textframe or textile )