# render-expression

> Web editor for a single unit of javascript code

Latest version **0.37.0** (published 2017-06-07) · 0 weekly downloads

## Install

```sh
npm install render-expression
pnpm add render-expression
yarn add render-expression
bun add render-expression
```

## Health

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

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; low quality score; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.37.0 |
| Published | 2017-06-07 |
| First published | 2017-03-06 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 9 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Maintainers | erikpukinskis |

## Links

- npm: https://www.npmjs.com/package/render-expression
- Repository: https://github.com/erikpukinskis/render-expression
- Homepage: https://github.com/erikpukinskis/render-expression#readme
- Issues: https://github.com/erikpukinskis/render-expression/issues
- npm.io page: https://npm.io/package/render-expression

## Dependencies (9)

- [add-html](https://npm.io/package/add-html.md) *
- [web-element](https://npm.io/package/web-element.md) *
- [basic-styles](https://npm.io/package/basic-styles.md) *
- [an-expression](https://npm.io/package/an-expression.md) *
- [bridge-module](https://npm.io/package/bridge-module.md) *
- [function-call](https://npm.io/package/function-call.md) *
- [module-library](https://npm.io/package/module-library.md) *
- [make-it-editable](https://npm.io/package/make-it-editable.md) *
- [scroll-to-select](https://npm.io/package/scroll-to-select.md) *

## Recent versions

- 0.37.0 (latest) — 2017-06-07
- 0.36.0 — 2017-05-12
- 0.35.0 — 2017-04-12
- 0.34.0 — 2017-04-12
- 0.33.0 — 2017-04-09
- 0.32.0 — 2017-04-05
- 0.31.0 — 2017-04-05
- 0.30.0 — 2017-04-04
- 0.29.0 — 2017-04-04
- 0.28.0 — 2017-04-03
- 0.27.0 — 2017-04-03
- 0.26.0 — 2017-03-27
- 0.25.0 — 2017-03-26
- 0.24.0 — 2017-03-19
- 0.23.0 — 2017-03-19
- … 12 more at https://npm.io/package/render-expression/versions

## README

**render-expression** takes an AST generated by [an-expression](https://www.npmjs.com/package/an-expression) and renders it as an interactive web application:

```javascript
var anExpression = require("an-expression")
var renderExpression = require("render-expression")
var BrowserBridge = require("browser-bridge")
var app = require("express")()

var tree = anExpression.tree()

javascriptToEzjs(buildAHouse.toString(), tree)

var bridge = new BrowserBridge()
var partial = bridge.partial()

renderExpression(partial, tree.rootId(), tree)

app.get("/", bridge.responseHandler())

// Sample function: 

function buildAHouse(issueBond, showSource, library, renderBond) {
  var foo = "bar"

  issueBond("floor panel")

  issueBond.addTasks([
    "cut studs to length",
    "cut track to length",
    "crimp",
    "add sheathing",
    "flipsulate",
    "add sheathing",
  ])

  issueBond.expense(buildPanel,
    "labor",
    "$100"
  )
  issueBond.expense(buildPanel,
    "steel studs",
    "$20"
  )
  issueBond.expense(buildPanel,
    "plywood",
    "$10"
  )

  return buildPanel
}
```

### Screenshot

![source code screenshot](/screenshot.gif)

### Internal documentation

```javascript
var el = expressionToElement(bridge, expressionId, tree)
```

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