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

create-rasti

v0.0.1

Published

Create Rasti projects with Vite

Readme

create-rasti

Scaffold Rasti + Vite projects from the command line.

Pick a template (SPA, SSR, or pre-rendered Static), add styling, routing, and icon components — get a ready-to-run project in seconds.

Quick start

npm create rasti        # interactive
npm create rasti my-app # SPA, non-interactive

Create a server-rendered project with routing and Tailwind:

npm create rasti my-app --ssr --router --tailwind

Templates

  • SPA (default): Rasti + Vite for client-rendered applications.
  • SSR (--ssr): Rasti + Vite + Express, rendered on the server and hydrated in the browser.
  • Static (--static): SSR in development, plus npm run build:static to pre-render the URLs declared in static.config.js into dist/static.

For Static projects, string entries derive the output path from the route (/about/ becomes about/index.html). Object entries such as { route, output } allow custom output files, including a top-level 404.html.

Styling

Styling options are mutually exclusive:

Without either flag, the generated project uses plain CSS.

Extras

--router

Adds a small universal router built on path-to-regexp. It is copied into the generated project as src/lib/router.js, then wired through src/router-setup.js, example pages, and an App shell with navigation.

The router is intentionally narrow: route matching, URL creation, browser history, and delegated a[data-router] links. It works with SPA, SSR, and Static templates.

--icons [preset[,preset...]]

Generates one Rasti component per SVG icon under src/icons/:

import Heart from './icons/Heart.js';
// <Heart className="..." width={24} height={24} />

A single preset writes components directly to src/icons/. Multiple presets write each set under src/icons/<preset>/.

| Preset | Source | License | |---|---|---| | heroicons-outline (default) | Heroicons by Tailwind Labs | MIT | | heroicons-solid | Heroicons by Tailwind Labs | MIT | | akar-icons | Akar Icons by Arturo Wibawa | MIT | | feathericon | Feathericon by Megumi Hano | MIT | | pixelarticons | Pixelarticons by Halfmage | MIT |

SVGs are downloaded from GitHub when the project is generated, so this option requires an internet connection.

The CLI writes an AGENTS.md to the generated project root with project-specific context (stack, commands, architecture, conventions). It also tries to fetch Rasti's AGENTS.md as AGENTS-RASTI.md; if that request fails, project generation continues without it.

Flags

| Flag | Description | |------|-------------| | --ssr | Use the SSR template | | --static | Use the Static template | | --tailwind | Add Tailwind CSS | | --cssfun | Add CSSFUN | | --router | Add micro-router | | --icons [preset[,preset]] | Add rasti-icons (default preset: heroicons-outline) | | --help | Show help |

--ssr/--static and --tailwind/--cssfun are mutually exclusive.

Development

git clone https://github.com/8tentaculos/create-rasti.git
cd create-rasti
npm install
npm run test
npx create-rasti

Before bumping any version pinned in generated projects, see docs/VERSIONS.md.

License

MIT