{"_id":"0perator","_rev":"4-175bc750c353e76385d10879df22abda","name":"0perator","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"0perator","version":"0.1.0","author":{"name":"Tiger Data"},"_id":"0perator@0.1.0","maintainers":[{"name":"ceviantiger","email":"mat@tigerdata.com"}],"bin":{"0perator":"dist/index.js"},"dist":{"shasum":"fd6480f6341f0dce9169e4cad4d3d695be8b8bcd","tarball":"https://registry.npmjs.org/0perator/-/0perator-0.1.0.tgz","fileCount":22,"integrity":"sha512-B/6eNCJiVbqBVENtxYAx6wDxuFBUNryy1B9V++hxYZdBxUn+eEy+o6V+AkuU1IKQShwFkMAnImLUHvZegl+uYw==","signatures":[{"sig":"MEUCIQD1UYbfaFciSCguA4+43sIaZMmYKV4iZWNlAqy0VL7zbAIgblsmzcB66EtDjfDflWYrILE2NZLnUOJOunajGqdkmpU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37472},"type":"module","gitHead":"0e17e7a18958636d1a6e428f1b54814ddfbeff6e","scripts":{"dev":"tsx src/index.ts","lint":"biome check","build":"tsc && shx chmod +x dist/*.js","start":"node dist/index.js","watch":"tsc --watch","format":"biome format --write","dev:mcp":"tsx src/index.ts mcp start","prepare":"npm run build","lint:fix":"biome check --fix","inspector":"npx @modelcontextprotocol/inspector tsx src/index.ts mcp start","preuninstall":"node dist/scripts/cleanup.js"},"_npmUser":{"name":"ceviantiger","email":"mat@tigerdata.com"},"_npmVersion":"11.6.2","description":"Build full-stack applications instantly through natural conversation","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.25.76","commander":"^14.0.2","picocolors":"^1.1.1","gray-matter":"^4.0.3","@inquirer/prompts":"^8.0.2","@tigerdata/mcp-boilerplate":"^0.8.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4.0","tsx":"^4.20.6","typescript":"^5.9.3","@types/node":"^24.10.1","@biomejs/biome":"^2.3.8"},"_npmOperationalInternal":{"tmp":"tmp/0perator_0.1.0_1765209167293_0.252913892994018","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"0perator","version":"0.1.1","author":{"name":"Tiger Data"},"_id":"0perator@0.1.1","maintainers":[{"name":"ceviantiger","email":"mat@tigerdata.com"}],"bin":{"0perator":"dist/index.js"},"dist":{"shasum":"ed3aa1b18d12fbd28afce171644bd2ca8d8e9623","tarball":"https://registry.npmjs.org/0perator/-/0perator-0.1.1.tgz","fileCount":25,"integrity":"sha512-x2lJcF1HjeS+tC5qlSF0Q18ILyVpKvEId8ZIKp6UGjJDahzKKG7/qKvhg8117yqdiBzO/9z+mH9qd8F90NkcxA==","signatures":[{"sig":"MEQCICu0wdurNih5vOMJH76KY8GHwUisZdEbxI8puka6gtDXAiB4mezuLYrceagfutD0uJMFKEgeh7Z8szJ41EwUn1+Ytw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60567},"type":"module","gitHead":"3b1d4d03e9a15b9d44206a6500075b50485edb34","scripts":{"dev":"tsx src/index.ts","lint":"biome check","test":"vitest run","build":"tsc && shx chmod +x dist/*.js","start":"node dist/index.js","watch":"tsc --watch","format":"biome format --write","dev:mcp":"tsx src/index.ts mcp start","prepare":"npm run build","lint:fix":"biome check --fix","inspector":"npx @modelcontextprotocol/inspector tsx src/index.ts mcp start","test:watch":"vitest","preuninstall":"node dist/scripts/cleanup.js"},"_npmUser":{"name":"ceviantiger","email":"mat@tigerdata.com"},"_npmVersion":"11.6.2","description":"Build full-stack applications instantly through natural conversation","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.25.76","@antfu/ni":"^28.0.0","commander":"^14.0.2","picocolors":"^1.1.1","gray-matter":"^4.0.3","comment-json":"^4.4.1","@clack/prompts":"^0.11.0","@tigerdata/mcp-boilerplate":"^0.8.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4.0","tsx":"^4.20.6","vitest":"^4.0.15","typescript":"^5.9.3","@types/node":"^24.10.1","@biomejs/biome":"^2.3.8"},"_npmOperationalInternal":{"tmp":"tmp/0perator_0.1.1_1765276444363_0.6408256460353492","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"0perator","version":"0.2.0","author":{"name":"Tiger Data"},"_id":"0perator@0.2.0","maintainers":[{"name":"ceviantiger","email":"mat@tigerdata.com"}],"bin":{"0perator":"dist/index.js"},"dist":{"shasum":"dde90cfcace4814c137a22a02b61086f49e0f49a","tarball":"https://registry.npmjs.org/0perator/-/0perator-0.2.0.tgz","fileCount":27,"integrity":"sha512-tQzkG6ii8z0j9aECEvcMQixwIEcsk8Epdf4d6aDScYCW0I84Lqrft8CXmaZ09y1jnwS5X/aQPdoUYTiqa1HXVQ==","signatures":[{"sig":"MEYCIQCp6L90z7T7rLVzZPtUAVr7Ol+HnW+bUWk7ToBE+8omHwIhALHf43uE6DfJnQBkBwzSoJ3fMuuratcqQYZkhRn9OOzw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76455},"type":"module","gitHead":"771e43a75718b16aefe501f4719c969d7d763c0a","scripts":{"dev":"tsx src/index.ts","lint":"biome check","test":"vitest run","build":"tsc && shx chmod +x dist/*.js","start":"node dist/index.js","watch":"tsc --watch","format":"biome format --write","dev:mcp":"tsx src/index.ts mcp start","prepare":"npm run build","lint:fix":"biome check --fix","inspector":"npx @modelcontextprotocol/inspector tsx src/index.ts mcp start","test:watch":"vitest","preuninstall":"node dist/scripts/cleanup.js"},"_npmUser":{"name":"ceviantiger","email":"mat@tigerdata.com"},"_npmVersion":"11.6.2","description":"Build full-stack applications instantly through natural conversation","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.25.76","dotenv":"^17.2.3","@antfu/ni":"^28.0.0","commander":"^14.0.2","picocolors":"^1.1.1","gray-matter":"^4.0.3","comment-json":"^4.4.1","@clack/prompts":"^0.11.0","@tigerdata/mcp-boilerplate":"^0.8.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4.0","tsx":"^4.20.6","vitest":"^4.0.15","typescript":"^5.9.3","@types/node":"^24.10.1","@biomejs/biome":"^2.3.8"},"_npmOperationalInternal":{"tmp":"tmp/0perator_0.2.0_1765372618059_0.4531640606289704","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"0perator","version":"0.3.0","description":"Build full-stack applications instantly through natural conversation","author":{"name":"Tiger Data"},"type":"module","bin":{"0perator":"dist/index.js"},"scripts":{"build":"tsc && shx chmod +x dist/*.js","watch":"tsc --watch","prepare":"npm run build","preuninstall":"node dist/scripts/cleanup.js","dev":"tsx src/index.ts","dev:mcp":"tsx src/index.ts mcp start","start":"node dist/index.js","inspector":"npx @modelcontextprotocol/inspector tsx src/index.ts mcp start","check":"biome check . && tsc --noEmit -p tsconfig.check.json","lint":"biome check","lint:fix":"biome check --fix","format":"biome format --write","test":"vitest run","test:watch":"vitest"},"dependencies":{"@antfu/ni":"^28.0.0","@clack/prompts":"^0.11.0","@tigerdata/mcp-boilerplate":"^0.8.0","commander":"^14.0.2","comment-json":"^4.4.1","dotenv":"^17.2.3","gray-matter":"^4.0.3","handlebars":"^4.7.8","picocolors":"^1.1.1","postgres":"^3.4.7","zod":"^3.25.76"},"devDependencies":{"@biomejs/biome":"^2.3.8","@types/node":"^24.10.1","shx":"^0.4.0","tsx":"^4.20.6","typescript":"^5.9.3","vitest":"^4.0.15"},"gitHead":"6af677e721d9aca1589370100c96110a45a2c012","_id":"0perator@0.3.0","_nodeVersion":"25.2.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-E4TdBaGeoVCtoxjDCluRJAL3LI1gB4lgcJOzA2KjBr1FHWIw0at5phFPJKwMowt0nyRA9/BKrzrwat5QOgH4gg==","shasum":"edfea679fd932f860da71620ee4f0cc009b30c9d","tarball":"https://registry.npmjs.org/0perator/-/0perator-0.3.0.tgz","fileCount":38,"unpackedSize":107879,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDezb6CkBYYuEl+6Dxo3m4lo7stejykkkPnRnNbhCLM+AiBhgWVx7B05zcyC4sikyoXbyVt9BgYNrBvlL3CI1s8HUg=="}]},"_npmUser":{"name":"ceviantiger","email":"mat@tigerdata.com"},"directories":{},"maintainers":[{"name":"ceviantiger","email":"mat@tigerdata.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/0perator_0.3.0_1766149637661_0.8892044923287548"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-08T15:52:47.292Z","modified":"2025-12-19T13:07:17.994Z","0.1.0":"2025-12-08T15:52:47.442Z","0.1.1":"2025-12-09T10:34:04.515Z","0.2.0":"2025-12-10T13:16:58.194Z","0.3.0":"2025-12-19T13:07:17.812Z"},"author":{"name":"Tiger Data"},"description":"Build full-stack applications instantly through natural conversation","maintainers":[{"name":"ceviantiger","email":"mat@tigerdata.com"}],"readme":"# 0perator\n\nBuild full-stack applications with AI: real code you own and ship.\n\n## Overview\n\n0perator helps you build modern, well-designed full-stack apps without worrying about the tech stack. You focus on product functionality and design—we handle the infrastructure.\n\n**Unlike vibe-coding platforms,** you own the code: it lives in your local repo with professional workflows like git, branches, and PR reviews. You get full-stack apps with real databases and auth, not just UI prototypes. No vendor lock-in: change providers, add any library, extend beyond what we support.\n\n**Unlike plain AI coding,** you don't have to research the best modern stack or how to wire it together. 0perator gives AI assistants deep, specific guidance on exact patterns—how to structure tRPC routers, which Drizzle patterns to use, how auth integrates with the database. The result is idiomatic, high-quality code with less manual steps.\n\n**We don't just build your app scaffold, we support the full development lifecycle:**\n- **Hardening** - Intgration tests and strict type checks that catch AI mistakes early\n- **Deploying** - Ship to production with popular providers like Vercel\n- **Iterating** - Plan and build new features with AI guidance (coming soon)\n- **Maintaining** - Keep code health high as your app grows (coming soon)\n\n## Example Queries\n\nAfter installing 0perator, try asking your AI coding assistant:\n\n- \"Create a collaborative TODO app with user accounts\"\n- \"Build a real-time chat application\"\n- \"Create a dashboard to track my fitness goals\"\n- \"Build a blog with markdown support and comments\"\n- \"Create an expense tracker with categories and charts\"\n\nOnce your app is built, we also support deployment:\n\n- \"Deploy my app to Vercel\"\n\nAnd hardening for better AI-assisted development:\n\n- \"Add backend testing\"\n- \"Add stricter TypeScript checks\"\n\nFinally, we support you all the way to production:\n\n- \"Make this application production ready\" (coming soon)\n\n## Installation\n\n```bash\nnpx 0perator@latest init\n```\n\nThis will configure your IDE with the MCP servers. Select which IDE to configure when prompted.\n\n### Init Options\n\n```bash\n# Interactive mode (select IDE with arrow keys)\nnpx 0perator@latest init\n\n# Configure specific IDE\nnpx 0perator@latest init --client claude-code\nnpx 0perator@latest init --client cursor\n\n# Pin to current version instead of always using latest\nnpx 0perator init --no-latest\n```\n\nThe init command will:\n1. Install tiger-cli if needed\n2. Authenticate with Tiger Cloud (opens browser)\n3. Configure MCP servers for your selected IDE(s)\n\n## The Stack\n\n0perator creates apps using the **T3 Stack**:\n\n- **Next.js** with App Router\n- **tRPC** for end-to-end type-safe APIs\n- **Drizzle ORM** for type-safe database queries\n- **Better Auth** for authentication (optional)\n- **Tailwind CSS** with shadcn/ui components\n- **Tiger Cloud PostgreSQL** with TimescaleDB\n\nEverything is configured and connected automatically.\n\n## How it Works\n\n0perator provides AI assistants with tools and skills via MCP (Model Context Protocol).\n\nBecause we're opinionated about the stack, we can write skills with precise, battle-tested instructions—not generic advice that works across many frameworks. This is why being opinionated matters: it lets us teach AI exactly how to build with this stack.\n\n**Skills** are step-by-step guides for complex workflows. AI accesses them via the `view_skill` tool:\n- `create-app` - Full app creation: database, auth, shadcn components\n- `deploy-app` - Deploy to Vercel with environment configuration\n- `add-backend-testing` - Vitest integration tests with isolated test database\n- `add-strict-checks` - Stricter TypeScript and linting\n\n**Tools** handle atomic operations that skills orchestrate. Examples:\n- `view_skill` - Load a skill to guide the current workflow\n- `open_app` - Open app in browser\n- `create_database` - Provision Tiger Cloud PostgreSQL\n- `create_web_app` - Scaffold T3 Stack app with database connection\n\n## Development\n\n**Dev mode:** Run `npm run dev -- init --dev` from the repo to configure IDEs to run the MCP server from source. Code changes take effect on IDE restart without rebuilding.\n\nSee [CLAUDE.md](CLAUDE.md) for development setup, adding new tools, and debugging.\n\n### Testing\n\nWhen testing app creation, verify that the AI coding agent calls `view_skill('create-app')` in the first few tool calls. This ensures the agent follows the structured workflow for setting up the database, auth, and UI components correctly.\n\n## Design Philosophy\n\n**You own the code:** No platform lock-in. Your code lives in your repo, runs on your infrastructure, and you can change anything—even replace us entirely.\n\n**Humans design product not infrastructure:** You think about the product experience, AI handles the infrastructure decisions.\n\n**Agentic Ergonomics:** Abstraction layers that help humans can hinder AI agents. 0perator embraces direct, parameter-driven interfaces that AI can use efficiently.\n\n**Best Practices Built-in:** T3 Stack provides type-safety from database to UI with tRPC and Drizzle.\n\n## Success Metrics\n\n- **Quality without the effort**: Production-ready code with TypeScript, error handling, best practices\n- **Completeness**: Auth includes UI, database includes schema, everything works\n- **Minimal Config**: No manual steps, no .env editing, no npm install\n\n## Future\n\n- More UI themes\n- Payment integration\n- Real-time features\n","readmeFilename":"README.md"}