AI-powered functional testing tool for *web apps. No coding required β describe tests in plain English, record interactions, or let the tool suggest what to test.
# 1. Install ALL dependencies (root, client, and server)
npm run install-all
# OR: Install everything and start the dev environment in one command
npm run setup
# 2. Install Playwright browsers (if first time)
npx playwright install chromium
# 3. Access UI
# http://localhost:5173Dockerization allows you to run the entire stack (Frontend + Backend + Playwright) with one command, ensuring all dependencies (like Linux browser binaries) are perfectly configured.
- Windows/Mac: Download and install Docker Desktop.
- Linux: Install
dockeranddocker-compose.
Create the required secrets files (if you haven't already):
# Frontend
cp client/.env.example client/.env
# Backend
cp server/.env.example server/.envNote: Open the .env files and enter your Supabase and Email credentials.
Run the following command at the root of the project:
docker compose up --build- Frontend:
http://localhost:5173 - Backend API:
http://localhost:3001
Record real browser interactions and replay them automatically.
- Enter URL + optional Basic Auth credentials
- Give the test a name
- Click β START RECORDING β Chrome opens on your screen
- Use the site normally β every click, fill, and navigation is captured live
- Watch steps appear in real time in the UI
- Click β STOP & SAVE β steps are saved permanently
Replay & Execution:
- Click βΆ REPLAY β Chrome opens and executes all steps with a live, status-aware overlay
- Structured Execution: Supports both natural language steps (AI-parsed) and pre-structured JSON flows (instant)
- Watch the progress bar and real-time step results in the side panel
- Click β STOP to abort mid-replay
Edit Steps:
- Click β EDIT on any recording to open the step editor
- Drag β Ώ steps to reorder
- β Edit any step β change action, selector, value, or description
- β Delete unwanted steps
- + Add step β pick any action (click, fill, assert, wait, screenshot, etc.)
- + Screenshot / + Wait quick insert buttons
- Smart validator highlights errors and warnings before you replay
- Click SAVE & CLOSE to persist changes
Deep-scans your site using a multi-strategy engine to generate logical, execution-ready test flows.
- Enter a site name and target URL
- Toggle Basic Auth if the site is behind a staging popup
- Click β SCAN & SUGGEST
- The Smart Engine performs a Deep Scan to detect:
- Auth Flows: Logical sequences for Login/Signup with success/failure paths.
- Search Flows: Query input and result verification sequences.
- Form Flows: Multi-field submission sequences with specific success assertions.
- Navigation Path: Key landing pages and core menu links.
- Success Indicators: Automatically detects "Logout", "Dashboard", or "Welcome" nodes to build reliable assertions.
- Suggestions are ranked by Priority (High/Medium/Low) and Confidence Breakdown:
- DET (Detection): How likely this is a critical user flow.
- SEL (Selector): Stability score for the primary target element.
- OUT (Outcome): Reliability of the generated success assertion.
- Each suggestion features:
- Flow Visualization: Step-by-step breakdown of actions (Navigate, Fill, Click, Assert).
- Why Test This?: Business context and impact of failure.
- βΆ RUN TEST: Executes the structured flow instantly with high reliability.
- COPY: Export the raw JSON steps for use in custom scripts or documentation.
- Parameterized Data: Supports
{{user.email}}and{{user.password}}variables for immediate use with test accounts. - Scans are persisted locally β return anytime to re-run or review suggestions.
Deeply audit any site for performance, accessibility, SEO, and more.
- Enter the site URL
- Choose a Persona (Standard, Screen Reader, Low Vision, Keyboard Only)
- Toggle Compare across devices to test on Desktop, Mobile, and Low-end Mobile simultaneously
- Select individual profiles for CPU and Network throttling simulation:
- Desktop: Unthrottled
- Mobile: 4G + 2x CPU Slowdown
- Low-end Mobile: 3G + 4x CPU Slowdown
- Toggle SEO Audit if required
- Click βΆ RUN FULL AUDIT
- View a side-by-side Comparison Report with scores for each device type
- Analyze Visual Performance Charts (FCP, TBT, DOM Nodes)
- Use Interactive Highlighting to instantly find failing elements on the live site
- Accessibility Detailed View: Expand the Accessibility category to see grouped issues (Color & Contrast, Navigation, ARIA, etc.), actionable fix suggestions, WCAG documentation links, and DOM snippets powered by axe-core.
- View detailed results across 7 categories:
- Functional: Site uptime and auth status
- Performance: FCP, TBT, CLS, and Memory usage
- Accessibility: Deep WCAG scans via targeted rules (Alt-text, input labels, precise heading hierarchy validation, tab-tracking for keyboard nav)
- SEO: Meta tags, canonicals, robots.txt, OG tags
- Links: Scans for 404s and network errors
- Console: Captures JS errors and uncaught exceptions
- UI: Detects tap target sizing, text clipping, layout shifts, and fixed overlays
- PDF Reporting: Generate rich, chart-enabled PDF reports directly from the dashboard, including Multi-Device Comparison Trend analysis.
- Each category gets a 0-100 Score and status (Passed/Warning/Failed)
- Audit reports are saved to
data/audits.jsonfor later review
Secure user management and project protection powered by Supabase.
- Email/Password Auth: Secure signup and login flows.
- Google OAuth: One-click login with Google integration.
- Password Reset Flow:
- "Forgot Password" link in the login modal.
- Secure magic link sent via email.
- Dedicated
/reset-passwordroute with premium glassmorphism UI. - Real-time password strength and matching validation.
- Protected Dashboard: Ensures only authenticated users can access sensitive audit data and test histories.
A premium, developer-first experience with modern design principles.
- Premium Navigation: Persistent, glassmorphism Navbar with context-aware actions.
- Global Scroll-to-Top: A dynamic, animated button appearing across all product pages for seamless navigation.
- Responsive Routing: Instrumented with
react-router-domfor fast, state-aware page transitions. - Dark Mode Aesthetics: Deep
#0B0F0Csurfaces with neon green#c8f069accents and subtle backdrop filters.
Run tests directly from your terminal.
npx ts-node src/cli.ts --platform <web|mobile|desktop> --url <target> --test "<description>"Common Flags:
-p, --platform:web,mobile, ordesktop-u, --url: Site URL or App path-t, --test: Plain English test description--no-headless: Run with visible browser (web only)
Every test run and audit is saved and viewable anytime.
- Click any test run in the list to see full step-by-step results
- View Audits history to track site health over time
- Screenshots shown inline β click to expand fullscreen
- Download the HTML report for any run
- Clear all with confirmation popup
For password-protected sites (nginx/Apache HTTP auth popup):
All tabs (Record & replay, Suggest tests, Site Audit) have a "Site requires Basic Auth" toggle. Turn it on β username and password fields appear β credentials sent securely, never in the URL.
Write natural English β separate steps with commas:
| What you write | What it does |
|---|---|
verify header is visible |
Asserts header element is visible |
fill #email with 'user@test.com' |
Types into the email field |
press Enter |
Simulates a keyboard 'Enter' press |
click sign in button |
Clicks the sign in button |
scroll to bottom |
Scrolls page to bottom |
wait 2000 |
Waits 2 seconds |
verify url contains 'dashboard' |
Asserts URL changed |
take screenshot |
Captures full-page screenshot |
verify footer is visible |
Asserts footer is visible |
Login example:
fill #username with 'student', fill #password with 'Password123', click #submit, wait 2000, verify url contains 'logged-in-successfully', take screenshot
Every test step uses a smart execution engine:
- Multi-strategy Selector Engine β generates primary and fallback selectors using ARIA roles, labels, text content, and stable CSS attributes.
- Success Indicator Detection β automatically identifies post-action state changes (like 'Logout' or success alerts) to generate concrete assertions.
- Auto-healing β if primary selectors fail, the engine fuzzy-matches elements based on proximity and semantic similarity.
- Retry logic β every step retried up to 3 times with exponential backoff.
- Smart waits β intelligently waits for network idle and DOM stability.
- Framework detection β optimized for React, Vue, and Angular controlled components.
- Anti-bot β real Chrome behavior simulation with random delays and automation-masking.
ai-test-tool/
βββ client/ # Frontend React Application
β βββ public/ # Static assets & images
β β βββ blog/ # Blog post featured images
β βββ src/
β β βββ components/ # Reusable UI components (Pages, Modals, Navbar)
β β βββ contexts/ # React Context providers (AuthContext)
β β βββ hooks/ # Custom React hooks
β β βββ App.tsx # Main application routing
β β βββ main.tsx # Application entry point
β βββ Dockerfile.dev # Development container setup for Vite
β βββ package.json # Frontend dependencies
β βββ .env.example # Template for frontend environment variables
β
βββ server/ # Backend Node.js & Express API
β βββ index.ts # Main server entry & API routes
β βββ reportTemplate.ts # HTML templates for test reports
β βββ Dockerfile.dev # Development container (Playwright optimized)
β βββ package.json # Backend dependencies
β βββ .env.example # Template for backend environment variables
β
βββ src/ # Core Test Automation & AI Engine
β βββ ai/ # AI logic (Natural language test generation)
β βββ auditor/ # Deep site audit engine (Perf, A11y, SEO)
β βββ drivers/ # Automation drivers (Playwright & Appium)
β βββ engine/ # Smart multi-strategy element selector
β βββ recorder/ # Live browser recording logic
β βββ runner/ # Test execution orchestrator & reporter
β βββ scanner/ # CSS selector auto-detection
β βββ suggester/ # Smart test flow suggestion engine
β βββ types/ # Shared TypeScript definitions
β
βββ lib/ # Shared Library Code
β βββ supabase.js # Secure Supabase client configuration
β
βββ data/ # Persistent Local Data Storage
β βββ .gitkeep # Preserves structure (Git-ignored content)
β
βββ reports/ # Generated Test Assets
β βββ .gitkeep # Stores HTML reports, screenshots (Git-ignored content)
β
βββ .dockerignore # Optimized build settings for Docker
βββ .gitignore # Security rules (protects data, reports, and .env files)
βββ docker-compose.yml # Orchestration for multi-container deployment
βββ package.json # Monorepo/Workspace dependencies & setup scripts
βββ README.md # Project documentation
| File | Contents |
|---|---|
reports/history.json |
All test run results |
reports/recordings.json |
Saved recordings with steps |
reports/suggestions.json |
Saved smart test suggestions |
reports/screenshots/ |
Per-step screenshots |
reports/report-*.html |
Downloadable HTML reports |
data/audits.json |
Deep site audit results |
| Variable | Default | Description |
|---|---|---|
APPIUM_HOST |
localhost |
Appium server host (mobile) |
APPIUM_PORT |
4723 |
Appium server port (mobile) |
APPIUM_PLATFORM |
Android |
Android or iOS |
| Service | Port |
|---|---|
| Backend API | 3001 |
| Frontend (Vite) | 5173 |