* . *
  • About
  • Advertise
  • Privacy & Policy
  • Contact
Tuesday, October 28, 2025
Earth-News
  • Home
  • Business
  • Entertainment
    Free Live Entertainment – Fremont Street Experience

    Enjoy Free Live Entertainment on Fremont Street Tonight!

    What to Know About ‘Good Morning America’s 50th Anniversary Episode – Wyoming News Now

    Celebrate the Milestone: Everything You Need to Know About Good Morning America’s 50th Anniversary Episode

    Dylan Efron suffers brutal nose injury in ‘DWTS’ rehearsals – Yahoo

    Dylan Efron Endures Painful Nose Injury During ‘DWTS’ Rehearsals

    Person shot, injured in parking lot of adult entertainment club in Gresham – KPTV

    Person Shot and Injured in Gresham Adult Entertainment Club Parking Lot

    Meet Belynda From ‘Married at First Sight’ Season 19: Age, Job, Instagram and More – Yahoo

    Meet Belynda from ‘Married at First Sight’ Season 19: Age, Career, Instagram & More Revealed!

    General Hospital’s Rena Sofer Exits as Lois — But the Door Isn’t Closed – Yahoo

    General Hospital’s Rena Sofer Exits as Lois — But the Door Isn’t Closed – Yahoo

  • General
  • Health
  • News

    Cracking the Code: Why China’s Economic Challenges Aren’t Shaking Markets, Unlike America’s” – Bloomberg

    Trump’s Narrow Window to Spread the Truth About Harris

    Trump’s Narrow Window to Spread the Truth About Harris

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Trending Tags

    • Trump Inauguration
    • United Stated
    • White House
    • Market Stories
    • Election Results
  • Science
  • Sports
  • Technology
    CPE Technology Berhad (KLSE:CPETECH) Has Affirmed Its Dividend Of MYR0.015 – Yahoo Finance

    CPE Technology Berhad (KLSE:CPETECH) Has Affirmed Its Dividend Of MYR0.015 – Yahoo Finance

    Researchers Discover New Bacterium That Turns Food Waste Into Energy – Technology Networks

    Scientists Unveil Breakthrough Bacterium That Transforms Food Waste Into Clean Energy

    Jim Cramer on GSI Technology: “That Thing is a Rocket Ship” – Yahoo Finance

    Jim Cramer Labels GSI Technology a “Rocket Ship” Poised for Takeoff

    The Anti-Tech Backlash Is Going to Grow Stronger – Jacobin

    The Anti-Tech Backlash Is Gaining Unstoppable Momentum

    Comments to EU Regarding the Draft Revised Technology Transfer Block Exemption Regulation and Technology Transfer Guidelines – Information Technology and Innovation Foundation

    Have Your Say: Share Your Thoughts on the Draft Revised Technology Transfer Block Exemption Regulation and Guidelines

    Ghost Tapping is exploiting tap-to-pay technology in order to steal your money; what your need to know – ABC7 New York

    Ghost Tapping: How Thieves Are Using Tap-to-Pay Technology to Steal Your Money and What You Need to Know

    Trending Tags

    • Nintendo Switch
    • CES 2017
    • Playstation 4 Pro
    • Mark Zuckerberg
No Result
View All Result
  • Home
  • Business
  • Entertainment
    Free Live Entertainment – Fremont Street Experience

    Enjoy Free Live Entertainment on Fremont Street Tonight!

    What to Know About ‘Good Morning America’s 50th Anniversary Episode – Wyoming News Now

    Celebrate the Milestone: Everything You Need to Know About Good Morning America’s 50th Anniversary Episode

    Dylan Efron suffers brutal nose injury in ‘DWTS’ rehearsals – Yahoo

    Dylan Efron Endures Painful Nose Injury During ‘DWTS’ Rehearsals

    Person shot, injured in parking lot of adult entertainment club in Gresham – KPTV

    Person Shot and Injured in Gresham Adult Entertainment Club Parking Lot

    Meet Belynda From ‘Married at First Sight’ Season 19: Age, Job, Instagram and More – Yahoo

    Meet Belynda from ‘Married at First Sight’ Season 19: Age, Career, Instagram & More Revealed!

    General Hospital’s Rena Sofer Exits as Lois — But the Door Isn’t Closed – Yahoo

    General Hospital’s Rena Sofer Exits as Lois — But the Door Isn’t Closed – Yahoo

  • General
  • Health
  • News

    Cracking the Code: Why China’s Economic Challenges Aren’t Shaking Markets, Unlike America’s” – Bloomberg

    Trump’s Narrow Window to Spread the Truth About Harris

    Trump’s Narrow Window to Spread the Truth About Harris

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Trending Tags

    • Trump Inauguration
    • United Stated
    • White House
    • Market Stories
    • Election Results
  • Science
  • Sports
  • Technology
    CPE Technology Berhad (KLSE:CPETECH) Has Affirmed Its Dividend Of MYR0.015 – Yahoo Finance

    CPE Technology Berhad (KLSE:CPETECH) Has Affirmed Its Dividend Of MYR0.015 – Yahoo Finance

    Researchers Discover New Bacterium That Turns Food Waste Into Energy – Technology Networks

    Scientists Unveil Breakthrough Bacterium That Transforms Food Waste Into Clean Energy

    Jim Cramer on GSI Technology: “That Thing is a Rocket Ship” – Yahoo Finance

    Jim Cramer Labels GSI Technology a “Rocket Ship” Poised for Takeoff

    The Anti-Tech Backlash Is Going to Grow Stronger – Jacobin

    The Anti-Tech Backlash Is Gaining Unstoppable Momentum

    Comments to EU Regarding the Draft Revised Technology Transfer Block Exemption Regulation and Technology Transfer Guidelines – Information Technology and Innovation Foundation

    Have Your Say: Share Your Thoughts on the Draft Revised Technology Transfer Block Exemption Regulation and Guidelines

    Ghost Tapping is exploiting tap-to-pay technology in order to steal your money; what your need to know – ABC7 New York

    Ghost Tapping: How Thieves Are Using Tap-to-Pay Technology to Steal Your Money and What You Need to Know

    Trending Tags

    • Nintendo Switch
    • CES 2017
    • Playstation 4 Pro
    • Mark Zuckerberg
No Result
View All Result
Earth-News
No Result
View All Result
Home Technology

Show HN: A JavaScript UI library for imperative JSX

July 6, 2024
in Technology
Show HN: A JavaScript UI library for imperative JSX
Share on FacebookShare on Twitter

A web framework for imperative JSX – a new way to think about UI engineering.

I initially created this for the Matry editor,
but I saw that it could be generally useful, so I’m releasing it under the MIT license.
Right now it’s brand new, under active development, and pretty under-powered.
Do not use it in production until it reaches v1.0.0.

To see examples of it in action, I’ve created a repo with recipes

I love React, but it has issues:

The diffing behavior can be conceptually difficult to understand
It can be awkward to work with inherently imperative constructs such as setTimeout and autofocus

Context, hooks, and signals are all required to pass state around the UI tree
The structure of your application state ends up being shaped by the UI, when it should be the other way around
React takes total control over anything in its tree, meaning most UI packages must have React-specific integrations to work correctly
Getting React to work with SSR has caused lots of headaches
It creates a barrier between the developer and the DOM, leading to a generation of devs missing out on core platform features
There’s a ceiling to how performant a React application can be, and maximizing performance requires deep understanding of React’s rendering model
Because of React’s one-way data flow, there are no built-in features for reading the state of the UI

If we accept the fact that the web is inherently imperative,
then I believe we can resolve most if not all of the above problems.
We don’t need to throw the baby out with the bathwater though, because JSX is fantastic.

Matry exposes a handful of simple, standalone functions that allow you to use JSX to imperatively create and update the DOM.
This is a significant departure from how JSX is traditionally used,
but the benefit of this approach is that your UI remains declarative,
while your business logic remains imperative.
This means no more hooks, no more context, no more prop drilling.

Below are the functions provided by @matry/dom:

Replace – replaces one or more elements’ children

Append – appends new elements

Remove – removes elements

Swap – swaps two elements

Set Content – sets the text content of one or more elements

Set Attributes – sets attributes of one or more elements

Remove Attributes – removes attributes from one or more elements

Add Event Listeners – adds event listeners to one or more elements

Remove Event Listeners – removes event listeners from one or more elements

Below is a simple counter demo.

My Counter App

// set our initial value
let count=0;

// perform our initial render
replace(

The count is {count}
add 1

);

// replace the text content
function add() {
count++;
setContent(The count is {count});
}

In the above example,
we call replace to render our UI into the main element.
Then we use setContent to update the content of the p element.
Notice when updating the DOM, we only need to pass in just enough JSX to identify which elements we want to modify.
This puts you in complete control of your apps performance.

As with all technology, there are advantages and disadvantages of this approach.
In the interest of being transparent, I’ll list the disadvantages first.

Since JSX is acting as a query, the queries have limited expressive power. For instance, in order to match against a node in the DOM, it must be an exact match, i.e. there can be no “contains” queries as it would introduce too many edge cases.
There will be duplication of html content, at least in terms of code. While this can be reduced by various strategies, it’s kind of unavoidable.
You have to really think about the UI, which is something you may not be used to if you’re used to React. I’d argue this is a good thing, but it won’t be everyone’s cup of tea.
It doesn’t define how you procure your state, whereas React tends to be a bit more opinionated. This can lead to more architectural work needed for developers. I’d again argue this is a net good, but you can decide for yourself whether this is something you want.

You have complete control over the rendering process, and can make Matry applications as performant as you want.
Matry doesn’t “own” the UI you pass to JSX, so you can easily use common libraries (e.g. the Google Maps SDK) without worry. Heck, you can even render to the html, head, and body elements!
The functions offered by Matry – write(), append(), setAttributes() and others – are mirror counterparts to native DOM methods, meaning you can think about the platform. There’s no such thing as “thinking in Matry”, it’s just “thinking in the web.”
Unlike React, Matry is truly a “UI library.” It has no side effects that require you to structure your code or your data in any particular way.

First, install the package.
Vite is recommended, mostly because that’s what I’ve used to test it with :p

npm create vite whatever # choose Vanilla, then JavaScript (for now)
cd whatever
npm install @matry/dom

Next, configure Vite so that you can use Matry’s JSX runtime:

// vite.config.js
import { defineConfig } from “vite”;

export default defineConfig({
esbuild: {
jsx: “transform”,
jsxDev: false,
jsxInject: `import { jsx } from ‘@matry/dom’`,
jsxFactory: “jsx.component”,
},
});

Voila! You’re good to go!

Matry should not be considered stable until 1.0.0,
so do not use it in production until then.
There are lots of features yet to be implemented – stay tuned!

Some things I have planned for the library:

TypeScript support

reverse() for reversing lists of elements

paint() for updating the CSSOM

serialize() for rendering JSX to a string (primarily for SSR)

deserialize() for rendering a string (will be used in respones from SSR updates)

read() for loading data from static html into JS memory

>>> Read full article>>>
Copyright for syndicated content belongs to the linked Source : Hacker News – https://www.npmjs.com/package/@matry/dom

Tags: JavaScriptlibrarytechnology
Previous Post

Hadrius (YC W23) Is Hiring Founding Engineers in NYC

Next Post

Properly testing concurrent data structures

Shohei Ohtani Hits 2 Homers, Ties 119-Year-Old Record In Dodgers’ World Series Game 3 Win – FOX Sports

Shohei Ohtani Hits 2 Homers, Ties 119-Year-Old Record In Dodgers’ World Series Game 3 Win – FOX Sports

October 28, 2025
Trump’s ‘golden age’ economic message undercut by his desire for much lower interest rates – which typically signal a weak jobs market – The Conversation

Trump’s ‘Golden Age’ Economy Questioned as Calls for Lower Interest Rates Reveal Job Market Weakness

October 28, 2025
Free Live Entertainment – Fremont Street Experience

Enjoy Free Live Entertainment on Fremont Street Tonight!

October 28, 2025

SGMC Health Launches Lung Nodule Clinic to Advance Early Detection and Treatment of Lung Cancer – SGMC Health

October 28, 2025
Former presidential photographer Pete Souza on his favorite memories of the East Wing after its demolition – CNN

Former presidential photographer Pete Souza on his favorite memories of the East Wing after its demolition – CNN

October 28, 2025

Once tadpoles lose lungs, they never get them back – Cornell Chronicle

October 28, 2025
Texas A&M Department of Poultry Science hires Williams – WATTPoultry.com

Texas A&M’s Poultry Science Department Welcomes Expert Williams to the Team

October 28, 2025

Raffaele Colombo Highlights the Thriving Community and Cutting-Edge Science at the Incredible AACR-NCI-EORTC Meeting

October 28, 2025
The Donut Chain Known For Making Some Of The Most Unique Flavors In The Game – Yahoo

Discover the Donut Chain Revolutionizing Flavor with Its Uniquely Delicious Creations

October 28, 2025
CPE Technology Berhad (KLSE:CPETECH) Has Affirmed Its Dividend Of MYR0.015 – Yahoo Finance

CPE Technology Berhad (KLSE:CPETECH) Has Affirmed Its Dividend Of MYR0.015 – Yahoo Finance

October 28, 2025

Categories

Archives

October 2025
M T W T F S S
 12345
6789101112
13141516171819
20212223242526
2728293031  
« Sep    
Earth-News.info

The Earth News is an independent English-language daily published Website from all around the World News

Browse by Category

  • Business (20,132)
  • Ecology (889)
  • Economy (912)
  • Entertainment (21,783)
  • General (17,850)
  • Health (9,953)
  • Lifestyle (924)
  • News (22,149)
  • People (912)
  • Politics (922)
  • Science (16,122)
  • Sports (21,411)
  • Technology (15,891)
  • World (895)

Recent News

Shohei Ohtani Hits 2 Homers, Ties 119-Year-Old Record In Dodgers’ World Series Game 3 Win – FOX Sports

Shohei Ohtani Hits 2 Homers, Ties 119-Year-Old Record In Dodgers’ World Series Game 3 Win – FOX Sports

October 28, 2025
Trump’s ‘golden age’ economic message undercut by his desire for much lower interest rates – which typically signal a weak jobs market – The Conversation

Trump’s ‘Golden Age’ Economy Questioned as Calls for Lower Interest Rates Reveal Job Market Weakness

October 28, 2025
  • About
  • Advertise
  • Privacy & Policy
  • Contact

© 2023 earth-news.info

No Result
View All Result

© 2023 earth-news.info

No Result
View All Result

© 2023 earth-news.info

Go to mobile version