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

dino-desktop

v1.0.0

Published

Desktop UI for Dino AI verification agent — trigger Playwright test automation prompts with one click

Readme

Dino Desktop

Desktop UI for Dino — trigger AI-powered Playwright verification prompts with one click.

Screenshot

┌─────────────────────────────────────────────────────────────┐
│  🦕  Dino Desktop                                           │
│      AI-Powered Playwright Verification Agent       🟢 ⚙️    │
├─────────────────────────────────────────────────────────────┤
│  Server: [http://localhost:4003                        ] [↻]│
├──────────────┬──────────────────────────────────────────────┤
│  PROMPTS     │  /generate-pom-from-url-cli                  │
│              │  ─────────────────────────────────────       │
│  /setup-     │                                              │
│  playwright  │  URL:  [https://example.com     ] [required] │
│              │  Dir:  [tests/pom               ] [optional] │
│              │                                              │
│  /generate-  │  [▶ Run]  [■ Stop]  [✕ Clear]              │
│  pom-from-*  │  ─────────────────────────────────────       │
│              │  ▶ Starting /generate-pom-from-url-cli...    │
│  /generate-  │  🔧 bash ... ✓ done                         │
│  bdd-from-*  │  🔧 read ... ✓ done                         │
│              │  Generated POM for LoginPage...              │
│  /generate-  │  ✅ Session complete.                        │
│  spec-from-* │                                              │
│              │  TOOL CALLS                                  │
│  /heal-      │  ▶ bash    ✓ read    ✓ write                │
│  playwright  │                                              │
├──────────────┴──────────────────────────────────────────────┤
│  @assertrx/dino  |  Ready                                  │
└─────────────────────────────────────────────────────────────┘

Prerequisites

  1. Node.js ≥ 18
  2. Dino API server running — follow the Dino README to start it.

Quick Start

# 1. Clone or download this project
cd dino-desktop

# 2. Install dependencies
npm install

# 3. Start the app
npm start

Make sure the Dino API server is running on http://localhost:4003 (or enter your server URL in the app).

Usage

  1. Enter the API server URL in the top bar (defaults to http://localhost:4003)
  2. Click a prompt on the left sidebar to select it
  3. Fill in required parameters (URL, output directory, etc.)
  4. Click ▶ Run — the agent response streams in real-time
  5. Watch tool calls in the bottom panel as the pi agent runs bash, read, write, etc.

Prompts Available

| Prompt | Description | |--------|-------------| | /setup-playwright | Set up a vanilla Playwright project | | /generate-pom-from-url | Generate POMs via Playwright MCP bridge | | /generate-pom-from-url-cli | Generate POMs via playwright-cli (preferred) | | /generate-bdd-from-url | Generate Gherkin BDD scenarios | | /generate-spec-from-feature | Generate Playwright spec from Gherkin | | /heal-playwright-failures | Auto-heal failed Playwright tests |

Package for Distribution

npm run package:win    # Windows .exe
npm run package:mac    # macOS .dmg
npm run package:linux  # Linux AppImage

Output goes to dist/.

Configuration

Settings are stored in localStorage:

  • dinoServerUrl — API server address (default: http://localhost:4003)

Open the ⚙️ Settings panel from the header to configure:

  • Project Workspace — saved as the cwd sent to the Dino API, so prompts run in the right directory.
  • API Key & Model — pick any provider (Anthropic, OpenAI, Google, DeepSeek, Groq, …), enter its API key, click ↻ Load Models to list the models that key unlocks, then select a model from the dropdown. Clicking Save persists the provider, key, and model.

All values are persisted with electron-store and are automatically included in every prompt execution request — each run sends cwd, provider, apiKey, and model, so the Dino API uses exactly the credentials and model you selected. Keys are optional if the provider is already configured on the server (via env vars or pi /login).

Note: keys are stored locally in the Electron settings file and forwarded per request; they are never written to the Dino server's disk.

Tech Stack

  • Electron — desktop shell
  • Vanilla JS — no framework, minimal overhead
  • SSE — real-time streaming from Dino API server

Licensing (LicenseSeat)

Dino Desktop is licensed via LicenseSeat. On first launch users see an activation dialog where they enter their XXXX-XXXX-XXXX-XXXX license key; the app unlocks once activated. Licenses are validated online hourly, send heartbeats, and keep working offline for up to 14 days (offlineFallbackEnabled in src/renderer/license.js).

Setup:

  1. Sign up at licenseseat.com and create a product.

  2. Put your publishable API key (pk_live_...) and product slug in src/renderer/license.js (LICENSE_CONFIG).

  3. If you ever update the SDK, rebuild the vendored bundle:

    npm run bundle:license

Users can check license status and deactivate their device under Settings → License.