Skip to content

Latest commit

 

History

History
120 lines (74 loc) · 4.35 KB

README.md

File metadata and controls

120 lines (74 loc) · 4.35 KB

io

Input Output format handling for the JSCAD projects

lerna

Overview

This repository includes all the input/output format handling for the JSCAD projects, and can also be used seperatly.

Input Format Handling (deserializers)

ie: file data => jscad code (that can be evaluated to CSG/CAG)

note : currently serializers & deserializers are NOT symetrical as deserializers do not generate CSG/CAG objects: there is however work done to enable CSG/CAG output directly

deserializers with optional CSG/CAG output:

  • amf-deserializer
  • dxf-deserializer
  • json-deserializer
  • obj-deserializer
  • stl-deserializer
  • svg-deserializer

Following formats are supported as inputs:

Output Format Handling (serializers)

ie: CSG/CAG => blob

Following formats are supported as outputs:

Table of Contents

Installation

npm install @jscad/io

Usage

  • as Node module :
const io = require('@jscad/io')

Contribute

This library is part of the JSCAD Organization, and is maintained by a group of volunteers. We welcome and encourage anyone to pitch in but please take a moment to read the following guidelines.

  • If you want to submit a bug report please make sure to follow the Reporting Issues guide. Bug reports are accepted as Issues via GitHub.

  • If you want to submit a change or a patch, please see the Contributing guidelines. New contributions are accepted as Pull Requests via GithHub.

  • We only accept bug reports and pull requests on GitHub.

  • If you have a question about how to use the IO library, then please start a conversation at the OpenJSCAD.org User Group. You might find the answer in the OpenJSCAD.org User Guide.

  • If you have a change or new feature in mind, please start a conversation with the Core Developers and start contributing changes.

Small Note: If editing this README, please conform to the standard-readme specification.

Publishing

This is for owners/ managers of the repo only, obviously :)

It is done in semi-automated manner with Lerna & conventional-commits (semantic release) It automatically checks out the master branch and pulls the latest version from the remote repo

In case of doubt, please ask @kaosat-dev for help

you need to have npm & git authorization setup beforehand

  • Do a dry run first !!
npm run publish-dryrun

then answer 'no' to avoid publishing to either git or npm

  • when you are SURE everything is ok and you want to publish

npm run publish

Note: DO NOT publish the packages individually and manually , unless you have very good reasons to, and have discussed it with the rest of the team

License

The MIT License (MIT) (unless specified otherwise)