FLESHNOTE / DOCS / EXPORT & BUILDS

Export Pipeline & Production Packaging

v1.3.0

Technical specifications for the multi-format book exporter, real-time WYSIWYG pagination preview, writing analytics, and the dual PyInstaller + Electron compilation pipeline.

Professional Multi-Format Export Engine #

FleshNote features a native Python publishing engine (backend/export/) generating print and digital editions with industry-standard typography:

Format Underlying Library Key Features & Specifications
Standard Manuscript (.docx) python-docx Industry-standard 1-inch margins, Times New Roman / Courier 12pt, double spaced, author header right-aligned with word count estimate on title page.
Print-Ready Book (.pdf) ReportLab / WeasyPrint Standard trade trim sizes (5.5"x8.5", 6"x9"), alternating running headers (Author / Chapter Title), outer gutter margins, and drop caps.
Reflowable E-Book (.epub) ebooklib Validated EPUB3 with embedded metadata, cover art generator, semantic navigation NCX, and custom CSS stylesheets.

Statistics & Writing Telemetry Dashboard #

The Analytics Dashboard (src/renderer/src/components/StatsDashboard.jsx) provides rich visual feedback on manuscript health:

  • Entity Presence Matrix: A 2D heatmap showing which characters appear together in chapters, identifying character isolation or neglected subplots.
  • Writing Velocity Radar: Tracks words per hour, daily active writing streaks, and target projection milestones.
  • Sensory Vocabulary Balance: A spider graph comparing the distribution of sight, sound, touch, smell, and taste across the entire manuscript.

PyInstaller & Electron Packaging Pipeline #

Building FleshNote for production requires compiling two separate runtimes:

  1. Backend Python Freeze: Bundles FastAPI and dependencies into a standalone native executable using PyInstaller (`backend/backend.spec`).
  2. Frontend Electron Packager: Bundles the Vite React app and Electron binaries with electron-builder.
Use the Automated Build Scripts Always use build.bat (Windows) or build.sh (macOS/Linux) to ensure the Python backend is frozen before the Electron installer is created.
Windows Build Command
# Execute the all-in-one compilation batch script
./build.bat
Linux / macOS Build Command
chmod +x build.sh
./build.sh linux    # Builds AppImage / Deb
./build.sh mac      # Builds DMG for macOS
On This Page