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.1.tar.gz (18.3 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.1-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: iil_outlinefw-0.1.1.tar.gz
  • Upload date:
  • Size: 18.3 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.1.tar.gz
Algorithm Hash digest
SHA256 292e4df7b99f7f48bea5e463bd4e24944539c1f1f54af050a09cb973ca6daaad
MD5 4b6e5aa6479ce8d1e902ca2654211c68
BLAKE2b-256 489bdfb7b591f58113b118f9a7ad6ba59c817674045e48ffeab7a3e4d8a51416

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: iil_outlinefw-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.0 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4e649fc8e0d5ae8a21e79a0ea4ab7b40e0377bd3ed16105bcde585374991c7fc
MD5 6353f36754df82ebc9b958cbbf100118
BLAKE2b-256 4e9e8a13cdc22e9e85f3c4c454d0a4610f8b34196dfa5bf3daec165e28ebb1a6

See more details on using hashes here.

Provenance

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