Skip to main content

Django Fiction Outlines

https://badge.fury.io/py/django-fiction-outlines.svg https://github.com/maceoutliner/django-fiction-outlines/actions/workflows/tests.yml/badge.svg?branch=master https://coveralls.io/repos/github/maceoutliner/django-fiction-outlines/badge.svg?branch=master Documentation Status

A reusable Django app for managing fiction outlines. Part of the broader maceoutliner project.

Documentation

The full documentation is at https://django-fiction-outlines.readthedocs.io.

Quickstart

Install Django Fiction Outlines:

pip install django-fiction-outlines

Add it and dependencies to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'taggit',
    'rules.apps.AutodiscoverRulesConfig',
    'fiction_outlines',
    ...
)

Add rules to your AUTHENTICATION_BACKENDS:

AUTHENTICATION_BACKENDS = (
    'rules.permissions.ObjectPermissionBackend',
    'django.contrib.auth.backends.ModelBackend',
)

Unless you like to live dangerously, it is STRONGLY recommend you configure whichever database you use for outlines to have ATOMIC_REQUESTS to True.

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.postgresql",
        "NAME": "outlines",
        "ATOMIC_REQUESTS": True,
    }}

Add Django Fiction Outlines’s URL patterns:

from fiction_outlines import urls as fiction_outlines_urls


urlpatterns = [
    ...
    url(r'^', include(fiction_outlines_urls)),
    ...
]

Features

  • Provides models for managing series, outlines, characters, locations, and arcs.

  • Provides tools for managing multiple arcs within the context of a broader story outline.

  • Validates that arcs and outlines follow principles of MACE nesting, and seven point story structure.

  • Calculates estimated length of final manuscript based on complexity of outline.

  • Objects are associated with users to enable permission management.

    • NOTE: Django Fiction Outlines uses an object permission manager called django-rules. This allows extremely flexible permission schemes without crufting up your database or model logic. By default, fiction_outlines will restrict any view or editing to the owner of the object.

What It Doesn’t Do

  • Provide a full UI for managing the changes. An API and views are provided, but templates are very basic. It is expected that you will override the templates to match your overall project.

  • Outline the whole story for you.

  • Write the story for you.

  • Do your laundry.

Running Tests

Does the code actually work?

$ pip install -r test_requirements.txt
$ pytest
$ pytest --flake8

Credits

Tools used in rendering this package:

History

0.4.0 (2022-03-17)

  • Now requires Django > 3.2. Compatible through Django 4.0

  • Compatible with Python 3.9 and 3.10.

0.3.1 (2018-10-16)

  • Now compatible with both Python 3.7 and 3.6

0.3.0 (2018-08-08)

  • Support for Django 2.1

0.2.2 (2018-04-19)

  • Bug fix: override model_utils until my submitted bug fix for created/modified timestamps is merged upstream.

0.2.1 (2018-04-14)

  • Add created and modified auto timestamps to all tree models.

0.2.0 (2018-04-13)

  • Add export functions. A view is provided for users to export outlines as either OPML, JSON, or Markdown documents.

0.1.5 (2018-04-09)

  • Improvements to length estimate calculation.

  • Improvements to test coverage.

0.1.4 (2018-04-07)

  • Hotfix release for tag field issue.

0.1.3 (2018-04-07)

  • Bugfix release for migrations

0.1.2 (2018-04-02)

  • Bugfix release.

0.1.1 (2018-04-01)

  • First release on PyPI.

Metadata

Release files for django-fiction-outlines 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-fiction-outlines 0.4.0
File Size Uploaded Provenance Actions
django-fiction-outlines-0.4.0.tar.gz 38.7 kB Without provenance Details for django-fiction-outlines-0.4.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for django-fiction-outlines 0.4.0
File Interpreter ABI Platform Actions
django_fiction_outlines-0.4.0-py3-none-any.whl Python 3 none any Details for django_fiction_outlines-0.4.0-py3-none-any.whl

Total release size: 100.8 kB

Release files / django-fiction-outlines-0.4.0.tar.gz

Download URL django-fiction-outlines-0.4.0.tar.gz
Size 38.7 kB
Tags Source
SHA-256 checksum
How to use checksums
211b65234f4e12cbe82b9e5f0b0992af8163b06864bda9496faa4787aad8a690
BLAKE2b-256 checksum
How to use checksums
f4191ed87c0d706e24dc1b5c6261f7747d432815db89a30347194a9e2f797c86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

Release files / django_fiction_outlines-0.4.0-py3-none-any.whl

Download URL django_fiction_outlines-0.4.0-py3-none-any.whl
Size 62.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
69f88c2de7b27837dfc1387f5563ee6a38b64ad058dc0130ecaf1d77e20d0aed
BLAKE2b-256 checksum
How to use checksums
7f9f3f161179a714d58917cf42f7e84318d4b2d1cceb7f83ba0e8c157d2a4e51
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

Security for django-fiction-outlines 0.4.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page