CertLab is a modern, cloud-based certification study platform. Study for certifications like CISSP, CISM, and more with adaptive quizzes, achievements, and progress tracking.
- Firebase Authentication - Secure Google Sign-In
- Cloud Storage - Multi-device sync with Firestore
- Adaptive Learning - Quiz difficulty adapts to your performance
- Achievement System - Earn badges and track progress
- Practice Tests - Full-length certification exams
- Theme Options - Seven themes including dark mode
- Accessibility - WCAG 2.2 Level AA compliance (Learn more)
π View Complete Feature List | πΊοΈ View Roadmap | π Full Documentation
# Clone the repository
git clone https://github.com/archubbuck/certlab.git
cd certlab
# Install dependencies
npm install
# Configure Firebase (required)
cp .env.example .env.local
# Edit .env.local with your Firebase credentials
# Start development server
npm run devOpen http://localhost:5000 and sign in with Google to get started!
Prerequisites: Firebase project (required), Dynatrace account (recommended for monitoring)
π Detailed Setup Instructions: docs/setup/firebase.md | docs/setup/dynatrace.md
- Node.js: v20.x or higher
- npm: v10.x or higher
- Firebase Project: Required for authentication and storage
- Dynatrace Account: Recommended for monitoring (optional)
| Command | Description |
|---|---|
npm run dev |
Start development server at http://localhost:5000 |
npm run build |
Build production bundle to ./dist |
npm run check |
Run TypeScript type checking |
npm test |
Run test suite |
npm run deploy:firebase |
Build and deploy to Firebase Hosting |
π Detailed Information:
- Firebase Setup: docs/setup/firebase.md
- Dynatrace Setup: docs/setup/dynatrace.md
- Deployment Guide: docs/setup/deployment.md
- Project Structure: docs/PROJECT_STRUCTURE.md
- Sign In: Use Google Sign-In for authentication
- Select Certification: Choose CISSP, CISM, or other certifications
- Create Quiz: Select categories, difficulty level, and question count
- Study & Practice: Use Study, Quiz, or Adaptive modes
- Track Progress: View achievements, streaks, and mastery levels
- Quiz Modes: Study (immediate feedback), Quiz (final score), Adaptive (adjusts to performance)
- Achievements: Earn badges for milestones and consistent practice
- Study Groups: Join groups focused on specific certifications
- Practice Tests: Full-length certification practice exams
- Data Management: Export/import your data for backup
π Complete User Guide: docs/user-manual.md
π Data Import Guide: docs/DATA_IMPORT_GUIDE.md
Comprehensive documentation is available in the docs/ directory:
- Documentation Index - Complete documentation overview
- User Manual - End-user guide and features
- Architecture Overview - System design and technical details
- Contributing Guide - How to contribute to the project
- Firebase Setup - Configure authentication and cloud storage
- Dynatrace Setup - Configure observability and monitoring
- Deployment Guide - Deploy to Firebase Hosting or other platforms
- Features - Complete list of all implemented features
- Roadmap - Planned features and future direction
- Changelog - Version history and release notes
- Security Policy - Security and vulnerability reporting
We welcome contributions! Please see our Contributing Guide for:
- Development environment setup
- Code style guidelines
- How to submit pull requests
- Reporting issues
# Fork and clone the repository
git clone https://github.com/YOUR-USERNAME/certlab.git
cd certlab
# Create a feature branch
git checkout -b feature/your-feature-name
# Make your changes, then verify
npm run check # Type check
npm run build # Build verification
npm test # Run tests
# Submit a pull requestMIT License - see LICENSE file for details.
Need Help?
- π Documentation
- π Report Issues
- π¬ Discussions
Built for certification students worldwide who want a free, private, and powerful study tool.