Skip to content

Latest commit

 

History

94 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Structura

License: MIT GitHub Release

Deutsche Dokumentation

Structura helps non-fiction authors organize large manuscripts chapter by chapter, review and check their writing, and guide the work through to export — without losing control of their own files.

It is a local Windows desktop application built with Free Pascal and Lazarus. Structura deliberately stays out of the way: it does not edit DOCX files, does not sync to any cloud, and keeps all project data in plain folders that remain readable without the app.

Download

Pre-built Windows binaries are available on the Releases page.

Download the latest Structura-vX.X.X-windows-x64.zip, extract it anywhere, and run Structura.exe. No installer required.

Windows SmartScreen warning: Because Structura is not commercially code-signed, Windows may show a "Windows protected your PC" warning on first launch. This is expected for unsigned open-source software. Click More infoRun anyway to proceed. The source code is fully available in this repository if you want to verify what you are running.

Getting started

On first launch, a three-step setup wizard guides you through the initial configuration:

  1. Root folder — choose a folder that will contain your book project subfolders, for example C:\Books. Structura scans this folder for existing projects on startup.
  2. Office tools — Word, LibreOffice, and SoftMaker TextMaker are detected automatically. Paths can be changed in Settings at any time.
  3. Done — the wizard shows what was found and you can start immediately.

To create your first project, click Neues Projekt, enter a title, and Structura creates a named subfolder with the full project structure.

For a step-by-step walkthrough see docs/first-steps.md.

Screenshots

Welcome screen

Project overview

New project dialog

Chapter view

What Structura does

  • create and open book project folders
  • manage chapters and divider sections
  • reorder chapters with drag and drop
  • store project notes and chapter notes as Markdown files
  • preview extracted text from .docx chapter files
  • open chapters in external editors
  • write in a distraction-free fullscreen mode (ZenWriter) with autosaved drafts
  • promote a ZenWriter draft into the chapter's .docx
  • detect optional office tools (Word, LibreOffice, TextMaker)
  • export a combined master document

0.1.0 is an early release focused on local desktop workflows.

ZenWriter (focused writing mode)

ZenWriter is a distraction-free, fullscreen writing surface for a single chapter. Open it from a chapter via Öffnen ▾ → Zenwriter starten.

  • Autosave to a draft. What you write is saved continuously to a separate Markdown draft next to the chapter (drafts/<id>.md) — the chapter's .docx is never touched until you decide. Ctrl+S forces a save; the previous draft is backed up once per session.
  • Draft indicator. When a chapter has a draft, Structura marks it with a dog-ear in the chapter list and a · Entwurf note in the chapter header, and word count / standard pages then reflect the draft.
  • Promote to DOCX. When the draft is ready, use Öffnen ▾ → Entwurf ins Kapitel-DOCX übernehmen (only enabled when a draft exists) to write the draft into the chapter's .docx. The previous .docx is backed up first, and the draft is cleared afterwards.
  • Appearance. Background image, text color, and text-area width are configured from the in-writer menu. Note: this menu is operated with the mouse — move the pointer to the left edge (or click the menu button) to open it; Esc also opens it.

What Structura is

  • a local-first manuscript cockpit for chapter-based book projects
  • a file-based organizer that keeps project data readable outside the app
  • a companion to Word, LibreOffice, TextMaker, or other external editors

What Structura is not

  • not a DOCX editor
  • not a cloud sync service
  • not a collaborative multi-user writing platform
  • not a pixel-perfect DOCX or PDF renderer

Core concepts

Each Structura project is a normal folder on disk. A typical project contains:

  • structura.json for metadata and structure
  • chapters/ for chapter files, usually .docx
  • notes/ for project and chapter notes in Markdown
  • backup/ for safety copies before risky file operations
  • preview/ for generated preview output
  • export/ for generated master exports

Structura supports two structural item types:

  • chapter for editable manuscript sections with file, status, and notes
  • divider for parts or separators without a chapter document

Platform and requirements

  • Windows desktop environment
  • Lazarus / Free Pascal toolchain for local builds
  • Lazarus package dependency: LCL
  • optional external office tools for editing or PDF workflows:
    • Microsoft Word
    • LibreOffice
    • SoftMaker TextMaker

Text preview is intended to work without these external office applications. PDF-related workflows are optional and currently depend on external tooling where available.

Build from source

  1. Install Lazarus with a matching Free Pascal toolchain on Windows.
  2. Open Structura.lpi in Lazarus.
  3. Build the project from the IDE.
  4. If Lazarus reports stale artifacts, clean local build outputs and rebuild.

The repository currently expects standard Lazarus project ingredients only:

  • Structura.lpi
  • Structura.lpr
  • *.pas
  • *.lfm
  • the standard LCL package

Units in active use include:

  • MainFormUnit.pas
  • ProjectDialogUnit.pas
  • ElementDialogUnit.pas
  • StructuraTypes.pas
  • ProjectStore.pas
  • DocxPreview.pas
  • DocumentWorkflow.pas
  • OfficeDetection.pas
  • AppSettings.pas
  • SettingsStore.pas
  • SettingsDialogUnit.pas
  • WorkflowButtonDialogUnit.pas

Repository layout

  • assets/ application assets such as icons and button graphics
  • docs/WORKLIST.md working roadmap and release checklist
  • SampleProject/ example project structure for contributors and testers

Preview, export, and external tools

Structura treats text preview as a core feature and PDF as optional:

  • text preview should remain available without LibreOffice
  • PDF generation currently relies on external office tooling when available
  • chapter editing happens in external applications, not inside Structura
  • office target paths can be overridden in the app settings
  • clipboard-based workflow buttons can open websites or tools such as Grammarly, LanguageTool, or ChatGPT
  • manual PDF creation outside the app remains a supported fallback

This keeps the app usable on machines that do not have a full office suite installed.

Sample project

SampleProject/ is included as a reference layout for contributors and testers. It demonstrates expected folders and files such as structura.json, chapters/, notes/, and generated export output. It is a working example, not a polished showcase manuscript.

Release notes and planning

Contributing expectations

This repository is still settling into its first public release shape. Contributions should keep documentation and behavior aligned:

  • do not present planned features as finished
  • keep README and changelog statements consistent with the repository contents
  • do not commit Lazarus build artifacts such as *.ppu, *.o, *.obj, *.compiled, or built executables

See .gitignore for the expected ignore rules.

License

Structura is licensed under the MIT License.

See LICENSE for the full license text.

Button icons from Streamline Ultimate Color via Iconify, licensed under CC BY 4.0.

About

Local-first manuscript cockpit for chapter-based book projects. Built with Free Pascal / Lazarus.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages