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.3.1.tar.gz (33.7 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.3.1-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for iil_outlinefw-0.3.1.tar.gz
Algorithm Hash digest
SHA256 72e0335a1352ad78827db19948cd17cb60edd34d6a71aece5b1bd0c67b1af472
MD5 28374f7806d42eb0b3c776b7634b4fb2
BLAKE2b-256 cde55c61670ad4c2ac453eb610b6af40f742074b47897504a388e921e2342415

See more details on using hashes here.

Provenance

The following attestation bundles were made for iil_outlinefw-0.3.1.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.3.1-py3-none-any.whl.

File metadata

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

File hashes

Hashes for iil_outlinefw-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d96ace3f2391598ddfd2bccb62bee7de2abe4e98dec7bf4438f3495374f27240
MD5 c266e4c88ab0af3d2ecf367b84861662
BLAKE2b-256 c72bc8a718380b4e984320355e9110409f8d8e6c15598bf7587bd53563f29a4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for iil_outlinefw-0.3.1-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