BookWriter

A full-stack application for crafting and visualizing complex narratives using generative AI.


Overview

BookWriter is designed for authors and storytellers to craft and visualize complex narratives. It manages a story's plot as a hierarchical graph — the backend handles plot generation, data persistence, and content serving, while the frontend provides an intuitive interactive experience.

Core Features

🧬

Generative Plot Development

Built with LangGraph for stateful, agentic plot creation and story arc management.

🗺️

Interactive Plot Visualizer

Advanced SVG-based component for exploring the entire plot structure with zoom, pan, and selection.

📝

Dynamic Text Editor

Reader view with chunked loading for a smooth experience with large texts.

📁

Project-Based Workflow

All work organized into projects with configurable settings and storage backends.

Architecture

Classic client-server model. The Python backend exposes a REST API for project management, plot graph operations, and content retrieval. The React frontend provides the complete UI with a project selector, main editor, plot visualizer, and settings pages.

Technology

Python FastAPI LangGraph HuggingFace React TypeScript Vite Tailwind CSS MongoDB