KetchUp's BenchUp: A Free, Open Source SketchUp Alternative Built in Rust and WebGPU

Push/Pull, typed lengths and SketchUp import in a free browser app, plus the storage and import limits worth knowing before you trust it with a real build.

Binary Buddies · 5 min read · 0 views
A home workshop in afternoon lightA workbench under a sunlit window holds a laptop showing a shelf drawing, a marked board, a pencil and a tape measure. Tools hang on a pegboard, a plank rests on sawhorses and dust drifts in the light.

There is now a free, MIT-licensed modeller that lets you draw a rectangle, pull it into a board and copy it into a bookcase, all inside a desktop browser tab with no account. Its home is ketchup3d.github.io, its project files end in .ketchup, and the app itself goes by BenchUp. It is written in Rust, renders through WebGPU or WebGL2, and also ships as a native app for Windows, macOS and Linux.

The pitch is narrow on purpose: woodworkers, furniture makers and DIY builders who want to plan a shelf, table, cabinet or workbench to exact measurements before the first cut. That is the job many hobbyists have long done in SketchUp, and BenchUp borrows its vocabulary openly: Push/Pull, Tape Measure, Orbit, groups, components and tags.

The interesting question for an open source alternative is not whether it can extrude a box. It is whether the parts a real build depends on hold up: typed lengths, snapping, reusable parts, getting existing SketchUp models in, and knowing where your work is actually stored. On that last point the answer comes with a catch.

Key takeaways

  • BenchUp is free, MIT-licensed and written in Rust; it runs in a desktop browser with WebGPU or WebGL2, or natively on Windows, macOS and Linux.
  • The core tools follow the SketchUp model: draw a face, Push/Pull it into a solid, then measure, dimension and organise with groups, components and tags.
  • Browser autosave lives on one device in one browser; clearing browser data can erase it, so saving a .ketchup file is the real backup.
  • SketchUp .skp import brings geometry only, and OBJ export leaves materials behind.

One app, a project called KetchUp

The naming is the first thing that trips people up. The project is published under the ketchup3d name, its portable save format is .ketchup, and the app's own site presents it as BenchUp, a free 3D woodworking and furniture design app. If you arrive looking for KetchUp, this is the same project.

The basics are unambiguous. The code is open source under the MIT license, written in Rust, and hosted on GitHub, where the site points readers to explore the code, read the full user guide or contribute. A release notes page lists all downloads for the desktop builds.

There is no cloud service attached. The site states plainly that there is no account to create and no cloud storage to set up. That is a design choice with a clear upside, nothing of yours sits on someone else's server, and a cost covered further down.

Draw a face, pull it into a board

The drawing tools are the familiar set: lines, rectangles, circles and freehand outlines. The tool that turns those flat outlines into objects is Push/Pull. Click a face, move the mouse to give it depth, click again to finish. From there you can move, scale, offset and paint geometry.

For furniture this maps directly onto how you think about stock. You draw a board's outline as a rectangle, then Push/Pull it to the board's thickness. Copy that board to make the second side of a cabinet, move it into position, and repeat for shelves, rails and tops. The site names shelves, tables, cabinets and workbenches as the projects it has in mind.

The modelling loop for a furniture partSix steps in two rows: draw an outline, Push/Pull it, move and copy, snap and measure, group and tag, then save a .ketchup file.From a line to a partDraw outlinePush/PullMove and copySnap and measureGroup and tagSave .ketchup
Push/Pull is the hinge: everything before it is flat drawing, everything after it works on solid parts.

Paint is in the toolset too, which matters later: what you paint stays inside BenchUp, because the OBJ export carries geometry without materials.

Measuring a board under a hanging lampAt dusk a hanging lamp lights a long board on two sawhorses, with a tape measure stretched along it, pencil marks and a carpenter's square, and dust rising in the light.

Measurements you type, not guess

A furniture model is only useful if its numbers are right, and this is where BenchUp earns its place over a sketchpad. Drawing tools snap to existing geometry and to the axes, and you can type exact lengths rather than dragging until something looks about right. Tape Measure and Dimensions let you check and annotate distances once the parts exist.

Orbit is the review tool. Drag to look around the assembly, scroll to zoom, and press F to fit the whole model in view. The site frames it as checking proportions before taking the design to the workshop, which is the step where a too-deep shelf or a leg in the wrong place is still free to fix.

Organisation comes from groups, reusable components and tags. For furniture, components are the natural fit for repeated parts such as four identical legs or a stack of matching shelves, while tags let you sort a model's pieces so a busy assembly stays readable.

Your first shape in three steps

The editor opens on a clean slate, and the site's own getting-started path is three moves long.

  1. Draw a rectangle

    Click one corner, then the opposite corner. That creates your first face.

  2. Give it some depth

    Choose Push/Pull, click the face, move the mouse, and click to finish. The face is now a solid.

  3. Find a fresh perspective

    Choose Orbit and drag to look around. Scroll to zoom, and press F to fit the model to the view.

Those three steps are the whole grammar of the app in miniature. Everything else, from a single shelf to a full workbench, is the same loop repeated with typed dimensions, copies and components. The user guide covers the modelling instructions and lists the supported workflows in detail.

Browser tab or native app

BenchUp runs in two forms. The browser editor needs a desktop browser with hardware acceleration and support for WebGPU or WebGL2. The native app runs on Windows, macOS and Linux, downloadable from the release notes page. The site is explicit that it is made for a desktop browser and a mouse, and recommends a mouse and keyboard for modelling.

Browser editor

Open it and start drawing; nothing to install.

  • Needs WebGPU or WebGL2 and hardware acceleration
  • Autosaves in that browser, on that device
  • Built for a desktop browser and a mouse

Desktop app

The same BenchUp, installed natively.

  • Windows, macOS or Linux
  • Downloads listed on the release notes page
  • Mouse and keyboard recommended for modelling
Where BenchUp runsThe Rust codebase under the MIT licence leads to a desktop browser build that needs WebGPU or WebGL2 with hardware acceleration, and to a native app for Windows, macOS or Linux.Rust code, MIT licenceDesktop browserNative desktop appWebGPU or WebGL2hardware accelerationWindows, macOS or Linuxfrom release downloads
One open source codebase, two ways in: the browser path depends on your graphics stack, the native path on your operating system.

The WebGL2 option matters in practice. WebGPU is the newer browser graphics interface, and accepting WebGL2 as well widens the set of desktop browsers that can open the editor at all. The hard requirement is hardware acceleration: if your browser has it switched off, turn it back on before deciding the app does not work.

Where your work actually lives

In the browser, your model is autosaved in that browser on that device. That is convenient until it is not. The site warns that clearing browser data can remove autosaved work, and with no cloud storage behind it there is nothing to restore from. A model you built on your laptop also will not appear on your workshop PC unless you carry the file across yourself.

The fix is a habit, not a setting. File, then Save, downloads a .ketchup project you can keep, back up and open again later. Treat autosave as protection against a closed tab, and the downloaded file as the copy that counts.

Autosave versus a saved project fileAutosave lives in one browser on one device and can be removed by clearing browser data; File then Save produces a .ketchup file you keep. There is no cloud storage and no account.Autosavethis browser, this deviceFile, then Savea .ketchup file you keepClearing browser datacan remove autosavesNo cloud storageand no account
The only copy that survives a browser clean-up is the one you downloaded.

Bringing SketchUp models across

For anyone with a back catalogue of SketchUp designs, import is the deciding feature. File, then Import/Export accepts SketchUp .skp files and brings in their geometry. The import runs locally, so the file never leaves your machine.

The limits are spelled out. SketchUp textures, scenes and some model features are not supported, which means an imported model arrives as shape without its surfaces or saved views. In the other direction, BenchUp exports Wavefront .obj, a widely read 3D format, but the export includes geometry without materials.

What crosses the import and export boundaryA SketchUp .skp file is imported locally into the BenchUp editor, which saves .ketchup projects and exports Wavefront OBJ. Textures, scenes and some model features are not imported; materials are not exported..skp filefrom SketchUpBenchUp editorimports run locally.obj fileWavefront OBJNot importedtexturesscenessome model featuresNative format.ketchup projectsaved locallyNot exportedmaterialsgeometry only
Geometry travels in both directions; the look of a model, its textures, scenes and materials, stays behind at each border.

For a woodworker planning cuts, geometry is most of what matters: board sizes, joints, positions. For anyone who uses colour to tell oak from plywood, or who hands models to a renderer, the missing materials mean redoing that work on the other side. Test a representative .skp from your own library before migrating a large collection.

A finished bookcase at nightA workshop at night: stars and a moon through the window, a finished bookcase filled with books and a plant, and a laptop on a side table glowing with the same bookcase drawn as lines.

Limits and what to watch next

BenchUp is deliberately scoped. It is a woodworking and furniture planner with a SketchUp-style workflow, built for a desktop browser and a mouse. Readers hoping for a tablet sketching tool, or a full replacement for every SketchUp feature, should read that framing literally. The site itself says some SketchUp model features are not supported on import.

Three gaps are worth weighing before you commit a real project. Storage is local only, so syncing between machines means moving .ketchup files by hand. Import drops textures and scenes. Export drops materials, so the Paint tool's work does not survive an OBJ round trip. None of these stops you planning a cabinet; all of them shape how you would fit BenchUp into a wider workflow.

What to watch is the project's own record: the release notes page for what each desktop build adds, and the user guide's list of supported workflows. Because the code is MIT-licensed on GitHub, the state of import, export and storage is something anyone can check directly rather than take on trust.

Is the KetchUp SketchUp alternative really free?

Yes. BenchUp is open source under the MIT license, needs no account, and has no cloud service to sign up for. The browser editor and the native desktop apps are both free downloads or visits.

Can BenchUp open my SketchUp .skp files?

It imports their geometry, locally, through File, then Import/Export. SketchUp textures, scenes and some model features are not carried across, so check a typical file of your own first.

What do I need to run it in a browser?

A desktop browser with hardware acceleration and WebGPU or WebGL2 support, plus a mouse and keyboard. If that is a problem, use the native app for Windows, macOS or Linux instead.

Why does it say BenchUp when I looked for KetchUp?

They are the same project: it is published under the ketchup3d name, saves .ketchup files, and the app presents itself as BenchUp.

This article draws on Open Source Alternatives to Reflector? and answers to it (1, 2), on the Stack Exchange network, licensed under CC BY-SA 4.0.

  • #BenchUp
  • #KetchUp
  • #Rust
  • #WebGL2
  • #WebGPU
  • #woodworking design software

Comments

Add a comment
Sign in with Google to join the conversation