Drawing Paner is a DXF viewer designed to efficiently open and view DXF files. It is a lightweight application that provides quick access to DXF content without the need for complex CAD software.
Key Features:
Quickly load and display even large DXF files with minimal lag.
A simple, intuitive design that makes navigation and viewing straightforward.
Available on Windows via Winget, ensuring easy installation and deployment.
Supports a wide range of DXF versions for versatile file compatibility.
Target Audience and Benefits:
Ideal for architects, engineers, and designers who need quick access to DXF files. Drawing Paner provides a straightforward solution without the complexity of full CAD software, enabling professionals to review and analyze designs efficiently.
Available via Winget, Drawing Paner offers easy installation and deployment, making it an accessible choice for anyone working with DXF files.
README
window
A monorepo for six small desktop file-viewer applications that share a framework-free Rust core and (for the Tauri apps) shared frontend packages.
One repo, one lockfile, one toolchain, six independently-built binaries.
App
Format
Stack
data-framer
CSV / Parquet
Tauri v2 + Vue 3 (Polars)
map-windower
GeoJSON
Tauri v2 + Vue 3 (MapLibre)
doc-viewer
PDF
Tauri v2 + Vue 3 (PDF.js)
image-shutter
SVG
egui / eframe + resvg (cargo-packager)
drawing-paner
DXF
egui / eframe + dxf (cargo-packager)
model-glazer
STL/OBJ/3MF
egui / eframe + glow 3D (cargo-packager)
Layout
crates/ window-core (pure Rust), window-tauri
packages/ @window/ui, @window/bridge, @window/config (consumed by the three Tauri apps)
apps/ data-framer, map-windower, doc-viewer, image-shutter, drawing-paner, model-glazer
The egui apps (image-shutter, drawing-paner, model-glazer) are crates under apps/, not
crates/ — they share window-core but none of the frontend packages.
Toolchain
Rust pinned via rust-toolchain.toml.
JS managed with npm workspaces (one root package-lock.json).
Frontend formatting via Vite+ (vp), a global binary — install with
irm https://vite.plus/ps1 | iex (Windows) or curl -fsSL https://vite.plus | bash
(macOS/Linux). Used by just fmt.
Getting started
just init # npm install (JS workspaces)
just dev data-framer # run a Tauri app in dev
just run image-shutter # run the egui app
just build # cargo build --workspace
just fmt # cargo fmt + vp fmt
just lint # clippy -D warnings