npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

brep-io-kernel

v1.0.170

Published

- [NPM package: `brep-io-kernel` https://www.npmjs.com/package/brep-io-kernel](https://www.npmjs.com/package/brep-io-kernel) - [Live API examples https://BREP.io/apiExamples/index.html](https://BREP.io/apiExamples/index.html) - [Developer Discord https:

Downloads

11,251

Readme

BREP.io

Source https://github.com/mmiscool/BREP

BREP.io is a browser-based CAD application and JavaScript kernel for feature-based solid modeling.
At its core is a BREP-style modeler with explicit geometry/topology objects such as Solid, Face, Edge, and Vertex, paired with an editable feature-history pipeline.
It also includes sketch workflows powered by a standalone 2D constraint solver, plus robust manifold booleans (manifold-3d), mesh repair/import tooling, assembly constraints, PMI annotations, and embeddable CAD/sketcher APIs.

This project is in active development and APIs may continue to evolve.

Workbenches

Screenshots

Home @280 Modeling Mode @280 Sketch Mode @280 PMI Mode @280 2D Sheets Mode @280 Image to Face 2D @280 Image to Face 3D @280

Documentation Index

General:

Core APIs:

System docs:

Mode guides:

Modeling Feature Docs

Feature index:

Primitives and setup:

Solid operations:

Pattern, import, and generation:

Assembly and sheet metal:

Additional implemented features in the codebase include collapse edge, edge smooth, offset face, overlap cleanup, sheet metal hem, and sheet metal cutout.

Assembly Constraints

PMI Annotation Docs

Quick Start

Prerequisites:

  • Node.js 18+
  • pnpm

Install and run locally:

pnpm install
pnpm dev

Then open the Vite URL shown in your terminal.

  • Main app shell: /index.html
  • Direct CAD workspace: /cad.html

Build, Test, and Utility Commands

| Command | Purpose | |---|---| | pnpm dev | Prepares fonts, builds the kernel bundle, then runs the Vite dev server. | | pnpm build | Production build of the app into dist/ (includes kernel build step). | | pnpm build:kernel | Builds the ESM kernel bundle into dist-kernel/ and syncs assets. | | pnpm test | Runs the Node test suite (src/tests/tests.js), writing artifacts to tests/results/. | | pnpm liveTesting | Watches src/ and tests/ and reruns tests on change. | | pnpm capture | Captures docs/dialog screenshots. | | pnpm generateLicenses | Regenerates dependency and bundled-font license summaries. |

Build outputs:

  • dist/: static web app (ready for CDN/web hosting)
  • dist-kernel/: published kernel bundle artifacts

Use as an NPM Package

Package name: brep-io-kernel (ESM-only).

Install:

pnpm add brep-io-kernel

Main imports:

import {
  BREP,
  PartHistory,
  AssemblyConstraintHistory,
  AssemblyConstraintRegistry,
  CadEmbed,
  Sketcher2DEmbed
} from "brep-io-kernel";

Subpath imports:

import { BREP } from "brep-io-kernel/BREP";
import { PartHistory } from "brep-io-kernel/PartHistory";
import { CadEmbed } from "brep-io-kernel/CAD";
import { Sketcher2DEmbed } from "brep-io-kernel/Sketcher2D";
import { ConstraintSolver, ConstraintEngine, constraints } from "brep-io-kernel/SketchSolver2D";

Node examples:

CLI helper:

npx brep-io-kernel
npx brep-io-kernel --host 127.0.0.1 --port 4173
npx brep-io-kernel --help

License helper APIs:

import { getPackageLicenseInfoString, getAllLicensesInfoString } from "brep-io-kernel";

console.log(getPackageLicenseInfoString()); // package license info
console.log(getAllLicensesInfoString());    // package + production dependencies

CommonJS note:

const { BREP } = await import("brep-io-kernel");

Repository Layout

  • src/BREP: core solid/kernel implementation
  • src/features: feature implementations and dialogs
  • src/assemblyConstraints: assembly solver and constraints
  • src/UI: CAD/sketcher UI and embedding bridges
  • docs/: markdown docs and screenshots
  • apiExamples/: standalone browser API demos
  • tests/ and src/tests/: test assets and test runner

Contributing

See CONTRIBUTING.md.

License

See LICENSE.md. This project uses a dual-licensing strategy managed by Autodrop3d LLC.