cyclecad 3.2.0 → 3.4.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.
Files changed (65) hide show
  1. package/DOCKER-SETUP-VERIFICATION.md +399 -0
  2. package/DOCKER-TESTING.md +463 -0
  3. package/FUSION360_MODULES.md +478 -0
  4. package/FUSION_MODULES_README.md +352 -0
  5. package/INTEGRATION_SNIPPETS.md +608 -0
  6. package/KILLER-FEATURES-DELIVERY.md +469 -0
  7. package/MODULES_SUMMARY.txt +337 -0
  8. package/QUICK_REFERENCE.txt +298 -0
  9. package/README-DOCKER-TESTING.txt +438 -0
  10. package/app/index.html +23 -10
  11. package/app/js/fusion-help.json +1808 -0
  12. package/app/js/help-module-v3.js +1096 -0
  13. package/app/js/killer-features-help.json +395 -0
  14. package/app/js/killer-features.js +1508 -0
  15. package/app/js/modules/fusion-assembly.js +842 -0
  16. package/app/js/modules/fusion-cam.js +785 -0
  17. package/app/js/modules/fusion-data.js +814 -0
  18. package/app/js/modules/fusion-drawing.js +844 -0
  19. package/app/js/modules/fusion-inspection.js +756 -0
  20. package/app/js/modules/fusion-render.js +774 -0
  21. package/app/js/modules/fusion-simulation.js +986 -0
  22. package/app/js/modules/fusion-sketch.js +1044 -0
  23. package/app/js/modules/fusion-solid.js +1095 -0
  24. package/app/js/modules/fusion-surface.js +949 -0
  25. package/app/tests/FUSION_TEST_SUITE.md +266 -0
  26. package/app/tests/README.md +77 -0
  27. package/app/tests/TESTING-CHECKLIST.md +177 -0
  28. package/app/tests/TEST_SUITE_SUMMARY.txt +236 -0
  29. package/app/tests/brep-live-test.html +848 -0
  30. package/app/tests/docker-integration-test.html +811 -0
  31. package/app/tests/fusion-all-tests.html +670 -0
  32. package/app/tests/fusion-assembly-tests.html +461 -0
  33. package/app/tests/fusion-cam-tests.html +421 -0
  34. package/app/tests/fusion-simulation-tests.html +421 -0
  35. package/app/tests/fusion-sketch-tests.html +613 -0
  36. package/app/tests/fusion-solid-tests.html +529 -0
  37. package/app/tests/index.html +453 -0
  38. package/app/tests/killer-features-test.html +509 -0
  39. package/app/tests/run-tests.html +874 -0
  40. package/app/tests/step-import-live-test.html +1115 -0
  41. package/app/tests/test-agent-v3.html +93 -696
  42. package/architecture-dashboard.html +1970 -0
  43. package/docs/API-REFERENCE.md +1423 -0
  44. package/docs/BREP-LIVE-TEST-GUIDE.md +453 -0
  45. package/docs/DEVELOPER-GUIDE-v3.md +795 -0
  46. package/docs/DOCKER-QUICK-TEST.md +376 -0
  47. package/docs/FUSION-FEATURES-GUIDE.md +2513 -0
  48. package/docs/FUSION-TUTORIAL.md +1203 -0
  49. package/docs/INFRASTRUCTURE-GUIDE-INDEX.md +327 -0
  50. package/docs/KEYBOARD-SHORTCUTS.md +402 -0
  51. package/docs/KILLER-FEATURES-INTEGRATION.md +412 -0
  52. package/docs/KILLER-FEATURES-SUMMARY.md +424 -0
  53. package/docs/KILLER-FEATURES-TUTORIAL.md +784 -0
  54. package/docs/KILLER-FEATURES.md +562 -0
  55. package/docs/QUICK-REFERENCE.md +282 -0
  56. package/docs/README-v3-DOCS.md +274 -0
  57. package/docs/TUTORIAL-v3.md +1190 -0
  58. package/docs/architecture-dashboard.html +1970 -0
  59. package/docs/architecture-v3.html +1038 -0
  60. package/linkedin-post-v3.md +58 -0
  61. package/package.json +1 -1
  62. package/scripts/dev-setup.sh +338 -0
  63. package/scripts/docker-health-check.sh +159 -0
  64. package/scripts/integration-test.sh +311 -0
  65. package/scripts/test-docker.sh +515 -0
@@ -0,0 +1,395 @@
1
+ {
2
+ "killer_features": {
3
+ "ai_copilot_chat": {
4
+ "title": "AI Design Copilot Chat",
5
+ "category": "Input",
6
+ "shortcut": "Ctrl+K",
7
+ "description": "Natural language CAD commands. Convert English descriptions into 3D geometry instantly.",
8
+ "examples": [
9
+ {
10
+ "input": "gear 24 teeth module 2",
11
+ "output": "Spur gear with 24 teeth, module 2, 10mm bore"
12
+ },
13
+ {
14
+ "input": "bracket 80x40x5 with holes",
15
+ "output": "L-shaped bracket with mounting holes"
16
+ },
17
+ {
18
+ "input": "cylinder 50mm diameter 80 tall",
19
+ "output": "Parametric cylinder geometry"
20
+ },
21
+ {
22
+ "input": "sphere 30mm",
23
+ "output": "Smooth sphere with PBR material"
24
+ }
25
+ ],
26
+ "usage": "1. Press Ctrl+K to open copilot\n2. Type your command\n3. Press Enter to create geometry\n4. Geometry appears in viewport instantly",
27
+ "supported_types": [
28
+ "gear",
29
+ "bracket",
30
+ "cylinder",
31
+ "sphere",
32
+ "plate",
33
+ "washer",
34
+ "spacer"
35
+ ],
36
+ "tips": [
37
+ "Typos are OK: 'geer', 'dieameter', 'sylindr' all work",
38
+ "Units are always in mm",
39
+ "Use formulas in parameters: 'gear with bore =wall_thickness*5'",
40
+ "Undo with Ctrl+Z if you don't like the result"
41
+ ]
42
+ },
43
+ "physics_simulation": {
44
+ "title": "Physics Simulation",
45
+ "category": "Analysis",
46
+ "shortcut": "Ctrl+P",
47
+ "description": "Real-time drop testing with stress analysis. Identify where parts will fail under impact.",
48
+ "features": [
49
+ "Gravity simulation (-9.81 m/s²)",
50
+ "Collision detection",
51
+ "Stress visualization (blue-yellow-red)",
52
+ "60 FPS performance",
53
+ "Automatic material damping"
54
+ ],
55
+ "colors": {
56
+ "blue": "Safe (0-25% stress)",
57
+ "yellow": "Warning (25-50% stress)",
58
+ "red": "Critical (50-100% stress)"
59
+ },
60
+ "usage": "1. Press Ctrl+P to start simulation\n2. Objects fall due to gravity\n3. Watch for color changes on impact\n4. Red areas indicate failure points\n5. Optimize design to reduce red stress",
61
+ "tips": [
62
+ "Physics runs in background, doesn't block modeling",
63
+ "Bounce coefficient is 0.6 (60% energy rebound)",
64
+ "Each impact accumulates stress on meshes",
65
+ "Combine with Parameter Table to iterate quickly",
66
+ "Export stressmap as texture for analysis"
67
+ ]
68
+ },
69
+ "generative_design": {
70
+ "title": "Generative Design",
71
+ "category": "Optimization",
72
+ "shortcut": "Ctrl+G",
73
+ "description": "Auto-generate optimized topology with constraints. Create organic lattice structures that minimize material while maintaining stiffness.",
74
+ "parameters": {
75
+ "material_budget": {
76
+ "range": "10-100%",
77
+ "default": "50%",
78
+ "meaning": "Percentage of original volume to retain"
79
+ },
80
+ "iterations": {
81
+ "range": "1-100",
82
+ "default": "20",
83
+ "meaning": "Number of optimization cycles (higher = better but slower)"
84
+ }
85
+ },
86
+ "applications": [
87
+ "Lightweight aerospace brackets",
88
+ "Organic automotive parts",
89
+ "Heat sink designs",
90
+ "Lattice structures"
91
+ ],
92
+ "usage": "1. Press Ctrl+G\n2. Set material budget (e.g., 50%)\n3. Set iterations (e.g., 30)\n4. Click 'Generate Optimized Structure'\n5. Watch progress bar as algorithm runs\n6. Result is a strut-based lattice",
93
+ "tips": [
94
+ "More iterations = better results but takes longer",
95
+ "Lower budget = sparser, more artistic result",
96
+ "Export lattice as STL for 3D printing",
97
+ "Can layer multiple generative steps for refinement",
98
+ "Combine with Physics to validate optimized design"
99
+ ]
100
+ },
101
+ "cost_estimator": {
102
+ "title": "Real-time Cost Estimator",
103
+ "category": "Manufacturing",
104
+ "shortcut": "Ctrl+C",
105
+ "description": "Live manufacturing cost calculation for three methods: CNC, 3D printing, and injection molding.",
106
+ "methods": {
107
+ "cnc_machining": {
108
+ "formula": "$15/min × (volume/10), min $50",
109
+ "lead_time": "5-10 days",
110
+ "best_for": "One-offs, prototypes, small batches"
111
+ },
112
+ "3d_printing": {
113
+ "formula": "$0.10 per cm³, min $25",
114
+ "lead_time": "1-3 days",
115
+ "best_for": "Rapid prototyping, complex geometry"
116
+ },
117
+ "injection_molding": {
118
+ "formula": "($5,000 tooling + $0.05/cm³) ÷ 1,000 units",
119
+ "lead_time": "2-4 weeks",
120
+ "best_for": "High-volume (1,000+) production"
121
+ }
122
+ },
123
+ "usage": "1. Create or edit a part\n2. Cost estimator updates automatically\n3. See three prices in real-time\n4. Bottom shows recommended method\n5. Modify geometry and watch costs change",
124
+ "tips": [
125
+ "Always visible at top-right corner",
126
+ "Updates every 1 second as you model",
127
+ "Use for ROI analysis: 'At what volume does tooling pay off?'",
128
+ "Consider post-processing when estimating total cost",
129
+ "Material changes: titanium is ~5× steel cost"
130
+ ]
131
+ },
132
+ "smart_snap": {
133
+ "title": "Smart Snap & Auto-Dimension",
134
+ "category": "Assembly",
135
+ "shortcut": "Enabled by default",
136
+ "description": "Intelligent snapping recognizes design intent. Auto-detects bolt circles and linear arrays. Auto-places dimensions on drawings.",
137
+ "snap_threshold": "15 pixels",
138
+ "pattern_types": [
139
+ {
140
+ "type": "bolt_circle",
141
+ "detection": "3+ holes arranged in circle (variance < 5mm)",
142
+ "example": "8 holes on Ø80 PCD"
143
+ },
144
+ {
145
+ "type": "linear_array",
146
+ "detection": "3+ parts in evenly-spaced line",
147
+ "example": "5× fasteners at 25mm spacing"
148
+ }
149
+ ],
150
+ "usage": "1. Drag part towards another part\n2. Within 15px, snap preview appears\n3. Release to snap into place\n4. Bolt circles auto-detect during drawing generation",
151
+ "tips": [
152
+ "Snap distance is configurable: 15px default",
153
+ "Pattern detection is automatic, no manual input needed",
154
+ "Drawings auto-dimension detected patterns",
155
+ "Use for rapid assembly mockups",
156
+ "Combine with smart mate for full assembly workflow"
157
+ ]
158
+ },
159
+ "version_control": {
160
+ "title": "Version Control Visual Diff",
161
+ "category": "Documentation",
162
+ "shortcut": "None (use menu)",
163
+ "description": "Git-like CAD branching with visual geometry comparison. Track design iterations and rollback changes.",
164
+ "features": [
165
+ "Save versions with timestamps",
166
+ "Multiple branches (main, feature/*, bugfix/*)",
167
+ "Visual diff: green=added, red=removed, orange=modified",
168
+ "Restore any previous version",
169
+ "Feature count tracking"
170
+ ],
171
+ "workflow": "main/v1.0 → feature/optimization → main/v1.1 → feature/fixes → main/v1.2",
172
+ "usage": "1. Click 'Save Version' button\n2. Version appears in history with timestamp\n3. Switch branches from dropdown\n4. Click 'Show Diff' to compare last 2 versions\n5. Geometry changes highlighted with colors\n6. Click any version to restore",
173
+ "tips": [
174
+ "Save after every major milestone",
175
+ "Use descriptive branch names: feature/weight-opt, bugfix/hole-offset",
176
+ "Visual diff is instant, no git learning curve",
177
+ "Export version history as JSON for archival",
178
+ "Branching is non-destructive: always have a fallback"
179
+ ]
180
+ },
181
+ "parametric_table": {
182
+ "title": "Parametric Table",
183
+ "category": "Engineering",
184
+ "shortcut": "Ctrl+T",
185
+ "description": "Excel-like parameter editor with formula support. Create families of parts with one spreadsheet.",
186
+ "default_parameters": [
187
+ {
188
+ "name": "width",
189
+ "value": "100",
190
+ "unit": "mm"
191
+ },
192
+ {
193
+ "name": "height",
194
+ "value": "50",
195
+ "unit": "mm"
196
+ },
197
+ {
198
+ "name": "hole_diameter",
199
+ "value": "10",
200
+ "unit": "mm"
201
+ }
202
+ ],
203
+ "formulas": [
204
+ {
205
+ "example": "=width*2",
206
+ "result": "Double the width"
207
+ },
208
+ {
209
+ "example": "=wall_thickness*5",
210
+ "result": "Hole is 5× wall thickness"
211
+ },
212
+ {
213
+ "example": "=depth + 10",
214
+ "result": "Offset by 10mm"
215
+ }
216
+ ],
217
+ "usage": "1. Press Ctrl+T to open table\n2. Edit values directly in cells\n3. Add formulas with = prefix\n4. Press Enter to recalculate\n5. Geometry updates live in viewport\n6. Export/Import CSV for sharing",
218
+ "tips": [
219
+ "Formulas are live: change width, height auto-updates",
220
+ "CSV roundtrip: Export → Excel → Import",
221
+ "Create family of sizes: S, M, L variants",
222
+ "Use for design exploration: test 100 variations in 5 minutes",
223
+ "Parameters feed into BOM and cost estimates"
224
+ ]
225
+ },
226
+ "smart_assembly_mating": {
227
+ "title": "Smart Assembly Mating",
228
+ "category": "Assembly",
229
+ "shortcut": "Drag parts",
230
+ "description": "Drag-to-snap assembly with auto-detected mate types. No manual positioning needed.",
231
+ "mate_types": [
232
+ {
233
+ "type": "coincident",
234
+ "when": "General overlap",
235
+ "example": "Bracket on base plate"
236
+ },
237
+ {
238
+ "type": "concentric",
239
+ "when": "Both cylinder-like (aspect > 2)",
240
+ "example": "Shaft through bearing"
241
+ },
242
+ {
243
+ "type": "tangent",
244
+ "when": "One flat surface (aspect < 0.3)",
245
+ "example": "Sphere on ramp"
246
+ },
247
+ {
248
+ "type": "offset",
249
+ "when": "Parallel at distance",
250
+ "example": "Washers on bolt"
251
+ }
252
+ ],
253
+ "snap_threshold": "20 pixels",
254
+ "usage": "1. Click and drag part A towards part B\n2. System analyzes geometry\n3. Within 20px, snap preview shows\n4. System auto-selects mate type\n5. Release to snap and apply mate",
255
+ "tips": [
256
+ "Mate type is automatic based on geometry analysis",
257
+ "Snap distance is 20px (quite forgiving)",
258
+ "Visual preview before snapping prevents mistakes",
259
+ "Use for rapid assembly mockups",
260
+ "Undo with Ctrl+Z if snap was wrong"
261
+ ]
262
+ },
263
+ "manufacturing_drawings": {
264
+ "title": "Manufacturing Drawings Auto-Generator",
265
+ "category": "Output",
266
+ "shortcut": "Menu: File → Generate Drawing",
267
+ "description": "One-click ISO/ANSI engineering drawings with all technical details. Send directly to machine shop.",
268
+ "included_content": [
269
+ "Title block with document metadata",
270
+ "Three orthogonal views (Front, Top, Side)",
271
+ "Auto-placed dimensions",
272
+ "Geometric dimensioning & tolerancing (GD&T)",
273
+ "Bill of Materials table",
274
+ "Notes and revision history"
275
+ ],
276
+ "standards": [
277
+ "ISO 128 (default)",
278
+ "ANSI Y14.5 (optional)"
279
+ ],
280
+ "output_format": "PNG at 200 DPI (PDF-ready)",
281
+ "usage": "1. Complete your design in 3D\n2. Menu: File → Generate Drawing\n3. Wait 2 seconds for rendering\n4. Drawing appears in new window\n5. Click 'Download' to save PNG\n6. Send to machine shop or 3D print service",
282
+ "tips": [
283
+ "One-click: no configuration needed",
284
+ "Auto-dimensions: critical features highlighted",
285
+ "ISO standard: recognized worldwide",
286
+ "Export as PNG: edit in Photoshop if needed",
287
+ "BOM is live: changes in model → BOM auto-updates"
288
+ ]
289
+ },
290
+ "digital_twin_live_data": {
291
+ "title": "Digital Twin Live Data",
292
+ "category": "Monitoring",
293
+ "shortcut": "Menu: View → Digital Twin",
294
+ "description": "Real-time IoT sensor visualization on 3D model. Monitor temperature, vibration, and wear in real-time.",
295
+ "sensor_data": {
296
+ "temperature": {
297
+ "unit": "Celsius",
298
+ "color_blue": "45-50°C (safe)",
299
+ "color_yellow": "50-70°C (warning)",
300
+ "color_red": "70°C+ (critical)"
301
+ },
302
+ "vibration": {
303
+ "unit": "mm/s",
304
+ "effect": "Scale animation"
305
+ },
306
+ "wear": {
307
+ "unit": "Percentage (0-100%)",
308
+ "alert_level": "80% (schedule maintenance)"
309
+ }
310
+ },
311
+ "update_frequency": "100ms",
312
+ "usage": "1. Enable: Menu View → Digital Twin\n2. HUD appears showing live data\n3. Model colors reflect temperature\n4. Watch vibration scale animation\n5. Track wear percentage over time",
313
+ "tips": [
314
+ "Simulation mode: test with fake data (default)",
315
+ "Real sensors: connect via WebSocket",
316
+ "Color feedback is instant visual status",
317
+ "Export data: CSV for predictive analysis",
318
+ "Predictive maintenance: use wear trends to schedule service",
319
+ "Multi-sensor: monitor 4+ bearings simultaneously"
320
+ ]
321
+ }
322
+ },
323
+ "quick_start": {
324
+ "tutorial_1_minute": "Press Ctrl+K, type 'gear 24 teeth', press Enter",
325
+ "tutorial_5_minutes": "Create a part → Press Ctrl+P → Watch physics → Check costs",
326
+ "tutorial_10_minutes": "Full workflow: Copilot → Physics → Generative → Costs → Export Drawing"
327
+ },
328
+ "keyboard_shortcuts": {
329
+ "Ctrl+K": "AI Copilot Chat",
330
+ "Ctrl+P": "Physics Simulation toggle",
331
+ "Ctrl+G": "Generative Design",
332
+ "Ctrl+C": "Cost Estimator (show)",
333
+ "Ctrl+T": "Parameter Table",
334
+ "Ctrl+Z": "Undo",
335
+ "Ctrl+Y": "Redo",
336
+ "Ctrl+S": "Save document"
337
+ },
338
+ "troubleshooting": [
339
+ {
340
+ "problem": "Copilot doesn't understand my command",
341
+ "solution": "Use simpler language: 'gear 24 teeth' instead of 'create a gearwheel with 24 teeth and a 5mm bore'",
342
+ "details": "The parser looks for specific keywords (gear, bracket, cylinder) and numerical values"
343
+ },
344
+ {
345
+ "problem": "Physics simulation is slow",
346
+ "solution": "Reduce number of meshes or disable for a moment",
347
+ "details": "Physics runs on all objects. Hide non-essential parts to improve speed"
348
+ },
349
+ {
350
+ "problem": "Snap isn't working",
351
+ "solution": "Check that snap is enabled and parts are within 15 pixels",
352
+ "details": "Move your parts closer together. Snap distance is 15px by default"
353
+ },
354
+ {
355
+ "problem": "Drawing is missing dimensions",
356
+ "solution": "Ensure your part has clear geometry and no internal holes",
357
+ "details": "Auto-dimension works best on simple shapes. Complex cavities may not be detected"
358
+ },
359
+ {
360
+ "problem": "Parameter formula error",
361
+ "solution": "Check formula syntax: =width*2 (not =width * 2 with spaces)",
362
+ "details": "Formulas are JavaScript expressions. Avoid spaces around operators"
363
+ }
364
+ ],
365
+ "api_reference": {
366
+ "ai_copilot": {
367
+ "show": "KillerFeatures.features.aiCopilot.show()",
368
+ "process_command": "KillerFeatures.features.aiCopilot.processCommand('gear 24 teeth')"
369
+ },
370
+ "physics": {
371
+ "toggle": "KillerFeatures.features.physics.toggle()",
372
+ "start": "KillerFeatures.features.physics.start()",
373
+ "stop": "KillerFeatures.features.physics.stop()"
374
+ },
375
+ "generative": {
376
+ "show": "KillerFeatures.features.generative.show()",
377
+ "generate": "KillerFeatures.features.generative.generateTopology(0.5, 20)"
378
+ },
379
+ "parameters": {
380
+ "show": "KillerFeatures.features.parameterTable.show()",
381
+ "update": "KillerFeatures.features.parameterTable.updateParameter('width', 150)",
382
+ "export_csv": "KillerFeatures.features.parameterTable.exportCSV()"
383
+ }
384
+ },
385
+ "tips_and_tricks": [
386
+ "Combine AI Copilot + Generative Design to create optimized parts in 1 minute",
387
+ "Use Parameter Table to create a family of 10 sizes from one design",
388
+ "Physics + Parameter Table = rapid iteration on robust designs",
389
+ "Version Control branching: feature/weight-opt, feature/faster-assembly, etc.",
390
+ "Manufacturing Drawings export to PDF: File → Generate Drawing → Save → Print",
391
+ "Smart Snap works best with similar-sized parts; adjust snap distance if needed",
392
+ "Digital Twin: export live data to CSV, use Excel for trend analysis",
393
+ "Use Cost Estimator to decide: 1 part = 3D Print, 1000 parts = Injection Mold"
394
+ ]
395
+ }