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

html-to-flutter

v0.1.0

Published

Installs the HTML→Flutter skill (HTML prototypes + API/requirement docs → Flutter app) into a project's .claude/skills folder.

Readme

html-to-flutter

A Claude Code (and compatible agent) skill that converts HTML UI/UX prototypes + API docs + requirement specs into a working Flutter project. This npm package is the installer: it drops the skill into a project's .claude/skills/ folder so any Claude-powered agent in that project can use it.

The skill itself is an orchestrator: it parses your HTML + API + requirements into a blueprint, then drives whatever Flutter skills the project provides (e.g. the Very Good Ventures / VGV plugin) for project creation, state management, architecture, navigation, theming, and testing.


Quick start

In the root of your Flutter project (or any folder where you want the skill enabled):

# one-off, no global install needed
npx html-to-flutter init

This creates:

.claude/skills/html-to-flutter/
├── SKILL.md
├── assets/
└── references/

Restart Claude Code so it discovers the new skill, then just describe what you want:

"Convert these HTML prototypes into a Flutter app" — and hand over the folders of HTML mockups, API docs, and requirements.

The skill auto-triggers whenever HTML prototypes and a Flutter target appear together (even without the word "convert").


Requirements

  • Node.js ≥ 14 (only to run the installer; zero runtime dependencies)
  • The installer works on macOS, Linux, and Windows

CLI

Usage:
  npx html-to-flutter              Install into ./.claude/skills/html-to-flutter
  npx html-to-flutter init         Same as above (explicit form)
  npx html-to-flutter init <dir>   Install into <dir>/.claude/skills/html-to-flutter
  npx html-to-flutter init --force Overwrite an existing install
  npx html-to-flutter --version
  npx html-to-flutter --help

Behavior notes:

  • Idempotent & safe — if the skill is already installed, it prints a hint instead of clobbering. Use --force to refresh files in place.
  • No postinstall hooks — nothing happens automatically on npm install; the skill is only copied when you explicitly run init.

Global install (optional)

If you prefer a local command instead of npx:

npm install -g html-to-flutter
html-to-flutter init

What the skill does (once installed)

It runs a phased pipeline over your inputs (see references/ inside the installed skill):

  1. Parse HTML prototypes → component inventory, navigation graph, design tokens.
  2. Map HTML elements/API shapes to Flutter widgets / Dart models (references/html-to-widget-map.md, references/api-to-dart-map.md).
  3. Orchestrate the project's own Flutter skills (VGV: create-project, layered-architecture, navigation, theming, testing…) for the heavy lifting.
  4. Fallback — when no creation skill exists, it uses the bundled assets/project-template/ (Riverpod + feature-first + dio + go_router + flutter_screenutil + flutter_svg + intl) so it can still scaffold a project on its own.

Tip: it's most powerful when paired with the VGV Flutter plugin skills in the same project — the orchestrator defers to them whenever they exist.


Programmatic usage

The skill files are plain markdown + templates. If you want to copy them without the CLI, the files live under the skill/ directory of this package:

# from a project that has this package installed
node -e "console.log(require('path').join(require.resolve('html-to-flutter'), '..', 'skill'))"

Troubleshooting

  • Agent doesn't see the skill → restart Claude Code after running init; skills are loaded at startup.
  • npx ran the wrong version → pin with npx html-to-flutter@latest init.
  • Already installed warning → re-run with --force to refresh.
  • Wrong directory → pass a target explicitly: npx html-to-flutter init path/to/project.

License

MIT © smartyu1993