npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

pigeonmark-html

v2.0.1

Published

Codec to transform HTML5 to PigeonMark (JsonML superset) and vice versa

Downloads

70

Readme

PigeonMark HTML

PigeonMark HTML is an opinionated HTML5 codec, for transforming HTML5 markup in to PigeonMark, and transforming PigeonMark in to compact efficient HTML5 markup.

This codec aims to accurately implement the WHATWG HTML5 living spec, to only produce parseable HTML5 markup. It does not aim to validate that your HTML is correct. For example, it will throw if you try to build an <img> tag with child nodes, but it wont if you use attribute or tag names that don't exist in the html5 spec.

PigeonMark HTML aims to be fast and efficient, and to be useful for things like web scraping, database storage (i.e. PigeonOptics), and as a final output stage for server side html rendering.

Decoded HTML is always compatible with JSON encoding for easy storage, and as a superset of JsonML, it is compatible with most JsonML tooling as well, which generally perceives nodes like comments as tags with names like <#comment></#comment>

Installation

npm i --save pigeonmark-html

Usage

const html = require('pigeonmark-html')
const structure = html.decode('<!DOCTYPE html>\n<html><head><title>Hello World</title></head></html>')
const string = html.encode(structure)