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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@joker.front/ast

v1.3.31

Published

### Overview

Readme

Joker AST npmNPM Downloads

Overview

The AST (Abstract Syntax Tree) is the structured data for templates in Joker. It is ultimately combined with component instances to render virtual nodes, which are then rendered onto the corresponding platform.

There are two sources for AST:

  • Single File Components (SFCs): Written within the <template> tag of an SFC. Follow the syntax rules outlined in the Template Guide. These templates are converted into AST.Node[] via the CLI.
  • JavaScript API: Using methods like createText and createCommand provided by the Joker Core to programmatically generate AST.Node[] in JavaScript. Assign the result to the template property of a component. Refer to the Component Properties documentation for details on the template property.

Both methods produce AST.Node[]. The AST.Node is the base class for all AST nodes and is categorized into four types based on functionality: Text, Element, Comment, and Component. The base AST.Node class has the following properties:

| Property | Description | Type | | --------- | ----------- | ---------- | | childrens | Child nodes | AST.Node[] | | type | Node type | NodeType |

Determine the specific type of an AST.Node by checking its type property against the NodeType enum:

// This enum is available as AST.NodeType
export enum NodeType {
    TEXT, // Text
    COMMENT, // Comment
    ELEMENT, // HTML Element
    COMMAND, // Directive
    COMPONENT // Dynamic Component
}

// Example usage:
item.type === AST.NodeType.COMMENT;

Documentation

Official Website

Help Documentation