/decca

Render interfaces using pure functions and virtual DOM

Primary LanguageJavaScript

decca

Render UI via pure functions and virtual DOM

Decca allows you to compose DOM structures with reuseable Components in a functional way. It is a drop-in replacement for Deku, which takes much inspiration from React and other functional-style view libraries.

Status

Documentation →
Playground →

Installation

Decca is available via npm for Browserify and Webpack. (Don't use npm? Get the standalone build from brcdn.org.)

npm install --save --save-exact decca

Components

Components are mere functions or objects (not classes!) that at least implement a render() function. See components documentation for more information.

/* @jsx element */
import { dom, element } from 'decca'

function Message ({ props }) {
  return <div>Hello there, {props.name}</div>
}

// Render the app tree
const render = dom.createRenderer(document.body)
render(<Message name='Rico S.' />)

Try out Decca in codepen.io.

Usage

See the API reference and Deku's documentation. Also see a comparison with Deku.

Acknowledgements

Decca takes blatant inspiration from Deku by the amazing Anthony Short and friends.

Thanks

decca © 2015+, Rico Sta. Cruz. Released under the MIT License.
Authored and maintained by Rico Sta. Cruz with help from contributors (list).

ricostacruz.com  ·  GitHub @rstacruz  ·  Twitter @rstacruz