
Digital exam & education management platform for institutions.
TavAkademi is a comprehensive digital exam and education management platform designed for educational institutions. It provides role-tailored interfaces for Admin, Instructor, and Student users, consolidating education set management, multiple exam types, a visual gallery, automatic certificate generation, and detailed reporting under a single platform. Three exam types are supported: Theoretical (multiple-choice text questions), Visual (annotatable image questions), and Combined, with additional support for custom-format practice exams. Exam security is enforced through fullscreen mode and illegal move detection. The question pool system maintains separate Teo and Img pools with bulk upload support. X-Ray image tools include a polygon editor, Black & White / Negative / Transparency / HI / O2 / OS / SEN filters, an Image Merger & Blender, and draggable overlay support. Template-based automatic certificate generation outputs DOCX and PDF files with QR code integration for verification. Two-factor authentication via Speakeasy TOTP and GeoIP-based session location validation are included. Bulk user registration via Excel import and Excel-based reporting are supported. Recharts powers chart-based performance visualization, Redis handles session caching, Puppeteer enables browser automation, and Docxtemplater manages template processing. Built with React (Vite), Node.js (Express), MySQL, and Sequelize ORM.
<div class="project-info">
<p>
This project was developed using the best tools modern web technologies offer. Each technology was carefully selected to maximize performance, security, and user experience. During development, the focus was on component-based architecture, reusable code, and optimized rendering performance.
</p>
<p>
The user interface was designed to provide a clean yet impactful visual experience. The design system is built on principles of consistency, readability, and accessibility. Modern CSS frameworks and utility tools were used to provide a strong styling foundation.
</p>
<p>
On the frontend, powerful technologies like React and Next.js provided great advantages in terms of fast load times and SEO optimization. Additionally, Tailwind CSS accelerated the design process and made development more flexible.
</p>
<p>
As a result, this technology stack forms a modern and sustainable infrastructure that supports not only today’s needs but also future scalability goals.
</p>
<p>
The project also delivers a seamless experience across all devices thanks to responsive design and a mobile-first approach. Every aspect of the design was optimized for usability and accessibility, ensuring smooth user interactions.
</p>
<p>
Performance optimizations were implemented to minimize page load times, including efficient media and image handling. This approach improves user experience while providing a solid foundation for SEO and overall site performance._
</p>
</div>React
Frontend
Redux Toolkit
Frontend
Vite
Frontend
Bootstrap
Frontend
Express
Backend
Node.js
Backend
MySQL
Database
Sequelize
Database
Docker
DevOps
Vercel
DevOps
Railway
DevOps
TAV Private Security Services needed an internal certification platform for airport security personnel meeting strict access-control and tamper-resistant exam requirements, replacing manual, paper-based training administration.
I built JWT-based RBAC with Google Authenticator TOTP/2FA and GeoIP session validation across Admin/Trainer/Personnel roles, a configurable question-pool engine (Theoretical/Visual/Mixed), a custom polygon-editor with X-Ray image tooling for baggage-inspection simulation, exam-integrity controls (fullscreen enforcement, tab-switch detection), and automated certificate generation (DOCX + PDF-lib + QR) with Puppeteer automation and Excel bulk import.
Compliance requirements (2FA, session geo-validation) are much easier to retrofit correctly when designed into the auth layer from the start rather than bolted on after the core RBAC system is built.
If you'd like to discuss the architecture decisions, the tech stack, or a similar technical problem, I'm happy to talk.
Get in Touch