Where the project came from
The repair panel is an internal tool for phone repair technicians — a central place to manage repair jobs, track cash flows, and generate official documents. Each repair gets a unique code (format REP-XXXXX/M/YY) and a 6-character access key used in a public API that lets customers check their repair status through a WordPress website without logging in.
What was hard
A repair shop needs an efficient system to track dozens of repairs simultaneously — with status history, customer and device data, parts costs, and the ability to generate acceptance and warranty cards required by law. Additionally, customers want to check their repair status themselves through the website.
How I solved it
I built a full-stack Next.js 15 application with App Router — API routes handle repair CRUD, session management, and password reset. Prisma 6 with MySQL as the database. React PDF Renderer generates acceptance and warranty cards server-side. A public API with API key authentication (X-API-Key) and a 6-character repair key enables WordPress integration — customer data is masked (e.g., 'Ko***k', '12*****89'). TanStack Table handles the advanced repairs table with filtering, pagination, and sorting.
Result
A working admin panel with repair management (statuses, customer and device data, costs), cash accounting (income and expenses broken down by period), PDF generation (acceptance and warranty cards), and a public status-check API integrating with the WordPress website.