build | ||
modules | ||
.gitignore | ||
.travis.yml | ||
build.bat | ||
build.php | ||
build.sh | ||
core.php | ||
download.php | ||
Module_API_Docs.md | ||
module_index.json | ||
pack.php | ||
README.md | ||
settings.fragment.php | ||
start-server.bat |
Pepperminty Wiki
A Wiki in a box
Pepperminty Wiki is a complete wiki contained in a single file, inspired by @am2064's Minty Wiki.
Screenshots
Above: A Main Page with the sidebar enabled.
Features
- Configurable settings
- User login system
- Page creation
- Sub pages
- Markdown-powered syntax
- Internal links
- Printable page view
- Customisable theme
- Basic 'search' bar
- (Optional) Sidebar with a tree of all the current pages
- List of all pages & details
- Inbuilt help page
Demo
A Live demo of the latest stable version can be found over at my website
Getting Started
Requirements
- PHP-enabled webserver
- PHP session support (for logging in, see here for more information)
- Write access to own folder (only for editing)
Getting your own copy
Setting up your own copy of Pepperminty Wiki is easy. Since Pepperminty Wiki works on a module based system, all you need to do is choose the modules you want installed, and then configure your new installation so that it fits your needs. There are several ways to do this:
Method 1: Using the latest pre-built stable release
If you want a pre-built stable version, then you can use the latest release. It has a changelog that tells you what has changed since the last release, along with a pre-built version with all the latest modules.
Method 2: Grabbing the pre-built verion from the repository
If you're feeling lazy, you can grab the bleeding-edge version from this respository, which comes with all the latest modules. You can get it here.
Method 3: Using the online downloader
Pepperminty Wiki has a downloader that you can use to select the modules you want to include in your install. The online downloader will give you the latest stable release. You can find it here.
Method 3.5: Using the downloader offline
You can also you the downloader offline. Simply clone this repository to your web server and then point your web browser at your.server/path/to/perppminty/wiki/download.php
.
Method 4: Building your own from source
Pepperminty Wiki can also be built from source (and I do this all the time when testing). Start by cloning the repository. Then go into the modules
folder and append .disabled
to the names of any modules you don't want to be included (e.g. modules/page-edit.php
would become modules/page-edit.php.disabled
). Then follow the instructions for your platform:
Windows
Simply run the build.bat
script in the root of the repository. It will handle everything for you.
Linux and Everyone Else
Run the following commands from the root of the repository in order, adjusting them for your specific platform (these are for a standard Ubuntu Server install):
rm build/index.php
php rebuild_module_index.php
php build.php
Here's an explanation of what each command does:
- Deletes the old
index.php
in the build folder that comes with the repository - Rebuilds the module index that the build scripts uses to determine what modules it should include when building
- Actually builds Pepperminty Wiki. Outputs to
index.php
.
Configuring
To configure your new install, open index.php
in your favourite text editor and take a look at the comments. They should be self explanatory, but if you need any help, just contact me or open an issue.
Reference
I have documented (most of) the current API that you can use to create your own modules. You can find it in the Module_API_Docs.md file in this repository.
If you do create a module, I'd love to hear about it. Even better, send a pull request!
Real World Usage
None yet! Contact me or open an issue and tell me about where you are using Pepperminty Wiki and I will add you to this section!
Todo
Here's a list of things that I want to add at some point (please feel free to send a pull request and help out!).
- Page history
- Password changing
- Intelligent auto-updating system that doesn't wipe your settings / module choices
- Make links to non-existent pages red (#18)
- Optional module support (#10)
- Redirect pages (#14)
- ...?
Is the feature you want to see not on this list? Open an issue or send a pull request!