back to work
2025-2026 · saas · multi-tenant

GuruLink.

stack
  • next.js
  • typescript
  • express
  • prisma
  • postgresql
  • vercel
status
live
dilan/gurulink
live
activity pulse
next.jstypescriptexpress
overview

Full-stack multi-tenant SaaS platform for tuition institutes and tutors. It connects public marketplace discovery with tenant dashboards for students, classes, QR/code attendance, fee collection, monthly ledgers, inquiries, community posts, subscriptions, and super-admin billing controls.

approach

Next.js 16, React 19, TypeScript, and Tailwind CSS on the front; Express.js, Prisma ORM, PostgreSQL, JWT, tenant middleware, role middleware, subscription middleware, Zod validation, and Vercel Blob uploads on the back. A pnpm monorepo keeps frontend, server, shared packages, and infrastructure assets together.

case study

Problem

Tuition institutes often split student records, attendance, payments, public marketing, inquiries, and parent communication across spreadsheets, chat groups, receipt books, and disconnected tools. That makes fee reconciliation slow and creates operational gaps between admissions, tutors, and finance teams.

Solution

GuruLink connects the public discovery journey to the internal operating system of a tuition business. Parents and students can discover classes and submit inquiries, while tenant teams manage classes, enrollments, QR/code attendance, monthly fee ledgers, outstanding balances, subscriptions, and community announcements from one dashboard.

technical architecture
01

Frontend

  • Next.js App Router public pages for discovery, class listings, pricing, contact, profile publishing, terms, and privacy.
  • Dashboard modules for students, classes, attendance, fees, inquiries, reports, community, onboarding, subscriptions, and super admin.
02

Backend

  • Express.js API with TypeScript, Prisma ORM, PostgreSQL, JWT authentication, tenant-aware middleware, RBAC middleware, subscription guards, and Zod validation.
  • Vercel Blob upload handling for profile images, class media, community media, student images, and payment receipts.
03

Data Model

  • Tenant, TenantMember, Class, Student, Enrollment, ClassSession, Payment, PackagePlan, TenantSubscription, PackageRequest, CommunityPost, and SuperAdminAuditLog models support the core SaaS workflows.
request flows top → bottom
key contributions
  1. 01Implemented tenant-aware authentication and authorization across owner, admin, tutor, admissions, finance, student, and super-admin workflows.
  2. 02Built the class and student lifecycle, including tutor assignment, enrollment, profile management, archive/remove flows, and student portal access.
  3. 03Developed attendance workflows with scheduled sessions, supplementary sessions, QR/code self-marking, live attendee tracking, cancellation/restore, monthly boards, and bulk updates.
  4. 04Created finance workflows for monthly fee ledgers, payment recording, payment methods, outstanding balances, revenue summaries, and student-level histories.
  5. 05Built marketplace publishing, advanced filters, public inquiry forms, inquiry routing, subscription quotas, receipt uploads, super-admin approvals, onboarding progress, and community engagement.
security and reliability
  • Tenant context is required before protected tenant operations run.
  • Role middleware protects finance, attendance, student management, class ownership, and tenant user management workflows.
  • Subscription write guards and quota checks prevent expired, suspended, or over-limit tenants from writing protected data.
  • Super-admin audit logs capture sensitive platform-level changes.
interview talking points
  • How tenant-aware RBAC is structured across seven role surfaces.
  • How monthly ledgers connect enrollment, expected revenue, collected payments, and outstanding balances.
  • How public marketplace publishing feeds internal inquiry handling.
  • How subscription, quota, and audit layers protect the SaaS business model.