Maker, JavaScript Style, with Maker.js

So this isn't really hardware, but it's hardware'ish and too cool to keep in the story queue too long..

Maker.js

Maker.js, a Microsoft Garage project, is a JavaScript library for creating and sharing modular line drawings for CNC and laser cutters.

Maker.js creates line drawings for two dimensional maker machines, like laser cutters and CNC routers. Using the Maker.js JavaScript library, which can run in a Node.js environment or in a web browser, a developer may create a small program that creates a line drawing. The developer’s program may accept parameters which can be used to alter the drawing. The program can be shared and re-used in other drawings. Lastly, the drawing can be exported to a file which can be used directly by a maker machine, uploaded to a maker service, or imported into other 2D or 3D CAD software.

Features

  • Export formats: DXF / SVG
  • Uses plain old JavaScript objects (POJO’s) for its drawing model
  • Import and modify other drawings
  • Conversion between unit systems: Millimeter / Centimeter / Meter / Inch / Foot / Unitless
  • Primitive paths: Line / Circle / Arc
  • Transformations: Mirror / Rotate / Scale
  • Functions: Break path / Bridge Path / Compute intersection / Triangle solvers
  • Basic models:
    • Bolt circle
    • Bolt rectangle
    • Connect the dots
    • Golden Rectangle
    • Oval
    • Oval Arc
    • Polygon
    • Rectangle
    • Rounded rectangle
    • S curve
    • Square

Community

Share your drawings on NPM.

File issues or bugs in the Github repo.

Help or questions on StackOverflow.

Discussion on Gitter

Project info

Maker.js was inspired by OpenSCAD. Concept and inital version written by Dan Marshall using TypeScript.

Maker.js logo created by Greg Melander.

Check out the Demos...

image

How hard is it to use?

Basic Drawing

image

And as you've already seen, it's open source too... https://github.com/Microsoft/maker.js :)



Tags:

Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
    Unsubscribing
    Subscribing

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.