Clone wiki

eFiction / Home

This project is a fork of eFiction - a software for managing story archives - mainly intended for fanfiction. Therefore the software is licenced under the GNU GPL2 and provided without any warranties.

Warning: This software is under heavy development and has currently a lot of hard coded elements and is especially adjusted to the needs of the needs of the "Harry Potter Fanfiction Archiv". To make a more general version avaliable for other fandoms and archives we are currently looking for active developers to remove the hard coded dependencies and for extending the current functionality

The original software was based on eFiction 2.0.3 which was originally written by the following authors:

  • Rebecca Smallwood
  • Tammy Keefer
  • Michael Fressmann

Additionally, the following persons contributed to the software to adjust it to the special needs it fits today:

  • Daniel
  • Anne Weasley
  • Len
  • georgieteddy
  • Vivianne
  • Dumbledore
  • check (current maintainer)

To provide additional features, a number of third party software was included and modified where necessary:

Furthermore we make use of behat and its extensions to ensure a certain amount of functionality of the software.

We try to improve the source code using the tools from The PHP Quality Assurance Toolchain.

Since these components also includes a number of other software, we recommend to look on the respective web pages for further information.


  • php5 >= 5.2
  • php5 tidy
  • php5 imagick
  • php5 mycrypt
  • php5 mysql
  • MySQL >= 5.2
  • read and writable file system (is is currently not possible to store all content in the database)

Below you will find the setup manual in English and German

Setup manual

  • Upload the files to your webserver
  • Remove the .examples extension from the files in the /config folder (db.php.example, general.php.examble and naughtywords.php.example) and adjust them according to your needs
  • Create the database using the provided schema in the /database folder
  • (Restore a potential database backup)
  • Make sure the db.php in the /config matches your database settings
  • Copy existing stories to the story folder (default stories in Root folder)
  • Create the cache folder when not existing (default cache in Root folder)


  • Dateien auf den Webserver hochladen.
  • Entfernen der Endung .example von den Dateien im Ordner /config (db.php.example, general.php.examble, naughtywords.php.example)
  • Datenbank erstellen (Schema liegt im /database Ordner).
  • (Datenbankbackup in die Erstellte Datenbank eintragen.)
  • db.php im Ordner /config mit den Datenbankdaten anpassen.
  • (Evlt. vorhandene Stories in das Story-Verzeichnis laden (default ist stories im Root Verzeichnis).
  • (Cache-Ordner erstellen, falls nicht vorhanden (default ist cache im Root Verzeichnis).

In Development we provide a short introduction to the structure of the software.

Wiki help