Hello World example
Here is a basic hello world example. You can copy the content and run locally.
hello-world.html :
<!doctype html> <html> <body> <div id="app-container"></div> <script src="hello-world.js" type="module"></script> </body> </html>
hello-world.js :
import Component from './node_modules/@xylem-js/xylem-js/dom/Component.js';
import mountComponent from './node_modules/@xylem-js/xylem-js/dom/mountComponent.js';
import parseHTML from './node_modules/@xylem-js/xylem-js/dom/parseHTML.js';
class HelloWorld extends Component
{
build()
{
return parseHTML([
'<div>',
[
'Hello, World!',
],
'</div>',
]);
}
}
mountComponent(new HelloWorld(), document.getElementById('app-container'));
Live Example
Using JSX
Here is the JSX version of hello world example. (Read the "JSX" page for JSX configuration)
hello-world-jsx.html :
<!doctype html>
<html>
<body>
<div id="app-container"></div>
<script type="importmap">
{
"imports": {
"@xylem-js/jsx/jsx-runtime": "./node_modules/@xylem-js/jsx/jsx-runtime.js"
}
}
</script>
<script src="hello-world-jsx.js" type="module"></script>
</body>
</html>
hello-world-jsx.tsx :
import Component from './node_modules/@xylem-js/xylem-js/dom/Component.js';
import mountComponent from './node_modules/@xylem-js/xylem-js/dom/mountComponent.js';
class HelloWorld extends Component
{
build()
{
return <>
<div>
Hello, World!
</div>
</>;
}
}
mountComponent(new HelloWorld(), document.getElementById('app-container')!);