Skip to main content

Zentrales Story-Outline-Framework fuer alle iil-Platform-Applikationen

Project description

iil-outlinefw

Story Outline Framework for AI-assisted creative writing.

Pure Python — no Django, no DB dependency in the core.

Part of the iil- platform package family alongside iil-aifw, iil-authoringfw, iil-promptfw.

Install

pip install iil-outlinefw
# or with LLM support:
pip install iil-outlinefw[aifw]

Features

  • 5 story frameworks: Three-Act, Save the Cat, Hero's Journey, Five-Act, Dan Harmon Story Circle
  • Beat definitions with act position (0.0–1.0), tension level, emotional arc
  • OutlineGenerator: LLM-based outline generation via any iil-aifw-compatible router
  • parse_nodes(): Robust JSON parser for LLM responses (handles fencing, <think> tags, leading text)
  • Pydantic schemas: OutlineNode, OutlineResult, ProjectContext
  • Django adapter in outlinefw.django_adapter (optional, no hard dependency)

Quick Start

from outlinefw import OutlineGenerator, FRAMEWORKS
from outlinefw.schemas import ProjectContext

gen = OutlineGenerator(my_llm_router)

ctx = ProjectContext(
    title="My Novel",
    genre="Thriller",
    description="A story about ...",
)

result = gen.generate(ctx, framework="save_the_cat", chapter_count=15)
for node in result.nodes:
    print(f"{node.order}. {node.title} [{node.beat}]")

Frameworks

Key Name Beats
three_act Drei-Akt-Struktur 7
save_the_cat Save the Cat 15
heros_journey Heldenreise 12
five_act Fuenf-Akt-Struktur 5
dan_harmon Dan Harmon Story Circle 8

Architecture

src/outlinefw/
    __init__.py        # Public API
    schemas.py         # Pydantic: OutlineNode, OutlineResult, ProjectContext
    frameworks.py      # FRAMEWORKS dict + BeatDefinition TypedDicts
    generator.py       # OutlineGenerator (LLMRouter Protocol)
    parser.py          # parse_nodes() -- robust LLM JSON parser
    django_adapter.py  # Optional Django bridge (override in host app)

Used By

  • writing-hub — outline generation + standalone Outlines section
  • travel-beat — scene-based story planning (migration planned)
  • bfagent — advanced outline handlers (migration planned)

Part of the iil- Platform

Package Purpose
iil-aifw LLM routing (DB-driven)
iil-promptfw Prompt templates (Jinja2)
iil-authoringfw Authoring schemas (chapters, style)
iil-outlinefw Story structure + outline generation
iil-weltenfw WeltenHub REST client

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iil_outlinefw-0.1.0.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iil_outlinefw-0.1.0-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file iil_outlinefw-0.1.0.tar.gz.

File metadata

  • Download URL: iil_outlinefw-0.1.0.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for iil_outlinefw-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9fd4edf7c552539d2cb07398deb2acc5594d96c3fe7a441262820ea81faefaac
MD5 b5e1429d6a17a2af2bf78693aed3d8de
BLAKE2b-256 94e3ed46e7699864599005175b92c200ea3998384e6ea13b1f5aa230d5517a64

See more details on using hashes here.

Provenance

The following attestation bundles were made for iil_outlinefw-0.1.0.tar.gz:

Publisher: publish.yml on achimdehnert/outlinefw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iil_outlinefw-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iil_outlinefw-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for iil_outlinefw-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cecfa946a4abdea4f44d3bc6a20a9c26624cd9ca6577f473863bebed5e476374
MD5 25e912887f0f0ad6c7d56b52289d5664
BLAKE2b-256 6485299072ac69c210835de19e161aa8e68361f48f925da1b27713986b84b8c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for iil_outlinefw-0.1.0-py3-none-any.whl:

Publisher: publish.yml on achimdehnert/outlinefw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page