Free · Open source · MIT license

Model it. Check it. Cut it. All free.

Beveline is a 3D modeler and 2D drafter for glaziers, fabricators, carpenters and builders. It checks the glass, cuts the list and prints the sheet. It costs nothing, and the source is open for anyone who wants to look under the hood.

  • No subscription
  • No trial clock
  • No account
  • No tracking

In development and not released yet. Windows desktop first; iPad and Android tablet editors are in testing. Downloads and source go public when it's finished.

shower-enclosure.bev — Beveline
Beveline's 3D view of a corner shower enclosure: two glass panels with hinges and a handle, set against a wall.
  • $0, for goodNot freemium. Nothing is held back behind a paid tier.
  • MIT licensedUse it on paid jobs, change it, fork it, share it.
  • Local firstWorks offline. Your files are files on your computer.
  • Open filesA documented format and a command line. Nothing locked in.

Free and open source

Free means free. Not a trial. Not a tier.

Most tools worth using for this kind of work charge by the seat, by the month, or by the feature. Beveline doesn't, and it isn't going to. Every tool in it is for everyone, and the license makes sure that stays true.

What you won't pay for

  • Monthly or yearly subscription
  • Per-seat licenses for the crew
  • "Pro" tier for the good tools
  • Paying again to export your own drawing
  • A free trial that expires on a job
  • An account, a login, or a license server

What open source gives you

  • The whole thing, readable. Every line of the engine and the app, not a black box.
  • Safe to depend on. Code released under the MIT license can't be taken back. If the project ever stops, the code doesn't vanish.
  • Yours to change. Add the tool your shop needs, fix what annoys you, or fork the lot.
  • Use it for paid work. The license puts no limits on commercial use.

It doesn't phone home, and it doesn't need an account. We'd rather say plainly that it's still being built than pretend it's finished. See where it stands.

For the trades

Made for the shop, not for the render.

Glass, metal, wood and general construction. Draw the job with real measurements, then get the numbers you actually need out of the same model: what to order, how to cut it, and a sheet the shop can build from.

Check the glass before you order it.

Pick a load, say how the panel is held, and Beveline checks every pane in the model for stress and deflection. It also tells you the thinnest standard glass that passes. Laminated glass and wind loads by place are in there too.

An estimate, not an engineering approval. It says so every time, and it's built to be checked against your own numbers.

The Glass tab in Beveline checking a shower enclosure at 20 psf: the fixed panel holds, with stress and deflection against their limits and the thinnest passing glass.

Cut lists that waste less.

Tell it the stock you buy: 20 ft sticks, 4 by 8 sheets, bar or flat. It lays the parts out with the fewest pieces and shows the waste, with a cutting diagram you can print.

Framed walls, stock sections and job templates come from the built-in trade library, so you aren't starting every job from nothing.

The Cut list dialog: stock sizes, saw kerf, and a result listing glass, aluminum and tile pieces with the waste for each.
A framed wall with two openings, built from the trade library: studs, headers and sills.
  • GlassStress and deflection checks, laminated make-ups, wind by place, takeoffs by pane.
  • MetalBar and stock sections, cutting diagrams, solid booleans for notches and holes.
  • WoodFramed walls, lumber stock, cut lists with saw kerf, section and elevation drawings.
  • GeneralPlans, elevations and sections from the model, printed at true scale as PDF or SVG.

Works with the files you already have: import and export DXF, and export STL, OBJ and glTF. Trace over a scan or a PDF at calibrated scale.

One tool, 3D to paper

Draw it. Pull it. Type the number.

Direct modeling you can pick up in an afternoon. Sketch a shape, push it into a solid, and type the exact size at any moment. When the model is right, the drawings follow.

10'7"3/8"250mm16s
A 2D floor plan of a living room with a door swing, a labeled room, and live 12 foot and 10 foot dimensions.
Glass details drawing with a hatched edge section, radius and angle dimensions, a door swing symbol, and a north arrow.
  • Inference that guides you. Snaps to points, edges and axes, with direction locks.
  • Push/Pull, Offset, Follow Me. Pockets, frames and mouldings without leaving the drawing.
  • Groups, components, tags. Edit one component and every copy follows.
  • Real glass and materials. See-through glass, section planes and saved scenes.
  • 2D drafting built in. Live dimensions, layers, hatches, symbols, trim, fillet and mirror.
  • Drawings from the model. Elevations, plans and sections that update with it.

For tinkerers

Open the hood. Break something.

If you like to see how things work, Beveline is built to be taken apart. It's a Rust engine running as WebAssembly under a TypeScript and Three.js UI, with every edit exposed as plain data. Poke at it, script it, test it, or rebuild the parts you'd do differently.

Script it

Every edit is a serializable command with a JSON Schema. The bev command line runs them headless and exports, sheets and cut lists too.

Read it

The geometry kernel, the inference engine, the file format and the UI are all plain, documented source. No black boxes, no proprietary blobs.

Test it

More than 880 automated tests, a golden file for the format, and sample models that rebuild from a script. Bring a model that breaks it.

Wire it up

An MCP server lets assistants ask questions of a model. It works with your own key or a model running on your own machine.

# the engine, tested
$ cargo test --workspace

# the app, in a browser
$ cd app/ui && npm install && npm run dev

# rebuild a house from a script of commands
$ bev run examples/house.json --out house.bev

# a cut list as a PDF, no window needed
$ bev cutlist house.bev --pdf cutlist.pdf

Commands as they appear in the project README. The source goes public at release; if you want to poke at it sooner, say hello below.

  • EngineRust: geometry, topology, commands, undo, file format
  • In the browserWebAssembly engine, TypeScript UI, Three.js viewport
  • DesktopTauri 2 shell for Windows
  • TabletsExpo app hosting the same UI
  • Files.bev: zip + JSON with a published schema
  • LicenseMIT, with permissive-only dependencies
The Beveline assistant panel open beside the shower enclosure model, set to Ask only, with a box to ask about the model.

The assistant panel, in Ask-only mode.

Optional assistant

Ask your model questions. Review every change.

Off until you turn it on, and never required. Bring your own Claude key, any OpenAI-compatible service, or a model running on your own computer.

  • The assistant asks. The engine decides. Numbers come from the model's geometry, not from a guess.
  • Changes arrive as proposals. Keep one with Enter or reject it with Esc. Keeping is a single undo.
  • Your key stays private. It's held by the operating system's credential store, never by the page.

Where it runs

On the bench, and on the job site.

One engine that runs the same everywhere, so a model you start at the desk opens on the tablet you carry. Editing with Apple Pencil is a requirement, not an extra.

In development

Windows desktop

The first home. A native app that opens .bev files with a double-click and keeps an autosave if something goes wrong.

In testing

iPad with Apple Pencil

The same editor with pen and touch: the Pencil draws and selects, fingers move the camera, and an on-screen keypad takes typed measurements.

In testing

Android tablets

The same tablet app, with a stylus. One codebase serves both tablets.

Honest status

What works, what's next.

Beveline is pre-release. It's built and tested, but few people have used it on real jobs yet, so check anything you order or cut against your own measurements. This is the current state, not a promise of dates.

Built so far

The tools

  • 3D modeling, groups, materials, solid booleans
  • 2D drafting, views from the model, true-scale sheets
  • Glass and wind checks, cut lists, trade library
  • DXF, STL, OBJ and glTF exchange
  • Assistant that asks, checks and proposes
In testing

Real use

  • Windows installer on a clean machine
  • iPad and Android editor with Pencil and stylus
  • Real-job trials by people other than the author
Later

Public release

  • Signed installers
  • Source and downloads made public
  • Extensions and scripting API
  • The name may change before release

Get involved

Try it first. Help shape it.

Beveline isn't ready for the public yet. If you work in the trades and have a real job you'd want it to handle, I'd like to hear about it. If you like to tinker, tell me what you'd want to poke at first.