io
io copied to clipboard
DEPRECATED : Input Output handling for JSCAD (see the link below)
io
Input Output format handling for the JSCAD projects
Overview
This repository includes all the input/output format handling for the JSCAD projects, and can also be used seperatly.
NOTE : as of September 1 2018, we will NOT be accepting new PRS against the V1 / master branch: we realistically are not able to keep adding new features/fixes to the 'old' version and work on the very different V2. thank you for your comprehension ! (already open PRS at that date are exempt)
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:
- [x] amf-deserializer
- [x] dxf-deserializer
- [ ] json-deserializer
- [x] obj-deserializer
- [x] stl-deserializer
- [x] 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
- Usage
- Contribute
- Publishing
- License
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)