A JSX wrapper for ZikoJS
npm install ziko-jsxjsx
import {ExternalComponent} from './ExternalComponent.js'
export default function Hello({ text, value } = {}) {
return (
hello {text}
)
}
`
$3
`js
import { tags } from "ziko/ui";
import {ExternalComponent} from './ExternalComponent.js'
export default function Hello({ text, value } = {}) {
const { div, span, custom_element } = tags;
return div(
{ class: "parent" },
span("hello ", text),
custom_element(),
ExternalComponent()
);
}
`
$3
- JSX is syntax sugar only, it compiles directly to function calls.
- Lowercase JSX tags are mapped to ZikoJS tag functions via tags
- Custom elements (custom-element) are normalized to valid identifiers (custom_element).
- Capitalized JSX tags are treated as components and invoked directly.
- JSX whitespace semantics are preserved:
- Inline text spacing is kept (hello {text} → "hello ", text)
- Layout/indentation whitespace is ignored
Install
`bash
npm i ziko-jsx
``