Home Roadmap
A live view. Updated as tools ship and priorities shift.
- v1.3 — font picker beyond Helvetica / Times / Courier (current toolbar exposes only those three; should expose every embedded NotoSans variant + family detection from the doc)
- v1.3 — paragraph reflow that actually works on real-world PDFs (the v1.2 wrap + push-down logic ships but doesn't trigger correctly when a paragraph's line count changes from a long edit — line detection or trigger heuristic needs a rebuild against a real-PDF corpus)
- v1.3 — digital signature (WebCrypto)
- v1.3 — faithful Word (.docx) export
- v1.3 — measure tool
- v1.3 — mid-word break on overflow wrap
- v1.3 — cross-page overflow (push content to new page instead of clipping)
Show 27 more (0 planned, 27 shipped)
Shipped
- v1 — eight modes wired (Select / Edit / Add / Sign / Redact / Annotate / Fill Forms / OCR)
- v1 — continuous-scroll virtualised canvas
- v1 — Photoshop-style history timeline
- v1 — find / search with scrollbar marker column
- v1 — Save via FS Access API + download fallback
- v1.1 — Watermark mode with live current-page preview
- v1.1 — Bates numbering
- v1.1 — Header / Footer with token resolve
- v1.1 — Numeric-precision page crop
- v1.1 — Bookmarks editor (read pdfjs / write pdf-lib)
- v1.1 — Metadata editor
- v1.1 — Excel export via pdf-table-detect
- v1.1 — Markdown export (headings + lists + tables)
- v1.1 — True byte-level redact (page rasterisation)
- v1.1 — PII auto-detect (SSN / email / phone / CC / IBAN)
- v1.1 — Move tool (Adobe Hand) + 8× zoom + edge-accessible pan
- v1.1 — Edit-text drag-select for substring edits
- v1.1 — Right pane single-active accordion + pinned history
- v1.2 — true in-place text edit (pdfium-wasm content-stream rewrite)
- v1.2 — click-to-edit with caret at click position (Acrobat-style)
- v1.2 — same-line sibling shift when edit width changes
- v1.2 — line wrap at right margin + push paragraphs down (reflow)
- v1.2 — preserve original font / color / matrix on edit
- v1.2 — base-14 font fallback for subset miss
- v1.2 — NotoSans embed for non-base-14 families (bold + italic variants)
- v1.2 — toast warning when reflow clips past page bottom
- v1.2 — smallest-text-object-containing-click matching
- Gerber Viewer — editor mode (select / move / copy / delete / add primitives / save Gerber out)
- Gerber Viewer — netlist extract + IPC-D-356 compare
- Gerber Viewer — DRC expansion (silk / mask / paste / inter-layer / sliver checks)
- Gerber Viewer — ODB++ / IPC-2581 file format support
- STEP / DXF — CAD drawing viewer
- Visio .vsdx viewer
- DICOM — medical imaging viewer
- IFC — BIM model viewer
- KiCad .kicad_pcb native viewer
- Shapefile / GeoTIFF — GIS viewers
Show 19 more (4 planned, 15 shipped)
Planned
- NIfTI / FITS — scientific image viewers
- Rhino .3dm viewer
- SPSS .sav viewer
- MATLAB .mat viewer
Shipped
- Gerber Viewer — open RS-274X / X2 / X3 + Excellon, archive auto-detect, layer auto-classify, realistic PCB palette
- Gerber Viewer — pan / zoom / fit / 1:1 / mirror / 90° rotation, URL viewport snapshot, status bar with cursor coords
- Gerber Viewer — measure tool with snap-to-pad, distance + angle + reference-pad-anchored mode
- Gerber Viewer — three-pane CAM350 layout: layer rail, canvas, inspector accordion (Job info, Apertures, Drill table, DRC, PnP, Test, Measurements, About)
- Gerber Viewer — World-View minimap with click-to-recenter
- Gerber Viewer — command palette (⌘/) + Find modal (⌘F: D-code / refdes / coords) + Print snapshot
- Gerber Viewer — DRC checks (trace width, drill, annular ring, copper-to-edge, trace clearance, shorts, pour-to-trace) with fab presets
- Gerber Viewer — diff mode: slider + XOR comparison of two archives
- Gerber Viewer — trace pick (click net → BFS highlight, cross-layer via drill correlation)
- Gerber Viewer — 3D board preview with CSG drill cuts + orbit controls
- Gerber Viewer — flex / rigid-flex detection, stackup pane with IPC-2223 bend radius, vertical bend slider in 3D
- Gerber Viewer — WebGL2 polygon-mesh GPU renderer (opt-in)
- Gerber Viewer — pick-and-place / CPL overlay (.pos / CSV)
- Gerber Viewer — Fab-readiness score + drill CSV + aperture CSV downloads
- Gerber Viewer — exports: PNG / SVG / DXF / Print
All planned tasks shipped — see history below.
Show 4 more (0 planned, 4 shipped)
Shipped
All planned tasks shipped — see history below.
Show 16 more (0 planned, 16 shipped)
Shipped
All planned tasks shipped — see history below.
Show 19 more (0 planned, 19 shipped)
Shipped
All planned tasks shipped — see history below.
Show 8 more (0 planned, 8 shipped)
Shipped
All planned tasks shipped — see history below.
Show 33 more (0 planned, 33 shipped)
Shipped
All planned tasks shipped — see history below.
Show 2 more (0 planned, 2 shipped)
Shipped
All planned tasks shipped — see history below.
Show 4 more (0 planned, 4 shipped)
Shipped
- audio-speed-changer — verify pitch-preserving DSP works end-to-end on long files; add export presets (podcast 1.5x / 1.7x / 2x)
- audio-pitch-changer — confirm pitch shift is independent of tempo; add musical-interval shortcuts (semitones, octaves) instead of raw cents
- uuid-generator — bulk mode (generate N uuids, copy as list) is the moat; verify the bulk path is one click, not buried
- hash-generator — surface the privacy story explicitly (file never uploaded); add file-drop input alongside text input so HIPAA / legal users can hash binary files
- qr-code-generator — logo embedding is the moat vs commodity QR generators; verify error-correction levels work with embedded logos at common sizes
- altitude-baking-calculator — niche but real chemistry stakes; add elevation lookup by ZIP / postal code so users don't have to know their elevation
- canning-calculator — botulism safety stakes; cross-check pressure / time tables against USDA Complete Guide to Home Canning (current source of truth?)
- photo-collage-maker — Canva-replacement competitor; needs template library (3x3, 2x4, polaroid, etc.) before it can compete; otherwise revisit cull
- compare-pdf — already a featured tool; needs annotated diff PDF export (currently only renders the diff visually) — Adobe Acrobat / Draftable both export annotated PDFs
- PDF Editor programmatic invoke() — decouple render-state extraction from the React shell so window.loft.tools.invoke('pdf-editor', { file, ops }) drives the editor headless
- Gerber Viewer programmatic invoke() — emit structured render-state JSON (layer count, outline, net summary) without mounting the React shell
- JSON-LD potentialAction per tool — EditAction / AnalyzeAction / ViewAction so AI crawlers see action targets
- Remove unsafe-inline from CSP script-src — requires Astro experimental.csp + per-island hash sweep
- Trusted Types policy — require-trusted-types-for 'script' + loft-default policy wrapping changelog body set:html
- Cloudflare Insights beacon SRI gate (PR #355 lands the env-gated path; weekly CI job to auto-PR fresh beacon hashes is still TBD)
- Spec-digest-vs-version drift warning in scripts/build-version-manifest.mjs
- Full WebMCP transport once the spec stabilizes (Chrome 146+ stable, Anthropic draft solidifies)
- Narrow CSP connect-src from https://*.cloudflare.com to https://static.cloudflareinsights.com (only origin we actually use)
- Clear verifiedWasmUrls cache on SW activate so a manifest update surfaces fresh hashes
Show 5 more (4 planned, 1 shipped)
Planned
- OCR download progress (percent / bytes) instead of just a spinner — meaningful for 25 MB Paddle models on slow connections
- OCR cache size: surface 'cache status unknown' instead of '—' when iOS Safari opaque response strips content-length
- OCR Remove button: add confirm dialog (easy misclick after a 100 MB download)
- Validate tool IDs in scripts/build-version-manifest.mjs against SAFE_TOOL_ID regex (defense in depth — SW already validates at the message boundary)
Shipped
- Locale routing under /{locale}/tools/{slug}
- hreflang tags on every page
- Spanish (es) translation pass — full tool catalog
- Portuguese (pt) translation pass — full tool catalog
- French (fr) — after es / pt prove out
- German (de) — after es / pt prove out
- Japanese (ja) — after es / pt prove out
- Light token palette (swap values, keep semantic names)
- System-preference auto-pick + per-user toggle
- Audit every tool surface in light mode
- Open search Ctrl +K
- Open search (alt) /
- Close any modal / drawer Esc
- Show this help ?
- Move focus forward Tab
- Move focus back Shift +Tab