CertsLibrary Multi-tenant SaaS Platform by Sameer SabirCertsLibrary Multi-tenant SaaS Platform by Sameer Sabir

CertsLibrary Multi-tenant SaaS Platform

Sameer Sabir

Sameer Sabir

CertsLibrary Multi-tenant SaaS Platform · Next.js · TypeScript · OpenAI API
CertsLibrary is a live certification preparation platform serving students studying for IT and professional exams across vendors including Microsoft, Amazon, and Salesforce. Beyond static study materials, the platform includes a fully custom web-based exam engine - timed tests, security enforcement, real-time progress tracking, and post-exam analytics - all built to feel like a real exam environment.
The Challenge
The brief had two distinct layers. The first was a standard SaaS problem: multiple client organizations needed isolated data environments, custom branding, and separate user configurations - all running from one codebase. Get that architecture wrong early and you spend months untangling it.
The second layer was harder: a fully functional browser-based exam engine. Not just rendering questions - a timed, secured, proctored test environment with no tab switching, no developer tools, no right-click, and automatic submission on timeout. That behavior had to be reliable enough that users trust it with a real certification attempt.
Both systems had to work together, and both had to be tenant-aware.
Exam detail and pricing system
Exam detail and pricing system
Exam detail and pricing system
Each exam has a dedicated page showing question count, last updated date, customer count, and star rating - all live data. The pricing system runs three tiers per exam: PDF download, web-based test engine, and AI-powered test engine. Each tier has its own CTA, its own demo/trial path, and its own cart integration. That's a non-trivial component to build cleanly without hardcoding per-exam logic.
Exam configuration screen
Exam configuration screen
Exam configuration screen
Before any test starts, users configure their session - question types, pass percentage (adjustable via slider), time limits, and navigation mode (forward-only or free navigation). The security rules are surfaced clearly upfront: no browser navigation, no tab switching, no developer tools, no right-click, no text selection, no minimizing. Auto-submit fires when time expires. This screen sets expectations and handles all the session parameters that the exam engine consumes.
Live exam engine
Live exam engine
Live exam engine
The exam interface is a three-panel layout: a left sidebar for question navigation with live status indicators (answered, unanswered, current), a main panel for the active question and MCQ options, and a right sidebar showing the running timer, progress ratio, pass percentage target, navigation mode, and real-time answer status counts.
Security behavior runs at the JavaScript level - browser navigation disabled, tab-switch detection ends the exam, developer tools blocked, right-click disabled, text selection disabled. These constraints are active from the moment the exam starts and removed cleanly on completion or timeout.
Results and analytics dashboard
Results and analytics dashboard
Results and analytics dashboard
Post-exam, users land on a detailed results page showing their score against the pass threshold, a breakdown of correct/wrong/skipped/attempted counts, and three charts - score comparison against the pass requirement, questions overview, and time breakdown (total available vs. time taken vs. time remaining). Below the charts, a question-by-question review table shows each answer alongside the correct answer, result status, and a view button to revisit the explanation.
This screen has a lot of data to display without overwhelming the user. The layout keeps the headline score visible at a glance, progressively reveals more detail as you scroll, and uses color consistently (red for wrong, green for correct) to make the review scannable.

Underneath all of this is the multi-tenancy layer - middleware that identifies the active organization on each request and loads tenant-specific configuration before anything renders. Each tenant operates with isolated data, its own branding, its own feature flags, and its own user roles. A new tenant inherits the full platform - exam engine, pricing system, analytics, AI features - without touching the core codebase.
The component library was built to be configuration-driven. Every component accepts tenant-level props for color scheme, layout variants, and content shape. Build once, configure per tenant. That approach kept design 100% consistent across implementations and cut component development time by 50%.

Live platform serving real users across multiple certification vendors
3-tier revenue model implemented - PDF, Test Engine, AI Test Engine - with individual cart and checkout flows per tier
Full browser-based exam engine with timer, security enforcement, and auto-submission
Post-exam analytics with score comparison charts, question breakdown, and answer review
175+ paying customers and a 5.0/5.0 rating visible on the live platform
100% design consistency across tenant implementations from one shared component library
50% reduction in component development time through reusable, config-driven architecture
OpenAI API integration powering the AI Test Engine tier
Like this project

Posted May 18, 2026

175+ paying users. 5.0 rating. 50% faster component builds. 100% design consistency. Full exam engine with AI tier - shipped and live in production.

Likes

1

Views

0

Timeline

Aug 1, 2025 - Nov 30, 2025