novelWriter is a plain text editor designed for writing novels assembled from many smaller text documents.
The tool addresses the challenge of organizing long-form writing projects by storing content as human-readable text files that can be easily version-controlled and synchronized. It uses a minimal formatting syntax inspired by Markdown and adds metadata capabilities for comments, synopsis, and cross-referencing. This approach keeps the project format simple and robust, avoiding proprietary formats that can become obsolete or difficult to migrate.
novelWriter suits authors who prefer working with plain text and want their projects to integrate naturally with version control systems and file synchronization tools. It is particularly well-suited for writers who organize their work across multiple smaller documents rather than a single monolithic file. The tool runs on Linux, Windows, and macOS through its Python and Qt6 implementation.
The project is maintained with deliberate care around code quality and direction. The maintainer requires feature discussions before pull requests are accepted and discourages reformatting or rewriting existing code without strong justification. The project does not accept AI-generated contributions. Fixes and patches are welcomed, as are contributions related to packaging and installation when discussed beforehand. The project maintains separate branches for ongoing development and stable releases, with fixes to current releases required to target the release branch rather than main.