Command Palette

Search for a command to run...

Introducing Oorty

Ship AI-Generated Apps with Confidence

One command to scaffold production-ready tests for your v0, Bolt, or Lovable project. Vitest, Playwright, and CI workflows configured in seconds.

~/my-app
$npx oorty@latest init
Generated Files
    • cache
    • plans
    • analysis
    • logs

Why this exists

AI-generated apps deserve production-ready testing infrastructure. We built Oorty because we were tired of shipping without confidence.

AI makes building easy

Tools like v0, Cursor, and Bolt let you ship features in minutes. But speed without testing leads to fragile apps.

Testing is still manual

Setting up Vitest, Playwright, CI pipelines, and test directories is tedious. Most developers skip it entirely.

Tests go stale fast

Even when you write tests, they break with every change. Maintaining tests is a full-time job nobody signed up for.

How it works

From zero to fully tested in under a minute. Oorty handles the boring setup so you can focus on shipping.

01

Run the init command

A single command detects your framework, generates config files, and installs dependencies.

Terminal
npx oorty@latest init
02

Generate a test plan (Pro)

AI analyzes your codebase and creates a comprehensive test plan. Identifies components, utilities, and user flows that need coverage.

Terminal
npx oorty plan
# Analyzing codebase...
# Scanning 47 components, 12 utilities, 8 pages
#
# Generated: .oorty/plans/test-plan.md
# - 23 unit tests recommended
# - 15 component tests recommended
# - 6 E2E tests recommended
03

Generate all tests (Pro)

One command creates all the tests from your plan. Framework-aware templates with real assertions based on your code.

Terminal
npx oorty generate
# Reading test plan...
# Generating tests...
#
# Created: tests/unit/utils.test.ts
# Created: tests/unit/helpers.test.ts
# Created: tests/component/header.test.tsx
# ... and 41 more
04

Measure coverage (Free)

Run Vitest with V8 coverage and a per-file summary. Optional HTML report or localhost viewer—no AI API key.

Terminal
npx oorty coverage
# Oorty coverage
# Directory: /your/project
#
# Lines Stmts Funcs Branches File
# 92.1% 91.0% 88.2% 84.5% src/utils.ts
# ...
05

CI runs automatically

Push to GitHub and watch your tests run. Coverage reports and status checks on every PR.

name: Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npx vitest run --coverage
- run: npx playwright test

Everything you need to test with confidence

Oorty provides the complete testing toolkit for modern web applications. Free forever for individuals, with Pro features for teams.

Framework Detection

Automatically detects Next.js, React, Vite, Remix, Astro, and more. Zero configuration required.

Full Test Stack

Unit, component, and E2E test configs ready to go. Vitest for speed, Playwright for confidence.

GitHub Actions

Production-ready CI workflows generated automatically. Tests run on every push and PR.

Doctor Command

Validate your test setup anytime. Diagnose configuration issues instantly.

Pro

AI Test Planning

Analyze your codebase and generate a comprehensive test plan. Know exactly what needs coverage.

Pro

Bulk Test Generation

Generate all tests from your plan with one command via the Oorty hosted API (OORTY_API_KEY).

Vitest coverage CLI

Run npx oorty coverage for V8 metrics, a per-file table, and optional HTML—no AI key required.

Pro

Hosted AI completions

Codebase analysis runs locally; model calls go through Oorty with your dashboard API key.

CLI Reference

Six commands to master. Four free, two Pro. Each one designed to be simple, powerful, and predictable.

Commands

Initialize testing infrastructure in your project (Free)

Terminal
npx oorty@latest init
# Options:
# -y, --yes Skip prompts and use defaults
# --typescript Use TypeScript (default: true)
# --skip-install Skip dependency installation
# --cwd <path> Set working directory

Generated Files

oorty.json
1{
2 "$schema": "https://oorty.dev/schema.json",
3 "framework": "nextjs",
4 "typescript": true,
5 "srcDir": false,
6 "testRunner": "vitest",
7 "e2eRunner": "playwright",
8 "directories": {
9 "unit": "tests/unit",
10 "component": "tests/component",
11 "e2e": "tests/e2e",
12 "plans": ".oorty/plans"
13 },
14 "ci": {
15 "provider": "github-actions",
16 "runOnPush": true,
17 "runOnPR": true
18 }
19}

Real-world examples

See exactly what Oorty generates. Production-ready tests you can use as templates for your own.

tests/unit/utils.test.ts
1import { describe, it, expect } from 'vitest'
2import { formatPrice, validateEmail, slugify } from '@/lib/utils'
3
4describe('formatPrice', () => {
5 it('formats USD correctly', () => {
6 expect(formatPrice(1999)).toBe('$19.99')
7 expect(formatPrice(100)).toBe('$1.00')
8 expect(formatPrice(0)).toBe('$0.00')
9 })
10
11 it('handles negative values', () => {
12 expect(formatPrice(-500)).toBe('-$5.00')
13 })
14})
15
16describe('validateEmail', () => {
17 it('accepts valid emails', () => {
18 expect(validateEmail('user@example.com')).toBe(true)
19 expect(validateEmail('name+tag@domain.co')).toBe(true)
20 })
21
22 it('rejects invalid emails', () => {
23 expect(validateEmail('not-an-email')).toBe(false)
24 expect(validateEmail('@missing-local.com')).toBe(false)
25 expect(validateEmail('missing-at.com')).toBe(false)
26 })
27})
28
29describe('slugify', () => {
30 it('converts strings to URL slugs', () => {
31 expect(slugify('Hello World')).toBe('hello-world')
32 expect(slugify(' Multiple Spaces ')).toBe('multiple-spaces')
33 expect(slugify('Special!@#Characters')).toBe('special-characters')
34 })
35})

Simple, transparent pricing

Start free and upgrade when your team needs AI-powered test maintenance.

Free

$0

Perfect for getting started with testing

  • init - config scaffolding
  • doctor - setup validation
  • add - manual test file creation
  • coverage - Vitest V8 reports (terminal, summary, optional HTML)
  • Vitest + Playwright configs
  • GitHub Actions CI workflow
  • Community support

Pro

$20/month

Unlimited AI-powered test generation

  • Everything in Free, plus:
  • plan - AI codebase analysis
  • generate - bulk test creation
  • AI test plan gap insights (what still needs tests)
  • Framework-aware templates
  • Powered by GPT-4o
  • Priority support

VS Code extension coming soon. Get notified when it launches.

Frequently asked questions

Everything you need to know about Oorty. Can't find the answer you're looking for? Reach out to our team.