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

hax-ai-canvas

v1.0.12

Published

AI-powered Canvas course to HAX site builder — local web app for instructors

Readme

hax-ai-canvas

AI-powered Canvas LMS course to HAX site builder — a local web app for instructors.

What it does

Pulls a course from Canvas, runs it through an AI evaluation and enhancement pipeline, and produces a deployable HAX site with:

  • AI Dashboard — visual overview with summary cards, risk vs leverage chart, due dates, and filterable item table
  • AI Readiness Report — detailed per-item scores, strengths, concerns, and prioritized recommendations
  • AI Changes Report — side-by-side diff of every item: original vs. AI-enhanced
  • HAX Site — the final AI-enhanced course, served locally

Prerequisites

| Requirement | How to get it | |---|---| | Node.js 22+ | nodejs.org | | Python 3.10+ | python.org/downloads | | HAX CLI | npm install -g @haxtheweb/create | | Canvas API token | Canvas → Account → Settings → New Access Token | | AI API key | NebulaONE, Anthropic, OpenAI, or Gemini |

Run

npx hax-ai-canvas

That's it. On first run, this will:

  1. Copy the app to ~/.canvas-course-builder/
  2. Create a Python virtual environment
  3. Install Python dependencies (~1 minute)
  4. Open your browser at http://127.0.0.1:5050

Subsequent runs start in seconds (setup is cached).

First-time setup (in the browser)

  1. Requirements tab — confirms Python, Node, and packages are ready (with beginner-friendly install guides)
  2. Configuration tab — enter your Canvas URL, Canvas API token, and AI provider key (with Test Connection buttons)
  3. Run tab — enter a Course ID, choose your AI provider, and click Run Pipeline
  4. Done — buttons appear to open the HAX site, dashboard, readiness report, and changes report
  5. History tab — revisit reports for any previously processed course

Where your data is stored

All user data lives in ~/.canvas-course-builder/:

| Path | Contents | |---|---| | .env | Your credentials (Canvas token, API keys) | | exports/ | Raw Canvas export JSON | | course_pipeline.db | SQLite pipeline database | | hax_prep/ | Intermediate markdown/HTML files |

HAX sites are created at ~/.hax-ai/sites/<course-code>/.

Updating

npx hax-ai-canvas@latest

Your .env and course data are preserved on updates.

Supported AI providers

| Provider | Env var needed | |---|---| | NebulaONE (default) | NEBULA_API_KEY, NEBULA_BASE_URL | | Anthropic | ANTHROPIC_API_KEY | | OpenAI | OPENAI_API_KEY | | Gemini | GEMINI_API_KEY |

Stop the app

Press Ctrl+C in the terminal.