← all repositories
RhythmicWave/NovelForge

When your novel needs a database schema

A Chinese-language AI writing tool that treats fiction like structured data—cards, schemas, and all.

NovelForge
Velocity · 7d
+3.0
★ / day
Trend
steady
star history

What it does

NovelForge is a Python-based AI writing assistant for long-form fiction (think hundreds of thousands of words, not blog posts). It breaks novels into structured “cards”—characters, scenes, outlines, concepts—each defined by a JSON Schema that the LLM fills field-by-field in a streaming dialog. You review and confirm each card before it lands in your project.

The interesting bit

The project treats creative writing as a data engineering problem. It uses Pydantic-style schemas to constrain LLM output, a custom @DSL for cross-referencing cards, and a knowledge graph (SQLite or Neo4j) to track character relationships and world state across chapters. The “code-based workflow” system—Python-flavored scripts with special DSL markers—replaced an earlier DAG editor because the developers found it easier for AI agents to generate and validate.

Key highlights

  • Schema-first card generation: each card type has a defined structure, and AI fills it incrementally with user confirmation at each step
  • @DSL context injection: reference other cards precisely to maintain consistency across a long manuscript
  • Knowledge graph integration: track entities (characters, organizations, items, concepts) and their relationships; supports both SQLite and Neo4j backends
  • Workflow automation: code-style workflows with visual editing, including a “Workflow Agent” that writes workflow code from natural language descriptions
  • Word-count control modes: “prompt constraint” (cheaper, looser) or “control mode” (multi-round token budgeting for exact targets)
  • Review system: generates review drafts before committing them as structured “review result cards”
  • Mobile-responsive web UI with an “Ideas Workbench” for brainstorming across projects

Caveats

  • The README is entirely in Chinese; English support is unclear
  • Version 0.9.0+ broke backward compatibility with older databases (migration scripts are provided but “not guaranteed to succeed”)
  • ReAct mode for tool-calling is described as “roughly implemented” with potential bugs
  • The project is pre-1.0 (currently v0.9.5) with active bug-fixing in recent releases

Verdict

Worth a look if you’re writing long fiction in Chinese and have hit the limits of ChatGPT’s memory window—or if you’re curious about applying structured generation and knowledge graphs to creative work. Skip it if you need polished English-language support or a mature, stable database schema.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.