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

dotllm

v1.0.2

Published

Universal /init for AI coding assistants. Generates config files in the exact locations each tool expects (CLAUDE.md, GEMINI.md, AGENTS.md, .cursor/rules/, etc).

Readme

dotllm

Universal /init for AI coding assistants.

npm version License: MIT

dotllm analyzes your project and generates context files in the exact locations each AI tool expects. It detects your stack (Next.js, Tailwind, Prisma, etc.) and creates strict coding rules that stop hallucinations.

🌐 Supported AI Tools

| Tool | Config File | Convention | |------|-------------|------------| | Cursor | .cursor/rules/rules.mdc | New structured rules directory | | Claude Code | CLAUDE.md | At project root | | Antigravity (Gemini) | GEMINI.md | At project root | | Codex (OpenAI) | AGENTS.md | Open standard, cascading per directory | | GitHub Copilot | .github/copilot-instructions.md | In .github directory | | Windsurf | .windsurfrules | At project root |


⚡️ Quick Start

# Universal init - generates ALL config files for all supported AI tools
npx dotllm

# Or generate for a specific tool
npx dotllm --ide cursor
npx dotllm --ide claude-code
npx dotllm --ide antigravity
npx dotllm --ide codex
npx dotllm --ide vscode-copilot
npx dotllm --ide windsurf

# Generate for multiple tools
npx dotllm --ide cursor,claude-code,codex

⚠️ The Problem

Every AI coding tool has its own convention for configuration files:

  • Cursor wants .cursor/rules/
  • Claude Code wants CLAUDE.md
  • Antigravity wants GEMINI.md
  • Codex uses the AGENTS.md standard
  • And so on...

Without proper config, AI assistants:

  • ❌ Suggest pages/ router when you use app/ router
  • ❌ Use yarn when you use pnpm
  • ❌ Write patterns that don't match your codebase
  • ❌ Hallucinate libraries you don't have installed

✅ The Solution

dotllm is the universal /init command that:

  1. Scans your codebase - Detects 50+ technologies
  2. Generates rules - Creates strict, stack-aware coding guidelines
  3. Puts files in the right place - Each file goes exactly where the tool looks for it

No more guessing. No more manual setup. Just run npx dotllm and all your AI tools are configured.


📦 What It Detects

| Category | Supported Tech | |----------|----------------| | Languages | TypeScript, JavaScript, Python, Go, Rust, Java, Kotlin, Ruby, PHP, C#, Swift, Dart | | Frameworks | React, Vue, Angular, Svelte, Next.js, Nuxt, SvelteKit, Remix, Astro, Express, FastAPI, Django, NestJS, Flask | | Tooling | Vite, Webpack, Turbo, Nx, Docker, Kubernetes, Terraform | | Testing | Jest, Vitest, Playwright, Cypress, Pytest | | Databases | PostgreSQL, MySQL, MongoDB, Redis, Prisma, Drizzle, Supabase | | Linting | ESLint, Prettier, Biome, Ruff |

🛠️ Advanced Usage

Preview Detection

See what dotllm finds without writing any files:

npx dotllm --dry-run

Force Update

Regenerate files and overwrite existing ones:

npx dotllm --force

Verbose Mode

See detailed detection info:

npx dotllm --verbose

Programmatic API

Use dotllm in your own scripts:

import { analyzeCodebase, generateAllIDEOutputs } from 'dotllm';

const analysis = await analyzeCodebase('./my-project');
const outputs = generateAllIDEOutputs(analysis, ['cursor', 'claude-code', 'codex']);

for (const output of outputs) {
  console.log(`${output.filePath}: ${output.content}`);
}

🧠 Philosophy

1. Put Files Where Tools Look Each AI tool has specific conventions. We follow them exactly. No arbitrary file names, no custom locations.

2. LLM-First Design Files are optimized for AI consumption with clear, prescriptive language to reduce hallucinations.

3. Universal Init One command, all tools. Whether you use Cursor, Claude Code, Antigravity, or Codex - you're covered.

4. Zero Cloud Dependencies Everything runs locally. No API calls, no data collection, no telemetry.

Contributing

We love contributions! Please see CONTRIBUTING.md to get started.

License

MIT © DotLLM