novelwriter  by Hurricane0698

AI writing engine for long-form novels

Created 4 months ago
251 stars

Top 99.8% on SourcePulse

GitHubView on GitHub
Project Summary

A self-hosted AI writing application, NovelWriter (NovWr), addresses the critical challenge of maintaining consistency and creator control in long-form fiction. It builds upon a structured "world model" to prevent plot holes and character drift, empowering authors by keeping them in command. This tool is ideal for novelists and web fiction creators who value deep world-building integrity and data privacy.

How It Works

NovelWriter eschews large context windows for a dynamic entity-relationship network, its core "world model." This system precisely injects only the necessary setting details (characters, factions, rules) into the AI's context for each writing segment, ensuring absolute consistency. It offers two interfaces: "Studio" for immersive drafting and "Atlas" for structured world-building management and conflict resolution. The "Copilot" functions as a controlled assistant, offering suggestions rather than autonomous generation.

Quick Start & Requirements

  • Primary Install: A one-click bash script (curl -fsSL https://raw.githubusercontent.com/Hurricane0698/novelwriter/main/install.sh | bash) automates Docker setup, CLI installation, and initialization.
  • Alternative: Manual Docker Compose setup is available by cloning the repository and configuring .env.
  • Prerequisites: Requires Docker and a compatible LLM API Key (e.g., OpenAI). Local development necessitates a Rust toolchain.
  • Access: The web UI is accessible at http://localhost:8000.
  • Docs: Installation script: https://raw.githubusercontent.com/Hurricane0698/novelwriter/main/install.sh.

Highlighted Details

  • World Model Engine: Dynamic entity-relationship network enforces setting consistency and character logic.
  • Dual Interface: "Studio" for writing, "Atlas" for world-building management and conflict detection.
  • Absolute Control: AI Copilot offers suggestions requiring explicit user approval.
  • BYOK & Privacy: Self-hostable via Docker; data remains local. Supports pluggable LLM engines.
  • Setting Extraction: Reverse-engineers text/files to build the world model.

Maintenance & Community

This project is maintained via GitHub Issues and Pull Requests. Community engagement is primarily through the GitHub repository. No specific community channels like Discord or Slack are listed.

Licensing & Compatibility

  • License: AGPLv3.
  • Compatibility: The AGPLv3 license imposes strong copyleft requirements, mandating that derivative works or distributed modifications must also be licensed under AGPLv3. This may impact integration with proprietary or closed-source systems.

Limitations & Caveats

The application is designed for self-hosting, requiring Docker and an LLM API key for operation. Its functionality is dependent on the availability and configuration of external LLM services or local models. The AGPLv3 license's copyleft nature necessitates careful consideration for commercial or closed-source integration.

Health Check
Last Commit

1 month ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
3
Star History
22 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.