Skip to content
CMS для чтения и публикации фанфиков
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
tests Ignore tags order in tests Mar 5, 2019
.gitignore Update .gitignore Oct 5, 2018
.travis.yml Travis CI: use chromedriver 2.42 Oct 5, 2018 Update meta files Sep 15, 2017
CHANGELOG.rst Update changelog Mar 31, 2019 Small fix for Nov 14, 2018
LICENSE.txt Initial commit. Ported from ponyFiction (without django-admin) Mar 5, 2016
babel.cfg Makefile and improvements Mar 29, 2016
dev-requirements.txt Distribtion information has been updated for and twine May 20, 2018
dotenv.example.txt Some improvements for Flask 1.0: flask.cli instead of Flask-Script, b… May 21, 2018 Some improvements for Flask 1.0: flask.cli instead of Flask-Script, b… May 21, 2018
pylintrc Initial commit. Ported from ponyFiction (without django-admin) Mar 5, 2016
pytest.ini Use headless Chrome for tests by default Jan 23, 2018
setup.cfg Updated some meta files May 20, 2018 Updated some meta files May 20, 2018 Sphinx configuration moved to Python package Mar 29, 2016



Build Status

Library CMS on Python for fanfics. Currently in development.

Short feature list: fanfics with genres, characters and events; comments with trees; search (using Sphinx); user profiles with contacts; premoderation of fanfics; favorites and bookmarks; notices from administrator; PJAX-like loading of page content; customizable design; primitive plugin system.

CMS currently in Russian, and we would be grateful for the translation of all phrases in English.

Quick start

Install lxml. Then:

pip install mini_fiction
mkdir media
mini_fiction seed
mini_fiction createsuperuser
mini_fiction run

Website will be available at http://localhost:5000/, administration page is http://localhost:5000/admin/.

Flask uses production environment by default. If you want to use a development server, create .env file in your working directory and put some settings here:


You can override this file using native environment variables (example for bash):

$ export FLASK_ENV=production
$ mini_fiction run

Configuration file

Just copy to and edit it. Then run mini_fiction run in the same directory with this file: settings will be loaded automatically. Ensure that MINIFICTION_SETTINGS is not used in .env file. Alternatively you can put MINIFICTION_SETTINGS=local_settings.Local to .env file if you think that explicit is better than implicit.

If mini_fiction can't import module local_settings, try to set environment variable PYTHONPATH=. (don't forget export PYTHONPATH for unix shells).

If you want to change domain (e.g. or instead of default localhost:5000), change SERVER_NAME option.

You can run mini_fiction status to check some configuration variables.

Don't forget to change the SECRET_KEY option before using mini_fiction on production!

Search, avatars and captcha are disabled by default.

For more information see (in Russian).

You can’t perform that action at this time.