# node-elm-compiler

> A Node.js interface to the Elm compiler binaries.

Latest version **5.0.6** (published 2021-04-08) · BSD-3-Clause license · 0 weekly downloads

## Install

```sh
npm install node-elm-compiler
pnpm add node-elm-compiler
yarn add node-elm-compiler
bun add node-elm-compiler
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

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

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 5.0.6 |
| Published | 2021-04-08 |
| First published | 2015-03-15 |
| Weekly downloads | 0 |
| License | BSD-3-Clause |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=4.0.0 |
| Dependencies | 4 |
| Unpacked size | 18 KB |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 175 |
| Author | Richard Feldman |
| Maintainers | rtfeldman, noredink-user |
| Keywords | elm, compiler, node |

## Links

- npm: https://www.npmjs.com/package/node-elm-compiler
- Repository: https://github.com/rtfeldman/node-elm-compiler
- Issues: https://github.com/rtfeldman/node-elm-compiler/issues
- npm.io page: https://npm.io/package/node-elm-compiler

## Dependencies (4)

- [temp](https://npm.io/package/temp.md) ^0.9.0
- [lodash](https://npm.io/package/lodash.md) ^4.17.19
- [cross-spawn](https://npm.io/package/cross-spawn.md) 6.0.5
- [find-elm-dependencies](https://npm.io/package/find-elm-dependencies.md) ^2.0.4

## Alternatives

- [@openai/codex-sdk](https://npm.io/package/@openai/codex-sdk.md) — 731.4K weekly downloads
- [babel-plugin-transform-react-jsx](https://npm.io/package/babel-plugin-transform-react-jsx.md) — 565.0K weekly downloads
- [babel-helper-remove-or-void](https://npm.io/package/babel-helper-remove-or-void.md) — 508.5K weekly downloads
- [@pnpm/store-controller-types](https://npm.io/package/@pnpm/store-controller-types.md) — 186.9K weekly downloads
- [react-native-signature-canvas](https://npm.io/package/react-native-signature-canvas.md) — 155.6K weekly downloads

## Recent versions

- 5.0.6 (latest) — 2021-04-08
- 5.0.0-alpha1 (alpha) — 2018-04-27
- 4.3.3-beta (beta) — 2017-09-01
- 5.0.5 — 2020-08-17
- 5.0.4 — 2019-08-02
- 5.0.3 — 2019-02-26
- 5.0.2 — 2019-02-25
- 5.0.1 — 2018-08-29
- 5.0.0 — 2018-08-28
- 4.5.0 — 2018-02-13
- 4.4.1 — 2017-12-09
- 4.4.0 — 2017-12-03
- 4.3.3 — 2017-09-01
- 4.3.2 — 2017-05-30
- 4.3.1 — 2017-03-31
- … 30 more at https://npm.io/package/node-elm-compiler/versions

## README

# node-elm-compiler [![Version](https://img.shields.io/npm/v/node-elm-compiler.svg)](https://www.npmjs.com/package/node-elm-compiler) [![Travis build Status](https://travis-ci.org/rtfeldman/node-elm-compiler.svg?branch=master)](http://travis-ci.org/rtfeldman/node-elm-compiler) [![AppVeyor build status](https://ci.appveyor.com/api/projects/status/xv83jcomgb81i1iu/branch/master?svg=true)](https://ci.appveyor.com/project/rtfeldman/node-elm-compiler/branch/master)

Wraps [Elm](https://elm-lang.org) and exposes a [Node](https://nodejs.org) API to compile Elm 0.19 sources.

# Example

```bash
$ npm install
$ cd examples
$ node compileHelloWorld.js
```

# Releases

## 5.0.5

Upgrade find-elm-dependencies and lodash dependencies to fix CVE-2020-8203 vulnerability.

## 5.0.2

Upgrade lodash dependency to fix security audit warning. ([#93](https://github.com/rtfeldman/node-elm-compiler/pull/93))

## 5.0.1

Add helpful errors if you use the obsolete `warn` and `pathToMake` flags. ([#75](https://github.com/rtfeldman/node-elm-compiler/pull/75))

## 5.0.0

Add 0.19 support. Remove `yes` option. Add `optimize` option. Throw exceptions instead of emitting warnings or using process.exit.

## 4.5.0

Add `runtimeOptions`

## 4.4.0

Add `compileToStringSync`

## 4.3.1

Upgrade `findAllDependencies` dependency to correctly report all dependencies within a multi-source-directory project.

## 4.3.0

Add `compileSync` via @yormi

## 4.2.1

Epic perf improvements from @eeue56

## 4.2.0

Add support for `--debug` flag.

## 4.1.5

Clean up temporary directories more safely.

## 4.1.4

`findAllDependencies` now supports `port module` files.

## 4.1.3

Use utf-8 encoding for `compileToString`

## 4.1.2

Support checking dependencies for modules with no module declaration.

## 4.1.1

Fix bug in dependency searches beginning with a non-root `Main` module.

## 4.1.0

Log elm-make output in verbose mode.

## 4.0.1

Fix missing `temp` dependency.

## 4.0.0

Use an `Error` object for result errors instead of a string.

## 3.0.0

Passing the `warn` option now passes `--warn` to `elm-make`, and `emitWarning` now controls warning logging.

## 2.3.3

Fix bug where nonzero exit codes were not rejecting promises.

## 2.3.2

Fix bug related to converting module dots to directories in nested dependency
resolution.

## 2.3.1

Move `temp` dependency out of `devDependencies`

## 2.3.0

Added #compileToString

## 2.2.0

Added `cwd` to `options` and fixed a bug where Windows couldn't find `elm-make`.

## 2.1.0

Added #findAllDependencies

## 2.0.0

No longer searches `node_modules/.bin` for `elm-make` - now if you don't specify
a `pathToMake` option, only the one on PATH will be used as a fallback.

## 1.0.0

Initial release.

---
_Source: https://npm.io/package/node-elm-compiler · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
