HAL-TEST is a modern, visual automation framework that bridges the gap between manual QA and technical automation. Built on top of Playwright, it provides a high-performance, node-based interface to build, manage, and scale complex browser workflows without writing a single line of boilerplate code.
Most automation frameworks suffer from "Framework Fatigue": complex YAMLs, brittle selectors, and high barriers to entry. HAL-TEST changes the game:
- Low Code, Pro Power: Use the full strength of Playwright through a visual canvas.
- Zero Vendor Lock-in: Export your flows or run them via the HAL-TEST CLI.
- Self-Healing Ready: Designed to handle dynamic modern web apps with intelligent node logic.
- Built for Teams: Allow manual QAs to build tests that Seniors can audit and scale.
- Node-Based Logic: 50+ specialized nodes for DOM manipulation, network interception, and AI.
- Smart Connections: Animated execution feedbackโwatch your test run in real-time.
- Category-Specific UI: Glassmorphic design with 50+ unique icons for instant recognition.
- Viewing the App: Visual Documentation: Detailed guide for nodes, colors, and real-time feedback.
- Powerful CLI: Integrated terminal tool for CI/CD pipelines (GitHub Actions, Jenkins).
- Network Orchestration: Mock, intercept, and modify XHR/Fetch requests visually.
- Session Management: Persist cookies, local storage, and auth tokens between runs.
- LLM Integration: Semantic validation and AI-powered node generation.
- Frontend: React 18, React Flow, Motion 12, TanStack Query.
- Backend: Node.js, Express, Playwright.
- Database: SQLite (local persistence) + IndexedDB (client-side screenshots).
- Monorepo: Turbo + pnpm workspaces.
The fastest way to get started is using npx. No cloning or installation required:
npx haltest@latestThis will start the backend server, run pre-requisite checks, and open the HAL-TEST studio in your browser.
- Node.js 20+ and pnpm
git clone https://github.com/andresguc1/hal-test.git
cd hal-test
pnpm installFor quick local testing without Supabase:
# Set in your .env
AUTH_ENABLED=false
VITE_AUTH_ENABLED=falsepnpm --filter backend db:init
pnpm run devApp: http://localhost:5173/app/
Server: http://localhost:2001
Automate your workflows. You can run the CLI directly via npx (recommended) or install it globally.
# Run a flow by ID
npx haltest@latest cli run <flow_id> --headedIf you prefer a local installation:
cd apps/cli && npm install -g .To avoid missing system dependencies for Playwright, use Docker:
Bash
docker compose up -d --build
See DOCKER.md for detailed production setup.
To make contributing easier, we provide unified commands in the root package.json:
Pull the latest changes from GitHub, install all dependencies, and rebuild the frontend monolith in one step:
pnpm run update:appIf you encounter EADDRINUSE errors or need to clear the development ports (2001 and 3000), use the unified stop command:
pnpm run stopThe CLI launcher also features smart port detectionโit will automatically detect if the backend is already running and connect to it instead of failing.
Join our Slack: HAL-TEST Talk
Star the Repo: If this project helps you, give us a โญ!
Apache License 2.0 - Created by Andresguc1
