Research
Security News
Threat Actor Exposes Playbook for Exploiting npm to Build Blockchain-Powered Botnets
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
hyperhtml
Advanced tools
A Fast & Light Virtual DOM Alternative available for Node.js and NativeScript too.
If you like React hooks concept, don't miss this little wrap tha adds 0.something overhead to the already lightweight hyperHTML, bringing in very similar concepts.
If you also like React hooks mechanism and you'd like to combine these via hyperHTML or HyperHTMLElement, try haunted out!
You can require or import hyperHTML with any bundler and in different ways.
If requiring or importing from "hyperhtml"
doesn't work, try requiring from "hyperhtml/cjs"
for CommonJS friendly bundlers (WebPack), or "hyperhtml/esm"
for ESM compatible bundlers (Rollup).
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
Thank you to all our backers! 🙏 [Become a backer]
This project exists thanks to all the people who contribute. [Contribute].
No matter if you use ESM or CommonJS, you can use hypermorphic to load same features on both client and server.
// ESM example (assuming bundlers/ESM loaders in place)
import {bind, wire} from 'hypermorphic';
// CommonJS example
const {bind, wire} = require('hypermorphic');
<self-closing />
tags for both custom elements and any other as well 🎉Following most important changes in version 2:
hyperHTML
variable.escape
and .adopt
, either useless or unstable. hyperHTML.adopt
will be implemented as module a partstyle
attribute, fully compatible with Preact implementationdocument.importNode
and/or regular cloneNode
tested against common polyfillsA proper documentation full of examples can be found in viperhtml.js.org.
The easiest way to describe hyperHTML
is through an example.
// this is hyperHTML
function tick(render) {
render`
<div>
<h1>Hello, world!</h1>
<h2>It is ${new Date().toLocaleTimeString()}.</h2>
</div>
`;
}
setInterval(tick, 1000,
hyperHTML(document.getElementById('root'))
);
IE9+ , iOS8+ , Android 4+ and every modern Mobile or Desktop Browser. You can verify directly through the following links:
If you are using Visual Studio Code you can install literally-html
to highlight all literals handled by hyperHTML
and others.
If you'd like to make your templates prettier than usual, don't miss this plugin: https://github.com/sgtpep/prettier-plugin-html-template-literals
Please ask anything you'd like to know in StackOverflow using the tag hyperhtml
so that others can benefit from answers and examples.
You can read more on this hyperHTML vs lit-html comparison.
npm install hyperhtml
If your bundler does not work with the following:
// ES6
import hyperHTML from 'hyperhtml';
// CJS
const hyperHTML = require('hyperhtml');
You can try any of these other options.
import hyperHTML from 'hyperhtml/esm';
// or
import {hyper, wire, bind, Component} from 'hyperhtml/esm';
// or
import hyperHTML from 'https://unpkg.com/hyperhtml?module';
const hyperHTML = require('hyperhtml/cjs').default;
// or
const {hyper, wire, bind, Component} = require('hyperhtml/cjs');
In alternative, there is a pre-bundled require("hyperhtml/umd")
or via unpkg as UMD module.
FAQs
A Fast & Light Virtual DOM Alternative
The npm package hyperhtml receives a total of 2,774 weekly downloads. As such, hyperhtml popularity was classified as popular.
We found that hyperhtml demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
Security News
NVD’s backlog surpasses 20,000 CVEs as analysis slows and NIST announces new system updates to address ongoing delays.
Security News
Research
A malicious npm package disguised as a WhatsApp client is exploiting authentication flows with a remote kill switch to exfiltrate data and destroy files.