DBDelve
Dive deep into your data. A fast, native, multi-engine database client written in Rust. Free and open source, no telemetry.
翻訳待ち
Exact CAD geometry in TypeScript: a real B-Rep kernel in the browser, types that make invalid geometry uncompilable, and a verify loop for AI agents.
翻訳待ち
開発ツールRust · ShellGitHub @andymaiオンライン所有者未確認
Have you tried it? One tap is enough. No sign-in needed.
B-Rep modeling engine for brepjs — pure Rust, compiled to WebAssembly
翻訳待ち
Loading the full README.
Read the full README ↗Solid modeling kernel for Rust and WebAssembly.
Architecture · Performance · Getting Started · Documentation · Known Limitations · Stability · Contributing
One exact-geometry engine, from Rust and from JavaScript. Cut a solid, measure it, export it.
use brepkit_operations::primitives::{make_box, make_cylinder};
use brepkit_operations::boolean::{boolean, BooleanOp};
use brepkit_operations::measure::solid_volume;
use brepkit_io::step::write_step;
use brepkit_topology::Topology;
let mut topo = Topology::new();
// Primitives are anchored at the origin, so this cylinder rounds off the
// block's corner. Use `transform_solid` to place it somewhere else.
let block = make_box(&mut topo, 30.0, 20.0, 10.0)?;
let cutter = make_cylinder(&mut topo, 5.0, 15.0)?;
let notched = boolean(&mut topo, BooleanOp::Cut, block, cutter)?;
// Measure and export
let vol = solid_volume(&topo, notched, 0.1)?;
let step = write_step(&topo, &[notched])?;
import { BrepKernel } from 'brepkit-wasm';
const kernel = new BrepKernel();
// Primitives are anchored at the origin, so this cylinder rounds off the
// block's corner. Use `transformSolid` to place it somewhere else.
const block = kernel.makeBox(30, 20, 10);
const cutter = kernel.makeCylinder(5, 15);
const notched = kernel.cut(block, cutter);
// Measure and export
const vol = kernel.volume(notched, 0.1);
const step = kernel.exportStep(notched); // Uint8Array
brepkit is a B-Rep solid modeling kernel written from scratch in Rust. It targets WebAssembly, so the same kernel runs in the browser and on the desktop. unsafe is denied by lint, as are unwrap and panic. Every public operation returns a Result.
It grew out of building gridfinitylayouttool.com, where the options for parametric CAD in the browser were proprietary or compiled from large C++ codebases.
The geometry is exact. Booleans run on analytic and NURBS surfaces and keep those surfaces through the operation, so a cylinder stays a cylinder instead of becoming a bag of triangles. That keeps face counts low and round-trips lossless.
brepkit is in active development. Core modeling is solid. Each feature below is marked stable, beta, planned, or experimental, and Known Limitations covers the gaps.
The table below rates features. For API stability per crate, and what the shared 2.x version does and does not promise, see STABILITY.md.
This is the beginning of the README. Read the rest at the original. Read the full README ↗