A light-weight DOM Renderer supports Web components standard & TypeScript language.
import { DOMRenderer, VNode } from 'dom-renderer'; const newVNode = new DOMRenderer().patch( new VNode({ tagName: 'body', node: document.body }), new VNode({ tagName: 'body', children: [ new VNode({ tagName: 'a', props: { href: 'https://idea2.app/' }, style: { color: 'red' }, children: [new VNode({ text: 'idea2app' })] }) ] }) ); console.log(newVNode);Async Rendering (experimental)
import { DOMRenderer, VNode } from 'dom-renderer'; -const newVNode = new DOMRenderer().patch( +const newVNode = new DOMRenderer().patchAsync( new VNode({ tagName: 'body', node: document.body }), new VNode({ tagName: 'body', children: [ new VNode({ tagName: 'a', props: { href: 'https://idea2.app/' }, style: { color: 'red' }, children: [new VNode({ text: 'idea2app' })] }) ] }) ); -console.log(newVNode); +newVNode.then(console.log);
{ "compilerOptions": { "jsx": "react-jsx", "jsxImportSource": "dom-renderer" } }
import { DOMRenderer } from 'dom-renderer'; const newVNode = new DOMRenderer().render( <a href="https://idea2.app/" style={{ color: 'red' }}> idea2app </a> ); console.log(newVNode);Async Rendering (experimental)
import { DOMRenderer } from 'dom-renderer'; const newVNode = new DOMRenderer().render( <a href="https://idea2.app/" style={{ color: 'red' }}> idea2app - </a> + </a>, + document.body, + 'async' ); -console.log(newVNode); +newVNode.then(console.log);
import { DOMRenderer } from 'dom-renderer'; const renderer = new DOMRenderer(); const Hello = () => <h1>Hello, JSX SSR!</h1>; export const generateStream = () => renderer.renderToReadableStream(<Hello />);
import { Readable } from 'stream'; import { createServer } from 'http'; import 'dom-renderer/polyfill'; import { generateStream } from './view'; createServer((request, response) => { const stream = generateStream(); Readable.fromWeb(stream).pipe(response); }).listen(8080);
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4