DBDelve
DBDelve는 Rust 기반 빠른 다중 엔진 데이터베이스 클라이언트, 무료 오픈소스, 텔레메트리 없음
C# 기반 암시적(F-rep) CAD 커널
An implicit (F-rep) CAD kernel in C#: exact distance fields, certified queries, persistent face names, exact STEP export, a WebAssembly playground and an MCP server.
개발 도구C# · JavaScriptGitHub @Bas-Automation-Services가동 상태 재확인 필요운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Research spike for an AI-native, human-usable parametric CAD geometry core.
The question: can an implicit (F-rep/CSG) core keep stable, CAD-meaningful references to faces, edges and
vertices while producing exact output, and does it do better at this than a B-rep kernel? See
docs/research-plan.md for the hypotheses, the edit suite and the results.
Try it: the playground runs the kernel in your browser (WebAssembly, one thread; the chat panel needs the native server, see below).
| Project | What |
|---|---|
Isoform.Document | Feature graph, canonical text format (git-diffable), content hash, edits as data |
Isoform.Geometry | Analytic surfaces (plane, cylinder, sphere, cone, torus), CSG fields with ownership, swept profiles, exact rolling-ball fillets, smooth blends |
Isoform.Meshing | Adaptive, feature-preserving dual contouring with a resolution guarantee |
Isoform.Modeling | Regeneration, topology, references, diagnostics: the backend-neutral API |
Isoform.Build | Build methods: a design made of exact plates and tubes, with STEP, DXF, cut list, bill of materials and a certified verification report (the demo) |
Isoform.Occt | OCCT B-rep baseline behind the same API |
Isoform.Playground | The kernel in the browser (WebAssembly): document editor and 3D view |
Isoform.Server | The playground with the kernel running natively: a localhost server, the page's worker protocol over WebSocket, and the chat panel's Claude agent |
native/Isoform.Occt | Small C ABI over OpenCASCADE used by Isoform.Occt |
Block, hole, plane cut; extrude and revolve of line-and-arc sketches; linear, circular and mirror patterns; fillet and chamfer (also on faces shared with earlier fillets, on swept edges and after a shell); shell; offset; smooth join and cut. Every face is named after the feature that made it, and keeps that name through edits.
Requires the .NET 10 SDK.
dotnet test tests/Isoform.Tests # core: needs nothing else
The OCCT baseline is optional. It needs an OpenCASCADE 8.0 build, CMake ≥ 3.21 and a C++17 compiler:
# installed OCCT (folder with OpenCASCADEConfig.cmake)
cmake -S native/Isoform.Occt -B native/build -DOpenCASCADE_DIR=<occt-install>/cmake
# or a plain OCCT build folder (inc/ and win64/vc14/{lib,bin})
cmake -S native/Isoform.Occt -B native/build -DOCCT_ROOT=<occt-build>
cmake --build native/build --config Release
dotnet test tests/Isoform.Occt.Tests
The kernel compiled to WebAssembly, running in the browser: edit the document, see the part regenerate, hover a face for its name, click two faces to get the edge to fillet, read the diagnostics.
dotnet run --project src/Isoform.Playground # http://localhost:5240, interpreted: fine for small parts
For a faster build, compiled ahead of time (needs dotnet workload install wasm-tools once):
dotnet publish src/Isoform.Playground -c Release -o out/playground
python -m http.server 8137 -d out/playground/wwwroot # or any static file server
The page needs no network: three.js r160 is vendored in wwwroot/vendor/three. In the browser the kernel runs on one thread, so it is several times slower
than on the desktop.
For the kernel at desktop speed, on all cores, run the page from the native server:
dotnet run -c Release --project src/Isoform.Server # http://localhost:5250
dotnet run -c Release --project src/Isoform.Server -- --port 5260 --root <published wwwroot>
It serves the published playground (out/playground/wwwroot, else the page's sources) on localhost only, and runs the
kernel natively behind a WebSocket at /kernel, a session per connection, speaking the same protocol as the page's
workers. The page uses it when the server served it, or when ?kernel=ws://localhost:5250/kernel points at one (a page
from another origin needs --allow-origin <origin>: other sites cannot reach the kernel); the status line says native
or wasm. Without a server, or with ?kernel=wasm, the page runs the kernel in WebAssembly
as before, so a shared link works from any static host.
With the server, the Chat panel lets you ask Claude for changes ("make the plate 120 long"): the server runs Claude
(claude-opus-5-5, through the official Anthropic SDK) with the MCP tool set on the page's document, and its edits
come back as one history entry, shown in the agent view and undone like any other. The API key is read from the
server's environment only; the page never sees it:
export ANTHROPIC_API_KEY=... # PowerShell: $env:ANTHROPIC_API_KEY = "..."
dotnet run -c Release --project src/Isoform.Server
Without a key the server says so at start and the chat answers that it has none; in WebAssembly the panel is inert.
Made by Bas Automation Services: Autodesk Inventor add-ins and CAD automation from Rotterdam.
MPL-2.0. OpenCASCADE is LGPL-2.1 with an exception and is linked dynamically. The vendored three.js is MIT (its licence).