qa-foundry
v0.2.2
Published
QA Foundry - AI-Powered QA Automation Platform. Record tests, generate with AI, run Playwright tests, review with HITL, track results.
Maintainers
Readme
QAFoundry Server
Express API server with MongoDB, Playwright test runner, Socket.IO, and AI services. Serves the built React SPA as static files.
Package: qa-foundry
CLI: qa-foundry
Quick Start
1. Install
npm install -g qa-foundry2. Setup (One-time)
qa-foundry setupInteractive wizard will configure:
- MongoDB connection
- JWT secrets
- Browser installation
- Database seeding with demo account
3. Start
qa-foundry startServer runs on http://localhost:3002 by default.
That's it! Your QAFoundry instance is ready to use.
Storage
Uploads, reports, screenshots, traces, videos, and recordings are written to the configured storagePath. Assets are served at /uploads/*.
Storage location:
- Dev default:
./uploads(relative to cwd) - Production: use an absolute path or persistent volume
{ "storagePath": "/var/qa-foundry/uploads" }CLI Reference
qa-foundry [command] [options]
Commands:
setup Interactive setup wizard
• Configure MongoDB & Authentication
• Setup Playwright Testing
• Verify Installation
• Seed Database (optional)
start Start the QAFoundry server
help Show help message
version Show version
Options:
--port <number> Server port (default: 3002)
--host <hostname> Server host (default: localhost)
--skip-seed Skip database seeding during setup
--help Show help message
--version Show version
Examples:
qa-foundry setup
qa-foundry start --port 3000 --host 0.0.0.0
qa-foundry help
qa-foundry versionAdvanced Configuration (Developers)
Resolution order: CLI flags > env vars > .env file > defaults
Environment Variables
| Setting | Env Var | Default | Description |
|---------|---------|---------|-------------|
| port | PORT | 3002 | HTTP port |
| mongoUri | MONGODB_URI | (required) | MongoDB connection |
| jwtSecret | JWT_SECRET | (required) | Access token secret |
| jwtRefreshSecret | JWT_REFRESH_SECRET | (required) | Refresh token secret |
| frontendUrl | FRONTEND_URL | http://localhost:3000 | CORS origin |
| storagePath | STORAGE_PATH | ./uploads | Upload directory |
| geminiApiKey | GEMINI_API_KEY | (optional) | Gemini API key |
| llmProvider | LLM_PROVIDER | gemini | gemini or ollama |
| encryptionKey | ENCRYPTION_KEY | (optional) | Encryption key |
Using Environment Variables
Start with custom configuration:
MONGODB_URI=mongodb://... \
JWT_SECRET=your-secret \
JWT_REFRESH_SECRET=your-refresh-secret \
qa-foundry start --port 3000 --host 0.0.0.0Frontend Assets
The server serves the React SPA from the built dist/frontend/ directory (created during the build process). Ensure the frontend is built before deploying.
Seeding the Database
After running qa-foundry setup, the database is pre-seeded with a demo account.
Demo Credentials:
- Email:
[email protected] - Password:
Admin@123
Includes sample org, projects, test suites, and test cases ready to explore.
To manually reseed:
# From workspace root:
npm run seed
# Or directly:
MONGODB_URI=mongodb://127.0.0.1:27017/qa-foundry node packages/qaforge-server/src/seed.js