Storytelling: Turn Your Ideas Into Complete Narratives
Transform a simple story idea into a fully-written, multi-chapter narrative. WillWrite is an AI-powered storytelling partner that handles the heavy lifting—outline generation, chapter planning, scene development, and revision—so you can focus on your creative vision.
What It Does ?
Create complete stories in minutes. You provide a story prompt. The system generates:
- A structured outline with plot, characters, and themes
- Individual chapters with detailed chapter outlines
- Four polished scenes per chapter
- Multiple revision passes for consistency and quality
- Session persistence—pause and resume anytime
Powered by advanced AI orchestration. Built on LangGraph and LangChain with multi-LLM provider support, knowledge-base integration, and intelligent retrieval-augmented generation (RAG).
Getting Started
Installation
# Basic installation
pip install storytelling
# With full features (web fetching, local embeddings, cloud logging)
pip install storytelling[all]
Your First Story
# Create a prompt file
echo "A detective discovers a mysterious library" > my_prompt.txt
# Generate your story
storytelling --prompt my_prompt.txt --output my_story.md
Your completed story appears in my_story.md.
Using Your Own LLMs
# With local Ollama
storytelling --prompt prompt.txt \
--initial-outline-model "ollama://mistral@localhost:11434"
# With Google Gemini
storytelling --prompt prompt.txt \
--initial-outline-model "google://gemini-2.5-flash"
Key Features
Flexible AI Providers
- Google (Gemini, PaLM)
- Ollama (local models)
- OpenRouter (community models)
- Custom endpoints
Knowledge-Aware Generation
- Integrate your own knowledge bases
- Web content retrieval
- Semantic context enhancement
- Consistent worldbuilding
Session Management
- Pause and resume at any stage
- Checkpoint-based recovery
- Narrative branching
- Full generation history
Production Ready
- Comprehensive logging with Langfuse
- Type-safe with Pydantic
- Configurable for various use cases
- Extensible architecture
Command Line
storytelling --help # See all options
storytelling --prompt file.txt # Generate story
storytelling --list-sessions # See your past sessions
storytelling --resume <session-id> # Continue a session
Documentation
- Full Setup Guide: See
scripts/init.shfor environment setup - Architecture: Check
rispecs/directory for detailed specifications - Specifications:
RISPECS.mdcontains implementation architecture - Prompts & Models:
rispecs/Prompts.mdandrispecs/LLM_Provider_Specification.md
Development
# Setup development environment
./scripts/init.sh
# Run tests
make test
# Check code quality
make lint
# Build and release
make release-check
License
CC0-1.0 License - See LICENSE
Release files for storytelling 0.2.21
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| storytelling-0.2.21.tar.gz | 70.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| storytelling-0.2.21-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 142.9 kB
Release files / storytelling-0.2.21.tar.gz
| Download URL | storytelling-0.2.21.tar.gz |
|---|---|
| Size | 70.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2622e544afcdf8e2838c2f92f0f451f8b5c95bf034c71e9a8c674571c217f855
|
|
BLAKE2b-256 checksum How to use checksums |
1cc620b8b526f44c2714d0b7deddf3aa7328ecc54960f31f7c3c9323f3a397da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|
Release files / storytelling-0.2.21-py3-none-any.whl
| Download URL | storytelling-0.2.21-py3-none-any.whl |
|---|---|
| Size | 72.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c412ee6714468009eabcd44ccf068088594f14925ead66f0dd4c099abcf1b096
|
|
BLAKE2b-256 checksum How to use checksums |
23e464405440859568a0d7870e0c37be3d61998c428813d4b1bf6bb29b4f75bc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|