Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sethvincent/awesome-virtual-dom
Modules & resources related to the virtual-dom module.
https://github.com/sethvincent/awesome-virtual-dom
List: awesome-virtual-dom
virtual-dom
Last synced: about 1 month ago
JSON representation
Modules & resources related to the virtual-dom module.
- Host: GitHub
- URL: https://github.com/sethvincent/awesome-virtual-dom
- Owner: sethvincent
- License: cc0-1.0
- Created: 2016-02-14T20:56:55.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-02-01T18:45:42.000Z (over 7 years ago)
- Last Synced: 2024-06-11T17:13:32.918Z (3 months ago)
- Topics: virtual-dom
- Size: 9.77 KB
- Stars: 50
- Watchers: 4
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- ultimate-awesome - awesome-virtual-dom - Modules & resources related to the virtual-dom module. (Other Lists / PowerShell Lists)
README
# awesome-virtual-dom
Modules & resources related to the virtual-dom module.[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
## Modules
- [virtual-dom](https://www.npmjs.com/package/virtual-dom) – A JavaScript DOM model supporting element creation, diff computation and patch operations for efficient re-rendering
### Loops
- [virtual-raf](https://www.npmjs.com/package/virtual-raf) – Create a requestAnimationFrame loop for virtual-dom
- [main-loop](https://www.npmjs.com/package/main-loop) – A rendering loop for diffable UIs### Hooks
- [virtual-hook](https://github.com/yoshuawuyts/virtual-hook) – virtual-dom hook constructor. Allows access to the constructed DOM Node, property names and values
- [virtual-hyperscript-hook](https://www.npmjs.com/package/virtual-hyperscript-hook) – Instead of adding hook/unhook lifecycle events on a per-property basis with a hook instance, this package lets you define simple `hook` and `unhook` properties as ordinary functions
- [virtual-hyperscript-mount](https://github.com/substack/virtual-hyperscript-mount) – Register mount/unmount lifecycle hooks for virtual-dom### Widgets
- [virtual-widget](https://github.com/yoshuawuyts/virtual-widget) – Create a virtual-dom widget
### Building virtual-hyperscript
- [hyperx](https://github.com/substack/hyperx) – tagged template string virtual dom builder
### Converting to and from virtual-dom
- [vdom-parser](https://www.npmjs.com/package/vdom-parser)
- [vdom-to-html](https://www.npmjs.com/package/vdom-to-html)
- [to-virtual-dom](https://www.npmjs.com/package/to-virtual-dom)### Components
- [sheet-router](https://github.com/yoshuawuyts/sheet-router)
- [virtual-loading-dots](https://github.com/chinedufn/virtual-loading-dots)
- [virtual-markdown](https://github.com/yoshuawuyts/virtual-markdown)
- [virtual-progress-bar](https://github.com/chinedufn/virtual-progress-bar)
- [virtual-sidebar](https://github.com/yoshuawuyts/virtual-sidebar)
- [virtual-streamgraph](https://github.com/yoshuawuyts/virtual-streamgraph)
- [zip-input](https://github.com/bendrucker/zip-input)
- [virtual-webtorrent](https://github.com/yoshuawuyts/virtual-webtorrent) -
Webtorrent video element for virtual-dom### Frameworks / libraries that depend on virtual-dom
- [cycle.js](https://github.com/cyclejs)
- [virtual-app](http://github.com/sethvincent/virtual-app)
- [mercury](https://github.com/Raynos/mercury)## Build tools
- [hyperxify](https://github.com/substack/hyperxify) – browserify transform for hyperx
- [jsx-virtual-hyperscript-loader](https://www.npmjs.com/package/jsx-virtual-hyperscript-loader) – Webpack loader transpiling jsx into virtual-hyperscript javascript, using jsx-transform## Resources
### Articles
- [What is Virtual DOM?](http://jbi.sh/what-is-virtual-dom/)
- [We Don't Need No Stinkin' Frameworks: Writing Web Apps with Bacon.js and virtual-dom](http://blog.javascripting.com/2015/03/11/we-dont-need-no-stinkin-frameworks/)### Talks
- [Pocket-sized JS](https://www.youtube.com/watch?v=okk0BGV9oY0)
## Alternate Virtual DOM implementations
`virtual-dom` isn't the only module for diffing, patching, and creating elements. Here are some other projects that implement the Virtual DOM approach:
- [basic-virtual-dom](https://www.npmjs.com/package/basic-virtual-dom)
- [React](https://github.com/facebook/react)
- [Preact](https://github.com/developit/preact)
- [Deku](https://github.com/dekujs/deku)
- [Snabbdom](https://github.com/paldepind/snabbdom)## License
[CC0 v1](LICENSE)