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

dyiable

v0.1.0

Published

AI-powered React and Supabase app builder powered by Claude Code

Readme

🛠️ DYIable

AI-powered React and Supabase app builder powered by Claude Code

DYIable is a framework inspired by Lovable.dev that helps you rapidly build React and Supabase applications with AI assistance. It provides opinionated scaffolding, local development with Supabase, and seamless integration with Claude Desktop via MCP (Model Context Protocol).

✨ Features

  • 🚀 Quick Setup: Go from zero to running app in < 5 minutes
  • 🤖 AI-Powered Development: Integrate with Claude Desktop for AI-assisted coding
  • 🏗️ Opinionated Stack: React + Vite + Supabase pre-configured
  • 🔌 MCP Integration: Claude Desktop can directly scaffold components, migrations, and features
  • 📦 Feature Templates: Pre-built auth, payments, uploads, and more
  • 🎨 Component Library Support: Shadcn UI, Chakra UI, Material UI, or Tailwind
  • 🚢 Easy Deployment: One-command deployment to Vercel, Netlify, or Cloudflare
  • 🔒 Local Development: Full local Supabase instance with Docker

🎯 Why DYIable?

DYIable vs Just Using Claude Code:

  • ✅ Pre-configured React + Vite + Supabase (30 min → 2 min)
  • ✅ Supabase-specific tools (migrations, types, RLS patterns)
  • ✅ Feature templates that handle integration complexity
  • ✅ Deployment automation
  • ✅ Best practices baked in

DYIable vs Lovable:

  • ✅ Local-first development (full control, works offline)
  • ✅ Use your own editor and tools
  • ✅ No vendor lock-in
  • ✅ Open source and extensible

📋 Prerequisites

  • Node.js >= 18.0.0
  • Docker Desktop (for local Supabase)
  • Supabase CLI (recommended): brew install supabase/tap/supabase
  • Claude Desktop (for AI assistance)

🚀 Quick Start

1. Install DYIable

```bash npm install -g dyiable ```

2. Create a New Project

```bash dyiable init my-app ```

Follow the interactive prompts to configure your project:

  • Project name and description
  • Features (auth, payments, uploads, etc.)
  • Component library (Shadcn UI, Chakra, MUI, or Tailwind)
  • TypeScript support

3. Start Development

```bash cd my-app

Start local Supabase

supabase start

Copy the API URL and anon key to .env.local

Start dev server

npm run dev ```

Your app is now running at http://localhost:5173!

🤖 Claude Desktop Integration

DYIable provides an MCP server that lets Claude Desktop directly interact with your project.

Setup MCP Integration

```bash

Register DYIable MCP server with Claude Desktop

dyiable mcp register

Restart Claude Desktop

```

Available MCP Tools

Once registered, Claude can:

  1. Scaffold Components

    • "Create a new UserProfile component"
    • "Add a DashboardLayout component"
  2. Create Migrations

    • "Create a migration for a posts table with title and content"
    • "Add a users_profiles table"
  3. Generate Types

    • "Generate TypeScript types from the database schema"
  4. Add Features

    • "Add authentication to the project"
    • "Set up Stripe payments"

Example Conversation with Claude

``` You: Create a new component called ProductCard that displays product info

Claude: I'll create that component for you. [Uses scaffold_component tool] ✓ Created src/components/ProductCard.tsx

You: Now create a migration for a products table

Claude: I'll create a migration for the products table. [Uses create_migration tool] ✓ Created supabase/migrations/20240115_create_products.sql ```

📦 CLI Commands

dyiable init [project-name]

Initialize a new React + Supabase project.

Options:

  • --template <template>: Template to use (default: 'default')
  • --skip-install: Skip npm install
  • --skip-supabase: Skip Supabase setup

dyiable add-feature <feature>

Add a pre-built feature to your project.

Available features:

  • auth: Email/password authentication
  • auth-oauth: OAuth providers (Google, GitHub, etc.)
  • stripe: Stripe payments integration
  • uploads: File upload functionality
  • realtime: Real-time features

Options:

  • -p, --path <path>: Project path (default: '.')

Example: ```bash dyiable add-feature auth ```

dyiable deploy [target]

Deploy your app to a hosting platform.

Available targets:

  • vercel (default)
  • netlify
  • cloudflare

Options:

  • -p, --path <path>: Project path (default: '.')
  • --skip-build: Skip build step

Example: ```bash dyiable deploy vercel ```

dyiable chat

Start an AI chat session for your project using Claude API.

Options:

  • -p, --path <path>: Project path (default: '.')
  • -k, --api-key <key>: Claude API key (or set ANTHROPIC_API_KEY env var)

Example: ```bash export ANTHROPIC_API_KEY=your-key-here dyiable chat ```

dyiable mcp [action]

Manage MCP server integration with Claude Desktop.

Actions:

  • status: Check MCP server registration status
  • register: Register DYIable MCP server with Claude Desktop
  • start: Start MCP server (for development)

🏗️ Project Structure

``` my-app/ ├── supabase/ │ ├── config.toml # Supabase configuration │ └── migrations/ # Database migrations ├── src/ │ ├── components/ # React components │ ├── pages/ # Page components │ ├── hooks/ # Custom React hooks │ ├── lib/ │ │ └── supabase.ts # Supabase client │ ├── types/ │ │ └── database.ts # Generated DB types │ └── utils/ # Utility functions ├── .env.local # Environment variables ├── package.json ├── vite.config.ts └── tailwind.config.js ```

🎨 Component Libraries

DYIable supports several component libraries:

  • Shadcn UI (recommended): Tailwind + Radix UI components
  • Chakra UI: Complete component system
  • Material UI: Google's Material Design
  • None: Just Tailwind CSS

🗃️ Supabase Integration

Local Development

```bash

Start local Supabase (requires Docker)

supabase start

Create a migration

dyiable mcp register # Then ask Claude to create migrations

Or manually:

supabase migration new create_posts

Apply migrations

supabase db reset ```

Generate TypeScript Types

```bash

Via CLI

supabase gen types typescript --local > src/types/database.ts

Or via Claude with MCP

Just ask: "Generate TypeScript types from the database"

```

Remote Deployment

```bash

Link to Supabase project

supabase link --project-ref your-project-ref

Push migrations to remote

supabase db push ```

🚢 Deployment

Vercel (Recommended)

```bash

Install Vercel CLI

npm install -g vercel

Deploy

dyiable deploy vercel

Or manually:

vercel --prod ```

Environment Variables

Make sure to set these in your hosting platform:

  • VITE_SUPABASE_URL: Your Supabase project URL
  • VITE_SUPABASE_ANON_KEY: Your Supabase anon/public key

🤝 Contributing

DYIable is open source but uses a non-commercial license. See LICENSE.md for details.

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

📝 License

DYIable is licensed under the Business Source License 1.1 (BSL).

What This Means:

✅ FREE Production Use:

  • Solo developers: Unlimited revenue, build and sell anything (non-competing)
  • Small teams: ≤5 people AND ≤$500K annual revenue
  • Solo freelancers: Build projects for any clients
  • Education: Students and teachers
  • Small non-profits: ≤$1M annual revenue
  • Anyone: Non-production use (dev, test, staging)

💰 Commercial License Required:

  • Organizations with >5 employees/contractors
  • Organizations with >$500K annual revenue
  • Multi-person agencies and consulting firms
  • Any production use exceeding free tier limits

🚫 Never Allowed:

  • Building competing scaffolding-as-a-service
  • Competing with Lovable.dev or DYIable

⏰ In 4 Years (October 2029):

  • DYIable automatically converts to Apache License 2.0
  • Becomes fully open source with no restrictions

This is NOT traditional open source (yet), but it will be! See LICENSE.md and LICENSE-FAQ.md for full details.

Philosophy: Companies should pay for tools that help them build products. Solo developers and small teams build freely; growing companies contribute back.

For commercial licensing: [email protected]

🐛 Issues & Support

  • Report bugs: GitHub Issues
  • Documentation: [Coming soon]
  • Community: [Coming soon]

🗺️ Roadmap

v0.1 (Current)

  • ✅ Basic project scaffolding
  • ✅ MCP server integration
  • ✅ Component scaffolding
  • ✅ Migration tools
  • ✅ Vercel deployment

v0.2 (Coming Soon)

  • 🚧 Auth feature templates
  • 🚧 Stripe integration template
  • 🚧 File upload template
  • 🚧 Real-time features template
  • 🚧 More deployment targets

v0.3 (Future)

  • 🔮 AI-powered code generation improvements
  • 🔮 Testing utilities
  • 🔮 Performance optimization tools
  • 🔮 Database seed/fixture management
  • 🔮 Component library templates

💡 Tips & Best Practices

  1. Use Claude Desktop with MCP: This is the most powerful way to use DYIable
  2. Start local Supabase early: Run supabase start before development
  3. Keep migrations small: One logical change per migration
  4. Generate types frequently: After each migration, regenerate types
  5. Use Row Level Security: Enable RLS on all tables for security
  6. Environment variables: Never commit .env.local to git

🙏 Acknowledgments


Happy building with DYIable! 🎉