v0.3.2 ships the Project Bundle engine — package any project as a portable .p2q
file and share it with anyone running Paper2Quote 0.3.2+. Export multiple projects at once,
drop bundles right into the New Project wizard, and trust that a failed import rolls back
cleanly. Plus a new Sync Package action for files added to the project folder
outside the app, an attachment file type for documents like DWG and TXT, and a clutch fix for
the Dashboard's Project Status total which could read $0 when a project had missing FX rates.
✦ New
-
Project Bundle export — Right-click any project in the Hub to
export it as a
.p2q bundle. Bundles carry the full project — drawings,
scopes, items, quotes, document classifications, FX rates — and can be opened on
any Paper2Quote 0.3.2+ installation. Hub
-
Project Bundle import — Bring in a
.p2q bundle from
a teammate. Hash-checked on the way in, with clear prompts when the bundle's
project id collides with one you already have (replace, keep both, or cancel).
Hub
-
Bulk export — Multi-select projects in the Hub and export the
whole selection as separate
.p2q files in one go. Hub
-
Import from Bundle wizard tile — A third tile on the New Project
welcome step opens the bundle picker directly, so importing is just as fast as
starting from blank or a zip. Hub
-
Sync Package — Files added to a project folder outside the app
(Windows Explorer, Finder, or any external tool) can now be registered with one
click. The Package Editor scans the package root, picks up anything it doesn't
recognise, and repairs faulty registrations along the way.
Editor
-
Attachment file type — Non-drawing, non-image files like DWG,
TXT, ZIP, and so on now register as attachments alongside your drawings —
searchable, classifiable, and visible in the Package Editor, but ignored by the
Takeoff Editor's page-import flow. Editor
↑ Improved
-
Headless export — Export bundle is available on any project row,
whether or not the project is currently open. No need to mount a project first.
Hub
-
Tougher PDF page-count detection — PDFs that one reader can't
handle now retry through a secondary reader before failing. Documents that
previously registered as "Added — 0 pages" now register with the correct page
count. Editor
-
Circular Hub Projects selection — The header select-all and per-row
checkboxes on the Hub Projects tab match the rest of the Hub's circular selection
treatment. Hub
-
Portable document paths — The path a document is stored at is
now relative to the project package, so projects survive being moved between
machines or folders without losing track of their drawings.
Core
✓ Fixed
-
Dashboard Project Status total — The big number under Project
Status no longer reads $0 when one of the projects in the period has incomplete
FX rates. Affected projects are flagged inline so you can repair them in Details >
Context. Hub
-
New projects get sensible FX defaults — A new project always
starts with a usable set of currency rates, even when the workspace currency
list hasn't been customised yet. Core
-
Safe import rollback — A failed bundle import now cleans up
after itself. No half-imported folders, and replacing an existing project that
errors out late in the process restores it from the Recycle Bin automatically.
Hub
-
Imported packages are tidier — Materialised packages no longer
contain a leftover
bundle-manifest.json at their root, and there's no
stale launcher next to the new one. Core
-
Honest error messages on bad bundles — Bundles with a corrupted
internal record, a launcher that disagrees with its meta, or a missing
path-migration marker now surface a specific reason rather than failing silently.
Hub
-
Up-to-date export label — The right-click menu on a Hub Projects
row no longer says "Export bundle (coming in 0.3.2)" — the feature is here.
Hub
A small patch on the heels of v0.3.0 that lands the trust-killers from release-day testing —
project totals now include Block Count contributions, Undo no longer drops earlier edits, and
the auto-updater itself is healthy again. Plus drag-and-drop .zip onto the Package Editor and
the right-click menu is back on the Hub Projects tab.
✦ New
-
Drop a .zip onto the Package Editor — Drag any zip archive
straight onto a project's Package Editor and its supported files import in place,
with progress shown in the global toast. Editor
-
Right-click menu on the Hub Projects tab — Open, Delete (or
Restore / Permanent Delete in the Recycle Bin) are back on every project row. A
disabled Export bundle entry is visible as a placeholder; the bundle
engine ships in the next patch. Hub
-
Bulk actions on the Hub Projects tab — Select multiple projects
with the row checkboxes and a sticky action bar appears at the bottom for
Delete-all-selected (or Restore / Permanent-Delete in the Recycle Bin).
Hub
↑ Improved
-
Storage: change folder — The folder picker is back next to
the open-in-Explorer button on every Storage path setting, so you can both reveal
and reassign the folder. Hub
-
Scope-overlap picker — The picker now respects dark mode, shows
a colour swatch per row, and displays the measurement of the specific geometry you
clicked instead of the whole scope's aggregate. Editor
-
Geometry inspector header — Matches the scope inspector's chrome
for visual consistency. The control set below the header is unchanged.
Editor
✓ Fixed
-
Project totals now include Block Count — Hub Dashboard, Hub
Projects tab, and the Takeoff Project Info card now roll up Block Count instances
into the project total. Core
-
Undo no longer drops earlier edits — Pressing Ctrl+Z after a
burst of edits now reliably reverses just the most recent action, with no risk of
silently losing earlier work or producing a "ledger hash mismatch" warning.
Editor
-
Auto-updater works again — Update checks no longer fail with
"error decoding response body". This was already corrected on the live update
channel, but the in-app version that ships in 0.3.1 makes the fix permanent.
Core
-
Document fragments stay with the project — Imported document
fragments now save inside the project's own
.p2q folder. Existing
projects continue to load as before; new edits land at the new location.
Core
-
Delete a project that's open — Soft-deleting the currently-open
project no longer fails silently — Hub now prompts you to close it first.
Hub
-
Page-tree leaf selection — Clicking a sidebar leaf now also
navigates the canvas to that page's parent, not just selects the row.
Editor
-
Logs are bootstrapped on launch — A new app session writes a
"started" log line on boot, so the logs folder is created and visible from day one.
Core
v0.3.0 is the clean-slate rebuild of Paper2Quote. The release introduces the Package Editor —
a brand-new file-system applet that replaces flat image-fetch with a multi-document tree,
classification engine, and seven file-format viewers — alongside Multi-Quote per project,
page presentation (background, watermark, border), and a complete document-classification
engine. Plus dozens of refinements to every applet and the foundations that hold them
together.
✦ New
-
Package Editor — A brand-new applet for organizing the entire
tender package: drawings, specs, schedules, and reference docs in one visual file
tree. Classify, mark important, and route any file straight into the Takeoff
Editor. Editor
-
Inline file viewers — The Package Editor's preview pane renders
seven formats inline: PDF (with selectable text + zoom), images,
CSV (sortable + filterable), XLSX (full sheet tabs), DOCX (page-framed), DXF, and
DWG — plus an "Open externally" escape hatch on every viewer. Editor
-
Document Classification — Imported PDFs are auto-classified into
Drawing / Specification / Schedule / Transmittal / Submittal / RFI / Contract and
five more, with confidence scores and matched signals shown in the file tree. The
classifier recognizes ISO 19650, NCS, and CSI MasterFormat naming conventions and
falls back to natural-language analysis. Click any badge to manually override; the
override sticks against future re-runs. Editor
-
Mark Important — Right-click any document → Mark as Important;
the file gets a yellow tint behind its icon and surfaces in priority sort orders.
Editor
-
Multi-Quote per project — Add, duplicate, rename, and delete
Quotes within a single project. Each Quote keeps its own page layout, watermark,
and stack tree. The Quote selector lives in the editor's left-sidebar header.
Editor
-
Quote Page Presentation — Background colour, watermark image,
and page border with per-page or all-pages scope. Watermarks can come from the
package input registry or be uploaded inline. Editor
-
Block Count drawing tool — A dedicated tool that drops a count
instance whose price is the prototype block's full cost × the click count. The
inspector shows live, multiplied cost. Editor
-
Last-drawn-block memory — Drawing a new scope automatically
inherits the last-drawn (or last-assigned) block, so you don't have to re-pick it
for every adjacent scope. Editor
-
Workspace default currency + project FX locking — Set the
default currency once at the workspace level. Each project either follows the
workspace rate or locks a snapshot of FX rates at creation, with repair controls
for missing rates. Core
-
Unit-aware formulas + takeoff units — Per-item formula-input
UOMs let you write expressions where each input has its own unit; conversion
happens before costing. A project-level Preferred UOM control sets the display
defaults. Core
-
Pricing-source Item Group — Pick a default ItemGroup per project
that effective prices read from. Caches per-item resolved prices for stable
re-pricing across linked estimates. Core
-
Save-status pill — Live "Saving…" / "Saved" / "Save failed"
indicator above the editor. Failed pill is clickable for manual retry. Editor
-
Project Notes — Optional free-text notes field on every project;
shows as a one-line preview in the Hub Projects tab when present. Hub
-
Recently-used templates — Manage Templates and Quote Templates
panels show your last five applied templates in a "Recently used" sidebar. Hub
-
Construction Essentials seed — Fresh installs come with 116
seeded items and 60 seeded scope templates across Excavation, Concrete Works,
Masonry, Rebar, and more — enough to start estimating immediately without
cataloguing first. Hub
-
Phase & Trade groups — Workspace-tier classification
scaffolding for routing scopes and items. Configure once in Hub Settings; every
project inherits the same Phase / Trade options. Hub
-
Page tile rendering — Lower DPI thresholds for sharper rendering
at the zoom levels you actually use, plus on-demand high-resolution tier extraction
with a smooth crossfade transition. Editor
-
Faster PDF + zip imports — Lazy chunked extraction shows the
first page within seconds instead of waiting for the whole PDF. Zip caps raised
to 2 GB compressed / 10 GB decompressed with parallel extraction and
per-entry progress events. Core
-
Import progress toast — Collapsed-by-default global indicator
shows live per-import progress; expand to inspect every concurrent import. Persists
across Hub ↔ Editor route changes. The Takeoff sidebar shows pending pages as
italicised stub rows with per-doc progress, transforming into real pages as each
chunk completes. Editor
-
Resilient persistence — Project saves are now atomic
(tmp+rename) so a force-kill mid-write never leaves a corrupt or zero-byte project
file. An empty-write guard prevents accidental data loss when an autosave races
with project unmount. Core
↑ Improved
-
Reworked core architecture and interface — The foundation
underneath every estimate has been rebuilt from the ground up to clean up how
scopes relate to their items, and the app-wide interface — Hub layout, project
applets, libraries, onboarding wizard, and signed auto-updates — has been refined
in adaptation. The result is faster project loads, more reliable saves, cleaner
scope-to-item flow, and a calmer interface that scales to packages with
hundreds of drawings. Core
-
Cross-currency conversion across the cost graph — Item costs
in any currency now flow correctly through scope rollups, project totals, by-Type /
by-Scope / by-Block summaries, and dynamic Quote chips. Set your default currency
once at the workspace level and let the rest fall into place. Core
-
Quote Editor responsiveness — Toolbar interactions are 5–6×
snappier than the previous Quote Editor, so flipping between stacks, paper sizes,
and templates feels instant. Editor
-
Page Overlay placement — Pick a source page first, then click
once to drop an overlay at the cursor's centre. The overlay auto-sizes to match
the source page's real-world scale, eliminating the warping common in earlier
versions. Editor
-
Project statuses + types — The project lifecycle (Draft /
Active / Submitted / Lost / Won by default) and project type classification
arrays are now editable at the workspace level. Both surface in the Hub Projects
"By status" filter and the Dashboard breakdown chart. Hub
✓ Fixed
-
F5 crash on legacy projects — A scope-payload shape drift in the
duplicate-scope path could permanently brick a project. A read-side migration shim
now tolerates the legacy shape with one console warning, and the canonical shape is
enforced at the emit site. Editor
-
Wizard data loss on replay — Own Firm, companies, phases, and
trades set in the Project Creation Wizard now persist across reload (was emitting
in-memory state without ledger events). Hub
-
DRAFT vs Draft duplicate status — Three independent default-status
arrays in the codebase produced a duplicate row in the Hub Dashboard breakdown graph.
Canonical 5-entry array (Draft / Active / Submitted / Lost / Won) plus
case-insensitive comparators throughout. Hub
-
Soft-delete actually moves files — The Recycle Bin now physically
renames the project folder to
.trash/ on disk; restore and Empty Recycle
Bin do real moves and deletes. Hub
-
Markup of count geometries — Print SVG now honours the configured
shape (square / triangle / plus / star / circle) instead of always rendering a
circle. Editor
-
Page reimport cache sync — Deleting a page now clears the on-disk
tile cache, and re-imports use unique page IDs so single-page PDFs are no longer
permanently un-reimportable. Editor
-
Project Legend cost crash — Adding a Block to an Area scope no
longer crashes the legend renderer (a partial fake type-cast in the cost path
triggered a TypeError, which on next save could truncate the ledger). Editor
-
Item Summary by-Block totals — Cross-currency items now convert
correctly in the by-Block view (was showing PHP numbers under a USD symbol). Editor
-
Block prototype persistence — Flipping a Block to PROTOTYPE in the
sidebar now persists across reload (the ledger event was previously missing). Editor
-
Quote chip interaction — Indexed chips (Scope / Block / Category)
rebind cleanly when picked from the dropdown; chip dropdowns always open with an
empty-state hint when no data exists yet; "Reset Quote" actually resets the quote
content + chip instances now. Editor
-
Apply Quote Template overwrites — Applying a template now replaces
the active Quote (was appending invisibly behind the stale primary). Chip instances
replay correctly post-apply. Editor
-
Markup math separation —
priceMultiplier now inflates
the builder cost basis, not the markup amount; markup percentage reads as
markup% × builderTotal. Client-facing total is numerically unchanged.
Core
-
Hub Projects index + computed meta — Created projects now appear
in the Hub Projects list immediately, and project meta (price, scope count, geometry
count) refreshes on every save. Hub
-
Tile loading on Windows — Some Windows builds were silently 403-ing
every page tile request via a CSP scheme mismatch on the asset protocol. Resolved.
Core
-
Package Editor lag on first open — Three experimental analysis
features (auto-classification, indexing, reference linking) defaulted ON and ran on
every project load. Defaults flipped to OFF; opt-in is via the Experimental Analysis
Settings panel. Editor
Focused on the Quote Template editing experience — the Stack Inspector is now a dedicated right-side
panel, inline stack editing is more accessible, and rich text formatting is preserved correctly during
editing.
✦ New
-
Inspector Sidebar — The Stack Inspector has been separated from the
left sidebar into its own dedicated right-side panel for a less cramped editing
experience. Editor
-
Double-Click to Edit Stack — Double-clicking a stack on the Quote
Template canvas now opens it directly in the inline stack editor. Editor
-
Save Stack as Template — While editing a stack inline from a Quote
Template, you can now save it as a reusable Stack Template to your library. Editor
↑ Improved
-
Auto-Populated Inspector — Opening a stack for editing now
automatically selects the first section and highlights the Inspector panel so you can
start working immediately. Editor
-
Quick Tour Positioning — Coach-mark bubbles for the New Project and
Help buttons no longer render off-screen. Hub
✓ Fixed
-
Rich Text Line Breaks — Editing text in the Inspector or inline editor
no longer collapses paragraphs into a single line. Editor
-
Text Width During Editing — The text field no longer changes width
when switching between preview and edit mode, preventing unexpected text
reflow. Editor
-
Files from Earlier Versions — Project files saved under the previous
app name now import correctly after the rebrand. Core
Earlier releases
A guided first-run experience, automatic in-app updates, and a wave of editor improvements — including
undo/redo, rich text, dynamic data chips, and miscellaneous pricing — plus performance and reliability
fixes across the board.
✦ New
-
First-Run Setup Wizard — A guided onboarding experience walks new users
through company details, primary contact, phase & trade groups, and base currency on
first launch. Hub
-
Quick Tour — A re-triggerable spotlight tour (via Help in the Hub header)
highlights key areas of the app with animated coach-mark bubbles. Hub
-
Auto-Updater — The app now checks for new versions on launch. A
non-blocking banner notifies you when an update is available, with one-click download and
install. Core
-
Client Library — Store and manage client records with full contact
details, reusable across all projects. Hub
-
Contractor Library — Manage your contractor details in one place. Hub
-
Dynamic Chip System — Quote templates now support live data chips that
pull real project values (client name, scope prices, company details, etc.) directly into
document text — no more manual copy-pasting. Editor
-
Miscellaneous Pricing — Add one-off or catch-all cost lines to any quote
without needing a formal scope or item. Editor
-
Project Recycle Bin — Deleted projects are now moved to a recoverable
recycle bin instead of being permanently removed. Hub
-
Currency Settings — Configure your preferred base currency for all
projects directly from settings. Hub
-
Path & Storage Settings — Choose where Paper2Quote stores your
project files from the settings panel. Hub
↑ Improved
-
Quote Stack Architecture — Rebuilt the underlying Quote Stack from a flat
structure to a layered architecture, enabling more flexible document layouts and paving the
way for future stack types. Editor
-
Template Editors — Quote and Stack template editors have been improved to
match the new layered architecture, with better scope handling and an updated editing
experience. Editor
-
Item Library — Improved modal for editing items; default template items
are now correctly generated on first launch. Hub
-
Project Details — The Project Details editor now has expanded fields for
more comprehensive data entry. Editor
-
Quote Layout Saving — Your current quote layout can now be saves as
templates so you can reuse them on future projects. Editor
-
Unit Conversion — Project costing now supports conversion across a wider
range of currencies. Editor
-
Undo / Redo — The Quote Editor now fully supports undo and redo for all
editing actions. Editor
-
Rich Text in Text Stack — The Text stack now supports rich text
formatting including bullet lists, numbering, and markdown syntax. Several older, redundant
stack types were retired as a result. Editor
-
BOQ Column Resizing — Columns in the Bill of Quantities stack can now be
manually resized to suit your layout. Editor
-
Takeoff Default Measurements — Takeoff editor scopes now support
assigning a default unit of measurement per scope. Editor
✓ Fixed
-
Trial Timer — The trial validity counter now correctly displays the
remaining access period until the stable release.
-
Files from Earlier Versions — Project files saved under the previous app
name now import correctly. Core
-
Hub Bugs — Multiple issues resolved around the Hub's project list,
global/local data separation, and various UI glitches. Hub
-
Takeoff Editor Bugs — Resolved several issues affecting measurement input
and scope interactions in the Takeoff Editor. Editor
-
Item Summary Stale Data — Fixed cases where the Item Summary editor
displayed outdated values after project changes. Editor
-
Item Library Duplication — Item groups from the Global Library were being
duplicated for each new project created. This is now fixed. Hub
-
Hiding Schedule Editor — Schedule editor is now temporarily hidden until
actual development of the applet.
-
UI Fixes — Various layout and visual inconsistencies resolved across the
Hub, editors, and settings panels.
Earlier releases
✦ New
- Project Hub — Dashboard, project list with status tracking, and library
overview cards. Hub
- Takeoff Editor — PDF-backed canvas for geometric takeoff (areas, lengths,
counts) with calibration and annotation tools. Editor
- Scope & Assembly Libraries — Attach scopes and assemblies to
measurements for automatic quantity roll-up. Editor
- Quote Builder — Stack-based template system to compose richly formatted
quote documents with live data. Editor
- Phase & Trade Management — Assign phases and trades to each project
with configurable global defaults. Hub
- Item Library — Global library of priced items with UOM support, markup,
wastage, and formula fields. Hub
- Export — Export projects as encrypted
.p2q
bundles; export quotes as PDF via browser print. Core
- Multi-currency Support — Set a base currency per project with exchange
rate conversion. Core