CADCraft v0.13.0

CADCraft is a free, open-source computer-aided design (CAD) application designed as an alternative to Autodesk AutoCAD. Written in Rust, it provides a familiar drafting workflow with a command line, object snapping, layers, dimensions, hatching, blocks, and support for industry-standard CAD file formats.

Unlike browser-based CAD tools that depend on a web application framework, CADCraft uses a native desktop interface built with egui. It supports Windows, macOS, Linux, and FreeBSD, with an additional WebAssembly build for browser-based use.

One of CADCraft's most interesting features is its automation support. Users can control drawings through command-line tools, JSON commands, and the Model Context Protocol (MCP), making the application suitable for scripted drafting and AI-assisted design workflows.

However, CADCraft is still in early development. Although it already supports many everyday 2D drafting operations, it is not yet a complete replacement for AutoCAD, particularly for advanced engineering workflows and 3D modeling.

Features

2D Drawing and Editing Tools

CADCraft includes a broad collection of drawing commands for creating technical illustrations and engineering drawings. Users can create lines, polylines, circles, arcs, rectangles, polygons, ellipses, splines, and other geometric objects.

Its editing tools include moving, copying, rotating, scaling, mirroring, stretching, offsetting, trimming, extending, filleting, and chamfering objects. Array operations and other geometry-management commands are also available.

The command-line workflow resembles traditional CAD software. Users can enter commands, specify coordinates, use relative measurements, and repeat previous commands without relying exclusively on toolbar interactions.

Precision Drawing and Object Snapping

CADCraft provides object snapping for locating important geometric points, including endpoints, midpoints, centers, intersections, and tangency points.

Additional tools include polar tracking, orthographic drawing, grid snapping, direct distance entry, and coordinate-based input.

These features help users create accurate technical drawings rather than relying on approximate mouse positioning.

Layers and Object Properties

The application includes layer management tools for organizing drawing elements. Users can configure layer visibility, locking, freezing, colors, linetypes, and plotting properties.

A Properties palette allows individual drawing objects to be inspected and modified. Additional layer commands support operations such as isolating layers, matching properties, and restoring previous layer settings.

This functionality is particularly useful for architectural plans, mechanical drawings, electrical diagrams, and other projects that require structured drawing organization.

Dimensions, Text, and Annotations

CADCraft supports dimensioning tools, dimension styles, text, multiline text, leaders, and tables.

Its annotation features include configurable arrowheads, dimension overrides, TrueType fonts, text formatting, and associative dimensions that can follow changes to the underlying geometry.

These tools help users communicate measurements and technical information directly within their drawings. However, some advanced annotation features and compatibility details remain under development.

Hatching, Blocks, and Reusable Components

CADCraft supports boundary-based hatching, pattern fills, solid fills, gradient fills, blocks, attributes, and nested blocks.

Hatching is useful for distinguishing materials and areas in architectural or mechanical drawings. Blocks allow frequently reused objects to be inserted into multiple locations without recreating their geometry.

These capabilities provide a practical foundation for producing structured technical drawings.

DXF and DWG File Support

CADCraft reads and writes DXF drawings, including ASCII and binary formats. It also supports reading and writing DWG files through the open-source acadrust library.

The project documents support for DXF files from R12 through 2018 and DWG files from R13 through 2018.

Additional export options include SVG, PNG, and PDF, allowing drawings to be shared in vector, image, and document formats.

File-format support is an important advantage, but it does not guarantee perfect compatibility with every CAD application. Complex drawings should be tested for missing entities, formatting differences, and data loss when imported or exported.

Layouts and PDF Plotting

CADCraft includes paper-space layouts, viewports, page setups, and plotting commands. Users can work between model space and paper space, configure viewport scales, and export drawings to PDF.

These features are important for preparing technical drawings for printing, documentation, and distribution.

However, some advanced plotting functions and workflows are still incomplete, so users with demanding production requirements should verify that the available tools meet their needs.

Parametric Constraints

CADCraft includes geometric and dimensional constraints for defining relationships between drawing elements.

Its constraint tools can help maintain intended geometric relationships when objects are edited. The application also supports parameter expressions, automatic constraint generation, and conflict detection.

These capabilities are useful for users interested in more structured and editable CAD designs. Nevertheless, the implementation is still evolving, and its behavior should be evaluated against the requirements of a particular design workflow.

CLI, MCP, and AI Automation

One of CADCraft's distinguishing features is its extensive automation interface.

The project provides a command-line application, a JSON control channel, and an MCP server. These interfaces allow scripts and compatible AI agents to execute CAD commands, inspect drawings, query entities, and render results.

For example, a command-line workflow can create a drawing from a sample, execute a sequence of commands, save the result as a DXF file, and export a rendered image.

This approach could be useful for automatically generating repetitive diagrams, producing drawing variations, validating CAD files, or incorporating technical drawings into larger software workflows.

Download CADCraft v0.13.0 - Software Mirrors

CADCraft v0.13.0 for Windows

cadcraft-0.13.0-windows-x86.msi | 48.88 MB

cadcraft-0.13.0-windows-x86-portable.zip | 59.71 MB

cadcraft-0.13.0-windows-x64.msi | 49.54 MB

cadcraft-0.13.0-windows-x64-portable.zip | 61.65 MB

cadcraft-0.13.0-windows-arm64.msi | 46.66 MB

cadcraft-0.13.0-windows-arm64-portable.zip | 58.91 MB

CADCraft v0.13.0 for macOS

cadcraft-cli-0.13.0-macos-universal.zip | 52.84 MB

cadcraft-0.13.0-macos-universal.dmg | 69.12 MB

CADCraft v0.13.0 for Linux

cadcraft-0.13.0-linux-x86_64.tar.gz | 62.09 MB

cadcraft-0.13.0-linux-x86_64.rpm | 62.6 MB

cadcraft-0.13.0-linux-x86_64.pkg.tar.zst | 47.14 MB

cadcraft-0.13.0-linux-x86_64.flatpak | 44.33 MB

cadcraft-0.13.0-linux-x86_64.deb | 63 MB

cadcraft-0.13.0-linux-x86_64.AppImage.zsync | 206.51 kB

cadcraft-0.13.0-linux-x86_64.AppImage | 58.93 MB

cadcraft-0.13.0-linux-riscv64.tar.gz | 61.04 MB

cadcraft-0.13.0-linux-riscv64.rpm | 61.64 MB

cadcraft-0.13.0-linux-riscv64.deb | 61.87 MB

cadcraft-0.13.0-linux-aarch64.tar.gz | 59.63 MB

cadcraft-0.13.0-linux-aarch64.rpm | 60.74 MB

cadcraft-0.13.0-linux-aarch64.pkg.tar.zst | 45.55 MB

cadcraft-0.13.0-linux-aarch64.flatpak | 41.47 MB

cadcraft-0.13.0-linux-aarch64.deb | 61.25 MB

cadcraft-0.13.0-linux-aarch64.AppImage.zsync | 198.33 kB

cadcraft-0.13.0-linux-aarch64.AppImage | 56.6 MB

CADCraft v0.13.0 for BSD

cadcraft-0.13.0-freebsd-x86_64.tar.gz | 64.77 MB

Others Download related to CADCraft v0.13.0

cadcraft-web-0.13.0.zip | 9.35 MB

CADCraft v0.13.0 Source Code

CADCraft v0.13.0 Source code (zip)

CADCraft v0.13.0 Source code (tar.gz)

CADCraft v0.13.0 Release Notes:

What's Changed

  • docs: document security limits and regression guarantees by @skylartaylor in #1963
  • chore(deps): bump the cargo-dependencies group across 1 directory with 17 updates by @dependabot[bot] in #1957
  • web: allow browser zoom in the viewport meta (SonarCloud Web:S7926) by @dylanmtaylor in #1974
  • packaging: use [[ ]] tests, named locals and explicit returns in shell scripts (SonarCloud S7688/S7679/S7682) by @dylanmtaylor in #1972
  • Build main again after the #1957 dependency bump by @marcoarnulfo in #1991
  • CI: one test binary per crate, nextest, line tables only by @aiongg in #1989
  • CI: shared gate workflow; FreeBSD nightly and on release by @aiongg in #1987
  • Missing translations never fail a test; cargo xtask i18n lists them by @aiongg in #2013
  • Xrefs and data links: resolve stored paths with craft-docpath's resolve_absolute by @aiongg in #1750
  • ci(sonar): stop cancelling main-branch runs so coverage is published by @dylanmtaylor in #2018
  • security: write the release from the release job only (SonarCloud) by @dylanmtaylor in #2021
  • i18n(it): translate the 99 strings added in 0.7.0 and 0.8.0 by @bottelliemanuele-maker in #1617
  • INSERT from a file brings the file's multiline styles by @viniau in #1639
  • Docs: broken / malicious link in README.MD by @khorezm0 in #1640
  • i18n(pt-BR): native-speaker terminology review by @ffishman in #1665
  • Show surveyor's angles as degrees/minutes/seconds (#1643) by @MarekSpodBiedry in #1676
  • Save a dimangular made from two lines as a 2-line angular dimension (#1652) by @MarekSpodBiedry in #1681
  • Export to a browser download on the web instead of failing on a path (#1655) by @MarekSpodBiedry in #1682
  • DXF/DWG: keep a file's own arrowhead blocks with standard names (_Dot, _DotSmall) by @ffishman in #1694
  • i18n : Add new translations to zh.tsv by @mayloglog in #1695
  • fix(snap): keep an arc's sweep for TAN and PER snaps by @william-wwh in #1698
  • Reject doubled minus sign in parse_distance by @Silvertree2010 in #1707
  • i18n(sv): translate 52 new strings, use the agreed terms in 19 by @kler in #1721
  • Read SVG arc flags as single characters in path data by @Silvertree2010 in #1726
  • Use AutoCAD value steps in the ACI index palette by @Silvertree2010 in #1732
  • Fix cursor contrast over layout paper by @WillPastor in #1733
  • Report DWGPREFIX, DWGTITLED, FILEDIA, CMDECHO and more from GETVAR (#1715) by @MarekSpodBiedry in #1742
  • Make properties.set apply thickness and properties report it (#1722) by @MarekSpodBiedry in #1744
  • Reject repeated leading '#' in Rgb::parse_hex by @Silvertree2010 in #1746
  • Convert px/unitless SVG root size to mm when a viewBox is present by @Silvertree2010 in #1749
  • Fall back to decimal for huge architectural/fractional distances by @Silvertree2010 in #1762
  • AutoLISP: entmake defines blocks with BLOCK … ENDBLK (fixes #1662) by @SBaksa in #1765
  • Interface Language dialog: list the languages alphabetically by their own name by @nikolainyegaard in #1787
  • Apply a block reference's linetype scale to the objects inside the block by @philipp-tch in #1830
  • Spline extents: evaluate on the stack and sample relative to the spline (#1076) by @mbolling in #1834
  • Autosave: a new autosave folder is owner-only on Unix by @oracola91 in #1868
  • web: report the open drawing in the viewport title by @nicholasgower in #1869
  • OFFSET uses a single preselected object by @nicholasgower in #1870
  • CLI: a --cmd can act on a handle an earlier --cmd returned ({last}) by @nicholasgower in #1871
  • fix(canvas): keep the OS cursor visible over menus and panels by @nicholasgower in #1879
  • Fix LISP getangle subtracting ANGBASE in degrees from radians by @Silvertree2010 in #1883
  • RECTANG: add a Center Rectangle construction mode by @nicholasgower in #1895
  • loops: implied closed loops from loose LINE and ARC chains by @nicholasgower in #1906
  • File tabs: stop the close button from flickering by @onlykshitij in #1914
  • Make LISP angtof honour its units argument by @Silvertree2010 in #1949
  • List binary fractions in the Units precision drop-down for Architectural and Fractional (#1861) by @MarekSpodBiedry in #1952
  • Let getkword return arbitrary input when initget bit 128 is set (#1945) by @MarekSpodBiedry in #1953
  • Distinguish polyline midpoint grips from vertices (#1950) by @C00kieMonsta in #1958
  • Bound combined constraint expression and parameter depth (#1936) by @C00kieMonsta in #1959
  • fix(ui): toggle QuickCalc with Ctrl/Cmd+8 by @jonascloud in #2001
  • hatch: list patternFile/patternText in the catalog and point to them from the unknown-pattern error (#2000) by @MarekSpodBiedry in #2007
  • SETVAR CECOLOR takes the colour names and indexes the color command takes by @marcoarnulfo in #2014
  • Dimensions: text that does not fit follows DIMTMOVE, over the dimension line (with a leader for 1) instead of past the second extension line by @marcoarnulfo in #2015
  • Reject surveyor bearing angles outside 0-90 degrees by @Silvertree2010 in #2024
  • Render: Match AutoCAD clearance for DIMTAD 1 text (#2004) by @SusieeTheLinuxUser in #2027
  • HATCH treats rooms enclosed by multilines as islands by @viniau in #1642
  • Fix angular dimensions ignoring DIMDSEP by @WillPastor in #1670
  • Diameter dimensions: the D block's text keeps the sign as %%c, so SHX styles plot it (fixes #1645) by @SBaksa in #1696
  • Keep the active layout when saving DWG/DXF by @ffishman in #1735
  • Close hatch boundaries where a line ends just short of a flattened ellipse (#1690) by @MarekSpodBiedry in #1738
  • STRETCH moves only the multiline vertices inside the area (#1712) by @MarekSpodBiedry in #1739
  • Write a layout's paper-space viewport (id 1) first, so DWG keeps the viewport ids by @philipp-tch in #1782
  • MEASUREINIT: choose the units of new drawings, kept in the profile by @aussieboer61 in #1792
  • DXF: proxy objects and entities keep their class through a save (#1812) by @tyrel in #1858
  • DWG read: keep a polyline's vertex order when handles are not ascending by @nicholasgower in #1863
  • DXF/DWG: angular, diametric and radial dimensions get DIMASSOC (#1651) by @nicholasgower in #1874
  • MCP: the open tool description names DWG as well as DXF by @nicholasgower in #1887
  • analysis: report found/analysed/skipped counts, caps and implausibility by @nicholasgower in #1890
  • appload: load a .lsp file from a path or the file picker by @nicholasgower in #1903
  • DWG: write AutoCAD's drawing variable dictionary (AC1018 output) by @nicholasgower in #1872
  • Reject a leading '+' in ACI indices and RGB triples in Color::parse by @Silvertree2010 in #1878
  • Reject bare or signed second token in mixed distances by @Silvertree2010 in #2011
  • usage: a read-only cross-reference of layers, blocks, styles and linetypes by @nicholasgower in #1889
  • chore: resolve SonarCloud maintainability issues by @dylanmtaylor in #2025
  • refactor: replace wildcard imports in two test modules (S2208) by @dylanmtaylor in #2036
  • PDF: plot with craft-pdf's krilla writer by @aiongg in #2029
  • Keep rectangle opposite corners free of ortho (STRETCH window and friends) by @silaghis in #1556
  • Panels: use craft-ui's shared docking by @aiongg in #2093
  • Merge 11 open PRs (tested batch) by @aiongg in #2112
  • CUTBASE: cut objects to the clipboard with a base point by @dotCooCoo in #2054
  • THICKNESS: Format > Thickness, and new 2D objects take the current thickness by @dotCooCoo in #2056
  • BLOCKREPLACE: Tools > Express Tools > Replace Block replaces every reference of one block with another by @dotCooCoo in #2065
  • ATTDISP: View > Attribute Display > Normal, On and Off, and 'ATTDISP inside another command by @dotCooCoo in #2071
  • MEASUREGEOM: a Volume option, and Tools > Inquiry > Volume by @dotCooCoo in #2079
  • MEASUREGEOM: add an Angle option, and Tools > Inquiry > Angle asks for the objects by @dotCooCoo in #2085
  • MEASUREGEOM: Tools > Inquiry > Radius asks for the object, and Radius measures polyline arcs by @dotCooCoo in #2089
  • DIMTFILL: dimension text gets a background in the drawing's background color or in DIMTFILLCLR by @dotCooCoo in #2101
  • SETVAR refuses DIM values the dimension style refuses by @dotCooCoo in #2105
  • Refuse negative values for whole-number DIM* variables by @dotCooCoo in #2106
  • Batch follow-ups: #2049's later commits, CUT on locked layers, BLOCKREPLACE, THICKNESS and Volume prompts by @aiongg in #2115
  • COMPAREEXPORT: export a drawing comparison to a new drawing by @dotCooCoo in #2049

New Contributors

  • @dependabot[bot] made their first contribution in #1957
  • @aiongg made their first contribution in #1989
  • @viniau made their first contribution in #1639
  • @khorezm0 made their first contribution in #1640
  • @ffishman made their first contribution in #1665
  • @WillPastor made their first contribution in #1733
  • @nikolainyegaard made their first contribution in #1787
  • @mbolling made their first contribution in #1834
  • @nicholasgower made their first contribution in #1869
  • @onlykshitij made their first contribution in #1914
  • @jonascloud made their first contribution in #2001
  • @SusieeTheLinuxUser made their first contribution in #2027
  • @aussieboer61 made their first contribution in #1792
  • @tyrel made their first contribution in #1858
  • @silaghis made their first contribution in #1556
  • @dotCooCoo made their first contribution in #2054
Full Changelog: v0.12.0...v0.13.0

Performance and Compatibility

CADCraft is written in Rust and uses egui for its desktop interface. Its architecture separates core geometry, document management, rendering, and command processing from the graphical interface.

The project also uses spatial indexing and incremental updates to improve drawing interaction. Its roadmap reports fast object picking in large drawings, although these internal performance measurements should not be treated as independent benchmarks for every workload.

CADCraft supports multiple operating systems and offers both native applications and a browser-based build. The available release packages include installers and portable formats for supported platforms.

The primary limitation is feature maturity. CADCraft already implements many common 2D drafting operations, but its roadmap identifies substantial gaps in overall AutoCAD compatibility. Advanced 3D modeling, including solids, surfaces, meshes, and rendering, remains a major area of planned development.

Users who primarily create 2D technical drawings may find the current feature set promising. Professionals who depend on advanced 3D modeling, specialized CAD extensions, complex external references, or highly specific DWG workflows should not assume those requirements are fully supported.

System Requirements

CADCraft supports the following platforms:

  • Windows: 32-bit and 64-bit x86 systems, with ARM64 builds also available.

  • macOS: Intel and Apple Silicon computers through a universal application.

  • Linux: x86-64 and ARM64 packages, depending on the distribution format.

  • FreeBSD: x86-64 builds.

  • Web: Modern browsers compatible with its WebAssembly application.

Prebuilt releases are the easiest way to get started. Depending on the platform, downloads include Windows installers, portable archives, macOS disk images, Linux AppImages, Flatpak packages, Debian packages, RPM packages, and compressed archives.

Building from source requires Rust and Cargo, Git, and the dependencies specified by the project. Linux developers may also need ALSA development headers.

The project does not establish a universal minimum CPU, RAM, or GPU requirement for every supported drawing workload.

Pros and Cons

Pros

  • Free and open-source under the MIT or Apache-2.0 license.

  • Familiar AutoCAD-style command-line workflow.

  • Extensive 2D drawing and editing tools.

  • Supports layers, object snapping, dimensions, hatching, blocks, and constraints.

  • Reads and writes DXF files and supports DWG import and export.

  • Exports drawings to PDF, SVG, and PNG.

  • Provides CLI, JSON, and MCP interfaces for automation.

  • Supports Windows, macOS, Linux, FreeBSD, and web browsers.

  • Built with Rust and a native graphical interface rather than Electron.

Cons

  • Still in early development, with incomplete feature parity.

  • Advanced 3D modeling and rendering are not yet implemented.

  • Some specialized CAD commands and workflows remain incomplete.

  • Complex DWG files may not retain every feature or property during conversion.

  • Advanced plotting, annotation, and interoperability workflows require further validation.

  • Not yet a dependable replacement for every professional AutoCAD workflow.

How to Install

Option 1: Download a Prebuilt Release

  1. Visit the official CADCraft GitHub repository.

  2. Open the Releases section.

  3. Download the package matching your operating system and processor architecture.

  4. Install or extract the package.

  5. Launch CADCraft and create a new drawing or open an existing CAD file.

For Windows, choose the installer or portable archive. On Linux, select an appropriate format such as AppImage, Flatpak, DEB, or RPM. Mac users can use the universal application package.

Option 2: Build from Source

If you prefer compiling the application yourself, first clone the repository:

git clone https://github.com/storytold/cadcraft

Enter the project directory:

cd cadcraft

Then run the application with its sample drawing:

cargo run --release -p cadcraft -- --sample

This command builds and launches the desktop application with a sample drawing. The initial build may take some time while Cargo downloads dependencies and compiles the project.

Consult the repository's build documentation if additional platform-specific dependencies are required.

Option 3: Use the Browser Version

CADCraft also provides a WebAssembly build. Developers can run the web application locally using Trunk, provided the necessary Rust and WebAssembly development tools are installed.

For example:

cd apps/cadcraft-web

trunk serve

This starts the local development server for the browser-based application. For regular use, check the official releases for a prebuilt web package where available.

Final Verdict

CADCraft is an ambitious open-source CAD project that combines a familiar 2D drafting workflow with modern development practices and automation capabilities. Its support for DXF and DWG, precision drawing tools, layers, dimensions, layouts, and PDF exports makes it a promising option for users who need a free alternative to proprietary drafting software.

Its CLI and MCP integration are particularly noteworthy. They make CADCraft more than a graphical drawing application by enabling scripted operations and AI-assisted workflows that could benefit developers, engineers, and technical teams.

The main drawback is its early development status. Although many everyday 2D drafting features are already available, advanced 3D modeling and several specialized workflows remain incomplete. Compatibility with complex files also needs careful testing before the application can be trusted for critical production work.

CADCraft is worth trying for 2D drafting, CAD experimentation, and automated drawing generation. However, professionals who depend on complete AutoCAD compatibility or advanced 3D design should treat it as an emerging alternative rather than a full replacement.

CADCraft v0.13.0
Free
Software Informations:
Developer:

Operating System:
Windows / macOS / Linux / BSD
Date Added:
2026-10-25T16:07:26.842Z
Categories:

Post a Comment/Report Broken Link: