# @jscad/3mf-serializer

> 3MF serializer for JSCAD project

Latest version **2.1.17** (published 2026-02-22) · MIT license · 0 weekly downloads

## Install

```sh
npm install @jscad/3mf-serializer
pnpm add @jscad/3mf-serializer
yarn add @jscad/3mf-serializer
bun add @jscad/3mf-serializer
```

## Health

**Score 50/100 (C)** — status: stable.

Positive: no vulnerabilities; high maintenance score.

Warnings: low downloads; no types; no esm support.

## Facts

| | |
|---|---|
| Version | 2.1.17 |
| Published | 2026-02-22 |
| First published | 2022-04-03 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 4 |
| Unpacked size | 25.9 KB |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 3242 |
| Maintainers | z3dev, mister-jscad, simon_clark, platypii |
| Keywords | openjscad, jscad, export, serializer, 3mf |

## Links

- npm: https://www.npmjs.com/package/@jscad/3mf-serializer
- Repository: https://github.com/jscad/OpenJSCAD.org
- Homepage: https://openjscad.xyz/
- Issues: https://github.com/jscad/OpenJSCAD.org/issues
- npm.io page: https://npm.io/package/@jscad/3mf-serializer

## Dependencies (4)

- [onml](https://npm.io/package/onml.md) 1.2.0
- [fflate](https://npm.io/package/fflate.md) 0.7.3
- [@jscad/modeling](https://npm.io/package/@jscad/modeling.md) 2.13.0
- [@jscad/array-utils](https://npm.io/package/@jscad/array-utils.md) 2.1.4

## Recent versions

- 2.1.17 (latest) — 2026-02-22
- 3.0.7-alpha.0 (alpha) — 2026-08-02
- 3.0.6-alpha.0 — 2026-06-28
- 3.0.5-alpha.0 — 2026-05-16
- 3.0.4-alpha.0 — 2026-04-12
- 2.1.16 — 2026-02-11
- 3.0.3-alpha.0 — 2026-01-18
- 2.1.15 — 2025-09-20
- 3.0.2-alpha.0 — 2025-09-06
- 3.0.1-alpha.0 — 2025-01-03
- 2.1.14 — 2024-12-29
- 2.1.13 — 2024-11-10
- 2.1.12 — 2024-10-06
- 2.1.11 — 2024-06-02
- 2.1.10 — 2024-02-18
- … 10 more at https://npm.io/package/@jscad/3mf-serializer/versions

## README

## @jscad/3mf-serializer

> Serializer of JSCAD geometries to 3MF shapes

[![npm version](https://badge.fury.io/js/%40jscad%2F3mf-serializer.svg)](https://badge.fury.io/js/%40jscad%2F3mf-serializer)
[![Build Status](https://travis-ci.org/jscad/io.svg)](https://travis-ci.org/jscad/3mf-serializer)

## Overview

This serializer outputs a 'blobable' array of data from one or more JSCAD geometries. Only XML output is supported.
The array of data can either be used to create a Blob (`new Blob(blobable)`), or converted to a Node.js buffer.

The serialization of the following geometries are possible.
- serialization of 3D geometry (geom3) to 3MF mesh(s)

In addition, both color and name attributes are converted to 3MF attributes if found on the JSCAD geometry.

## Table of Contents

- [Installation](#installation)
- [Usage](#usage)
- [Contribute](#contribute)
- [License](#license)

## Installation

```
npm install @jscad/3mf-serializer
```

## Usage

```javascript
const { serialize } = require('@jscad/3mf-serializer')

const rawData = serialize({unit: inch}, geometry)

//in browser (with browserify etc)
const blob = new Blob(rawData)

```

## Contribute

For questions about the API, please contact the [User Group](https://openjscad.xyz/forum.html)

Please see the README information of the OpenJSCAD.org project for how to submit bug reports or changes.

Small Note: If editing this README, please conform to the [standard-readme](https://github.com/RichardLitt/standard-readme) specification.

## License

[The MIT License (MIT)](./LICENSE)
(unless specified otherwise)

---
_Source: https://npm.io/package/@jscad/3mf-serializer · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
