Testfuel is an open source test case management system for software development teams. Organize test suites, track releases, and collaborate with your team in workspaces and projects.
- Workspaces — Team spaces with member access and multiple projects
- Projects — Group test suites and releases by product or service
- Releases — Define releases and associate test suites for test runs
- Suites — Organize test cases into suites; support for archiving
- Test cases — Create and manage individual test cases within suites
- Authentication — JWT-based auth with email verification
- Multi-tenant — Workspace-based isolation and access control
| Package | Description |
|---|---|
| client | React web app — main application UI |
| server | NestJS API — REST API, PostgreSQL, TypeORM |
| landing | Next.js marketing/landing site |
- Client: React 18, TypeScript, Redux Toolkit, TanStack Query, React Router, Ant Design, Tailwind CSS
- Server: NestJS 8, TypeScript, TypeORM, PostgreSQL, Passport JWT, Nodemailer
- Landing: Next.js, React, SASS, Framer Motion
- Node.js (v16+)
- PostgreSQL (for the API)
- npm or yarn
git clone https://github.com/your-org/testfuel.git
cd testfuelcd server
cp .env.example .env
# Edit .env: set SECRET_KEY, DB_STRING (or DB_HOST, DB_PORT, DB_USERNAME, DB_PASSWORD, DB_NAME), CLIENT_URL, SMTP if needed
npm install
npm run start:devAPI runs at http://localhost:3000 (or the port in your config).
cd client
npm install
# Create .env with REACT_APP_API_URL pointing to your server (e.g. http://localhost:3000)
npm run devApp runs at http://localhost:3000 (or the port React assigns).
cd landing
npm install
npm run devLanding runs at http://localhost:3001 by default.
| Variable | Description |
|---|---|
SECRET_KEY |
JWT signing secret |
DB_STRING |
Full PostgreSQL connection string (alternative to below) |
DB_HOST |
PostgreSQL host (default: localhost) |
DB_PORT |
PostgreSQL port (default: 5432) |
DB_USERNAME |
DB user |
DB_PASSWORD |
DB password |
DB_NAME |
Database name (e.g. testfuel) |
CLIENT_URL |
Frontend origin for CORS (e.g. https://app.testfuel.io) |
SERVER_ENV |
Set when running server (e.g. true) |
SMTP_USER / SMTP_PASSWORD |
For email (e.g. verification emails) |
| Variable | Description |
|---|---|
REACT_APP_API_URL |
Base URL of the Testfuel API |
Contributions are welcome. Please open an issue or pull request on the repository.
See LICENSE in the repository.