Hacker Newsnew | past | comments | ask | show | jobs | submit | fabiancook's commentslogin

Do you want just JSX in browsers?

Or do you want a "native virtual DOM".... that is the DOM we have today.

There is various new tools coming available that make working with a browser so much easier.

In the past for example there was no way to do a SPA transition between pages, this was one of the big things handled by the likes of react alongside of the vdoms, but by tooling like react-router for the likes of react. This made it pretty much that you needed to use the likes of react to make state based changes to the DOM.

Now... we have the navigation API where you can have an async change happen on navigate and prevent

Very soon you'll be able to do this:

    navigation.addEventListener("navigate", event => {
      event.intercept({
        async handler() {
          const state = event.destination.getState();
          document.body.setHTML(`
      <div>
        <p>Paragraph to inject into shadow DOM.
          <button onclick="alert('You clicked the button with value ${state.key}!')">Click me</button>
        </p>
        <script src="path/to/a/module.js" type="module"><\/script>
        <p data-id="${state.key}">Para with <code>data-id</code> attribute with value <code>${state.key}</code></p>
      </div>
          `)
        }
      })
    });

(where `setHTML` is the pending API here, the navigation API available in chrome, and polyfill available for firefox/safari)

Yes this use of just setting a string is not giving all the nice things like diffing and all... but, we have then a state API tied to the browser navigation, along with a way to know the navigation was successful:

    await navigation.navigate("/somewhere", { state: { key: "value } }).finished;
Flipping things around a bit gives the power back to the browser like it seems you're after, rather than reaching for every tool available... but, a standard JSX feels a while away... maybe expressing JSX just for pure DOM elements would be enough though, without any functional components, but I guess that is what makes JSX, JSX.

Awesome to see the Navigation API being talked about at DevFest.

The API is available in chrome today. Safari & Firefox are actively developing their implementations too.

MDN Documentation: https://developer.mozilla.org/en-US/docs/Web/API/Navigation_...

JavaScript implementation usable as polyfill: https://github.com/virtualstate/navigation (I am the author of this repository)


I paid for the service. When it works for a specific bit of boilerplate code or section of obvious code, its handy.

It definitely doesn't know the whole context of my project, or that it should use xyz imports to achieve a specific task from the same project.

It will get better with time I am sure.

I read through the privacy policy and other policies ahead of time too, nothing concerning for what I am doing. Is backed by OpenAI.

* https://www.jetbrains.com/help/ai/data-collection-and-use-po...

* https://www.jetbrains.com/legal/docs/terms/jetbrains-ai/serv...


The UK also sells CBD vapes, I wonder how this will change that.

I would imagine their wording of whatever they put in place will be broad enough to cover just anything disposable that produces vapour


Had just read this other article earlier today... lots of sound therapy for cancer coming about! https://www.science.org/doi/10.1126/sciadv.adg5964


To tackle this, I always needed to write a little script for my TypeScript projects that were all being published as ESM:

https://github.com/virtualstate/promise/blob/main/scripts/co...

https://github.com/virtualstate/focus/blob/main/scripts/corr...

https://github.com/virtualstate/navigation/blob/main/scripts...

This same script was replicated to near every repository I have worked on, including making its way into a few different production services where Node.js + ESM was used for deployment

Eventually I had turned into a utility module that could be used wider, which starts to lean into import map generation

https://github.com/virtualstate/impack#usage

You can see it being used here as a function, but can be used as a cli tool too:

https://github.com/virtualstate/listen/blob/033bf8effcbde5c8...


Publications like pubmed are generally a good source to read from, check the citations on the article & check its review status.

If you have an article that you found with a helpful summary but it doesn't have the full source, take the "doi" link to sci-hub to get the full source.

Try to stay away from any article on any site that doesn't have a research article referenced that has a doi number.

Do checkout discussion around the endocannabinoid system in relation to recovery & chemotherapy support.

When you get the details on the specific chemotherapy being done, you'll have a specific couple of chemicals to be able to search through... for example Gemcitabine and Carboplatin. Different kinds of cancers have a different sets of chemotherapy chemicals related.

I'll mention that I have a close family member with terminal lung cancer. Following the above we've been successfully treating his symptoms and have also reduced the size of the primary tumour along the way (It was non operable & no radiation could be done)


Hey OP, in case you have a hardtime trying to download these articles from Pubmed, feel free to reach me nothingcomeseasy [at] protonmail [dot] com and I see if I can help. Wishing all the best to your mom!


https://github.com/tc39/proposal-function-memo

This might be relevant to this exact pattern

  const getThing = (async function (arg1, arg2) {
    console.log({ arg1, arg2 });
    return arg1 + (arg2 || 0);
  }).memo();

  console.log(await getThing(1)); // New promise
  console.log(await getThing(2)); // New promise
  console.log(await getThing(1)); // Returns promise from earlier




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: