This is a Next.js application that automates test case generation for healthcare software using AI.
MediTestAI is an AI-powered system that automatically converts healthcare software requirements into compliant, traceable test cases integrated with enterprise toolchains. The system supports full authentication, cloud storage, and enterprise-grade security.
We've recently made significant improvements to make this a complete production-ready system:
- Login/Signup Pages - Full Firebase Authentication with email/password
- User Management - Real user profiles with name, email, role
- Session Management - Persistent login across sessions
- Forgot Password - Password reset functionality
- Logout - Secure sign-out with redirect
- Firebase Authentication - Secure user management
- Firestore Database - All data stored in cloud database
- Real-time Sync - Data synced across devices
- User Isolation - Each user sees only their own data
- AI-powered test case generation from requirements
- Healthcare compliance checking (FDA, ISO 13485, GDPR, HIPAA, IEC 62304)
- No-code interface for test case management
- Test case modification with natural language
- Import/export capabilities
- Export to Jira with configurable issue types
- Export to Azure DevOps with configurable work item types
- Multiple format download (PDF, Excel, Word, JSON, Text, Markdown)
- Traceability Matrix - Link test cases to original requirements
- Versioning & Timestamps - Track changes over time
- Human-in-the-Loop - Feedback mechanism for continuous improvement
- Compliance Reports - Detailed healthcare standards analysis
-
Install dependencies:
npm install
-
Set up environment variables: Create a
.envfile with your Google AI API key and Firebase credentials:GOOGLE_API_KEY=your_google_ai_api_key_here NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_firebase_project_id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id NEXT_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id -
Start the development servers:
# Terminal : Start Next.js frontend npm run dev -
Access the application at
http://localhost:9002
This project can be deployed to Netlify. To enable full functionality, set the environment variables in your Netlify dashboard:
- Go to Site settings → Build & deploy → Environment
- Add all the required environment variables:
GOOGLE_API_KEY=your_google_ai_api_key_here NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_firebase_project_id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id NEXT_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id
- Visitor opens app → Redirected to
/signup - New user signs up → Creates account in Firebase Auth + Firestore
- User logs in → Authenticates with Firebase, loads data from Firestore
- User generates test cases → AI processes requirements, saves to Firestore
- User exports data → Exports to Jira, Azure DevOps, or downloads files
- User logs out → Signs out of Firebase, redirected to login
- Secure user registration and login
- Password reset functionality
- User profile management
- Role-based access control
- Session persistence
- Generate comprehensive test cases from software requirements
- Support for various input formats (PDF, Word, XML, text)
- Natural language test case modification
- Healthcare compliance verification
- Source code context analysis
- Create, read, update, delete test cases
- Version control with timestamps
- Priority management (High, Medium, Low)
- Requirements traceability
- Test case feedback system
- Jira Integration: Export test cases with configurable issue types
- Azure DevOps Integration: Export to work items with custom types
- Multiple Format Downloads: PDF, Excel, Word, JSON, Text, Markdown
- Traceability Matrix: Map test cases to requirements
- Compliance Reports: Detailed healthcare standards analysis
- Dashboard: Overview of test case metrics and progress
- Activity Tracking: Recent actions and modifications
- Human-in-the-Loop: Feedback mechanism for AI improvement
- API Routes: RESTful endpoints for external integrations
- Cloud Storage: Firebase Firestore for data persistence
- Responsive Design: Works on desktop and mobile devices
To export test cases to Jira:
- Enter your Jira Base URL (e.g.,
https://yourcompany.atlassian.net) - Provide your email and API token
- Specify the project key
- Set the issue type (e.g., Task, Story, or for Service Desk projects, the specific request type)
For Service Desk projects, you may need to specify the exact request type name as it appears in your Jira instance.
To export test cases to Azure DevOps:
- Enter your organization name
- Provide your project name
- Use a Personal Access Token (PAT) with proper permissions
- Specify the work item type (e.g., Task, User Story, Bug)
The download feature supports multiple formats:
- PDF: For document sharing and printing
- Excel: For spreadsheet-based management
- Word: For document editing
- JSON: For data interchange
- Text/Markdown: For plain text formats
- Next.js 15 with App Router
- React Server Components for performance
- Tailwind CSS for styling
- Shadcn UI components
- Context API for state management
- Firebase Authentication for user management
- Firestore Database for data storage
- LangChain + Google Gemini for AI processing
- RESTful API Routes for server-side logic
- User Authentication → Firebase Auth
- Data Storage → Firestore Database
- AI Processing → Google Gemini via LangChain
- Export Operations → External APIs (Jira, Azure DevOps)
- File Generation → Client-side libraries (jsPDF, XLSX, etc.)
For detailed information about the project, see:
- PROJECT_DOCUMENTATION.md - Comprehensive project documentation
- docs/blueprint.md - Original project blueprint
To get started, take a look at src/app/page.tsx.
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.