brepjs 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +54 -0
- package/dist/brepjs.cjs +10683 -0
- package/dist/brepjs.d.ts +3175 -0
- package/dist/brepjs.js +10683 -0
- package/package.json +75 -0
package/README.md
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# brepjs
|
|
2
|
+
|
|
3
|
+
Web CAD library built on OpenCascade with a layered architecture and kernel abstraction layer.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install brepjs brepjs-opencascade
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import opencascade from 'brepjs-opencascade';
|
|
15
|
+
import { setOC, draw, drawRoundedRectangle } from 'brepjs';
|
|
16
|
+
|
|
17
|
+
// Initialize the WASM kernel
|
|
18
|
+
const oc = await opencascade();
|
|
19
|
+
setOC(oc);
|
|
20
|
+
|
|
21
|
+
// Create a shape
|
|
22
|
+
const box = draw()
|
|
23
|
+
.hLine(50)
|
|
24
|
+
.vLine(30)
|
|
25
|
+
.hLine(-50)
|
|
26
|
+
.close()
|
|
27
|
+
.sketchOnPlane()
|
|
28
|
+
.extrude(10);
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Architecture
|
|
32
|
+
|
|
33
|
+
Four-layer architecture with enforced import boundaries:
|
|
34
|
+
|
|
35
|
+
| Layer | Directories | Imports from |
|
|
36
|
+
|-------|------------|--------------|
|
|
37
|
+
| 0 | `kernel/`, `utils/` | External only |
|
|
38
|
+
| 1 | `core/` | Layers 0 |
|
|
39
|
+
| 2 | `topology/`, `operations/`, `2d/`, `query/`, `measurement/`, `io/` | Layers 0-2 |
|
|
40
|
+
| 3 | `sketching/`, `text/`, `projection/` | Layers 0-3 |
|
|
41
|
+
|
|
42
|
+
## Development
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npm install
|
|
46
|
+
npm run build
|
|
47
|
+
npm run test
|
|
48
|
+
npm run typecheck
|
|
49
|
+
npm run lint
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## License
|
|
53
|
+
|
|
54
|
+
MIT
|