Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Lightweight, powerful test management platform that runs on minimal hardware. Perfect for teams who want control without complexity.

License

Notifications You must be signed in to change notification settings

houseoffoss/eztest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

82 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EZTest - Self-Hostable Test Management Platform

License: AGPL-3.0 Next.js React TypeScript

Overview

EZTest is a lightweight, open-source test management platform built with Next.js and designed for self-hosting. It provides an efficient alternative to commercial tools like Testiny and TestRail, optimized to run on minimal hardware (1 CPU core, 2GB RAM). EZTest combines a modern UI with powerful test management capabilities, featuring project management, test organization, execution tracking, and team collaborationβ€”all deployable with Docker.

πŸ‘₯ New User? Check out the User Guide - a simple, non-technical guide explaining what EZTest is and how to use it.

Current Status: Active Development (v0.1.0)
Demo Site: eztest.houseoffoss.com

License: AGPL-3.0
Maintainers: Philip Moses ([email protected]), Kavin ([email protected])

πŸ›‘οΈ The Philosophy: Breaking the "SaaS Tax"

Software used to be a tool you owned; today, it’s a subscription you rent.

Test management tools today are just glorified, overpriced spreadsheets. They charge $20 to $40 per user, per month for basic CRUD operations. A price that is no longer defensible in the age of AI Coding Agents.

EZTest was born out of that simple realization: If an AI agent costs $20/month and can build a software in no time, why pay $20/per/month just to rent one?

The goal isn't to reinvent the wheel. It's to break the cycle of mediocre, overpriced software.

We use Claude Code and Cursor to compress the cost of development to near-zero, and we are passing that "Efficiency Dividend" to the community.

πŸ“Έ Screenshots

Public Homepage

Home Page

Main Application

Projects Dashboard Test Cases
Projects Test Cases
Test Runs Defect Tracking
Test Runs Defects

🎯 Core Features Status

Feature Status Details
Authentication & Authorization βœ… Complete Email/password auth, RBAC, permissions
User Management βœ… Complete CRUD, team management, member roles
Modules βœ… Complete Project organization, feature grouping
Test Suites βœ… Complete Hierarchical organization For Execution
Test Cases βœ… Complete Full CRUD, steps, priorities, statuses
Test Runs βœ… Complete Execution tracking, results, progress monitoring
Test Results βœ… Complete Multiple statuses, comments, duration tracking
File Attachments βœ… Complete Direct S3 upload, up to 500MB, presigned URLs
Comments & Collaboration βœ… Complete Discussions on Defect
Dashboard & Analytics 🚧 In Progress Basic metrics available
Requirements Traceability πŸ“‹ Planned Link tests to requirements
API Integrations πŸ“‹ Planned Jira, GitHub, Azure DevOps
Automation Integration πŸ“‹ Planned CI/CD, test frameworks

⚠️ Security Notice for Open Source Project

IMPORTANT: This project requires AWS S3 credentials for file attachments.

πŸ”’ Never commit real AWS credentials to the repository!

  • βœ… .env.local is in .gitignore and won't be committed
  • βœ… Use .env.example as a template (contains placeholders only)
  • βœ… For deployment, use environment variables or AWS IAM roles
  • βœ… Create a dedicated IAM user with S3-only permissions (see Attachments Documentation)
  • βœ… Rotate credentials immediately if accidentally exposed

πŸš€ Quick Start

Try EZTest with Docker - fastest way to get started!

Requirements: Docker & Docker Compose

# Clone the repository
git clone https://github.com/houseoffoss/eztest.git
cd eztest

# Configure environment
cp .env.example .env
# Edit .env with your settings

# Start the application
docker-compose up -d

# Initialize database
docker-compose exec app npx prisma db push
docker-compose exec app npx prisma db seed

# Open http://localhost:3000

Default Admin Credentials :

πŸ’‘ You can also register a new account, or customize admin credentials by setting ADMIN_EMAIL and ADMIN_PASSWORD environment variables before seeding.

πŸ“– For production deployment and advanced configuration, see DOCKER.md


πŸ’» Technology Stack

Layer Technology Version
Framework Next.js 15.5.6
UI Library React 19.1.0
Language TypeScript 5.x
Styling Tailwind CSS 4.x
UI Components Radix UI Latest
Database PostgreSQL 16
ORM Prisma 5.22.0
Authentication NextAuth.js 4.24.11
Password Hashing bcryptjs 3.0.2
Email Nodemailer 6.10.1
Validation Zod 4.1.12
Icons Lucide React 0.546.0
Deployment Docker & Docker Compose Latest

πŸ“Š System Requirements

Specification Minimum Recommended Production
CPU Cores 1 2 4+
RAM 2GB 4GB 8GB+
Storage 10GB 20GB 50GB+
Database PostgreSQL 14+ PostgreSQL 16 PostgreSQL 16+
Node.js 18.x 20.x 20.x LTS

πŸ› οΈ Development

Contributing to EZTest? Set up your local development environment.

Requirements: Node.js 18+, PostgreSQL 16

Setup

# Clone and install dependencies
git clone https://github.com/houseoffoss/eztest.git
cd eztest
npm install

# Configure environment
cp .env.example .env
# Update DATABASE_URL and other variables

# Start PostgreSQL (or use your own server)
docker-compose up -d postgres

# Set up database
npx prisma generate
npx prisma db push
npx prisma db seed

# Start dev server
npm run dev
# Open http://localhost:3000

Common Commands

npm run dev              # Start dev server with Turbopack
npm run build            # Build for production
npm run lint             # Check code quality
npx prisma studio        # Visual database editor
npx prisma generate      # Generate Prisma Client
npx prisma db push       # Update database schema
npx prisma db seed       # Add sample data

Workflow

  1. Make code/schema changes
  2. If schema changed: npx prisma generate && npx prisma db push
  3. Test at http://localhost:3000
  4. Run npm run lint
  5. Commit changes

πŸ“– Full developer guide: Development Setup | Code Patterns


πŸ“š Documentation

For Users:

For Developers:

Planning:

  • ROADMAP - Feature tracking and future plans

🀝 Contributing

We welcome contributions! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes following our code patterns
  4. Test thoroughly (ensure npm run lint passes)
  5. Commit your changes (git commit -m 'Add amazing feature')
  6. Push to the branch (git push origin feature/amazing-feature)
  7. Open a Pull Request

Development Guidelines

  • Follow TypeScript best practices
  • Use existing component patterns
  • Write meaningful commit messages
  • Update documentation for new features
  • Ensure all linting passes before submitting PR

πŸ“„ License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).

If you modify this software and run it as a network service, you must provide the complete corresponding source code to users of the service, as required by the AGPL.

See the LICENSE file for full details.

Copyright Β© 2025 Belsterns


πŸ“ž Support & Contact

Demo: eztest.houseoffoss.com
Documentation: /docs
Issues: Use GitHub Issues tab above

Maintainers:

Maintainers

🌟 Acknowledgments

Built with modern, open-source technologies:


EZTest - Making test management accessible for everyone πŸš€

About

Lightweight, powerful test management platform that runs on minimal hardware. Perfect for teams who want control without complexity.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages