PB
PB Art Academy
pbartacademy.com

PB Art Academy Management Platform

A bespoke management platform built to digitise every part of running an art academy — enrolment, attendance, performance, fees and staff — into one role-protected system.

PB Art Academy owner dashboard with KPI tiles
Owner dashboard — enrolments, attendance and fees at a glance
Industry
Art Education
Technology
React 19 · PHP REST API · MySQL
User Roles
4 — Owner, Admin, Manager, Instructor
Core Modules
11
Hosting
Hostinger · pbartacademy.com
Timezone
Asia/Kolkata (IST +05:30)
About the Client

A growing art academy, outgrowing spreadsheets.

PB Art Academy runs structured art education across multiple disciplines — sketching, watercolour, oil painting, acrylic painting, figure drawing and digital art — organised into levels and weekly batches, with a roster of instructors each responsible for their own students.

As the academy scaled to nearly 200 active students across multiple weekly batches and six instructors, the operational load — admissions, attendance, fee collection, instructor coordination and progress tracking — outgrew what paper registers and spreadsheets could reliably hold.

The brief was to replace every one of those manual workflows with a single, role-protected platform: one system every staff member logs into, sees only what their role permits, and where the owner can see the whole business — students, money and performance — in one place.

Business Challenges

Before: a business run on paper and memory.

Every one of these was a real operational gap the platform needed to close.

Paper attendance

Daily attendance recorded on paper per batch, with no easy way to see patterns or absentee trends across the academy.

Manual fee tracking

Fee collection, dues and discounts tracked by hand — reconciling who had paid, and who hadn't, was slow and error-prone.

No centralized records

Student details, guardian contacts and enrolment history scattered across registers and spreadsheets instead of one source of truth.

No performance tracking

No structured way to track each student's progress through the syllabus, art by art, level by level.

Staff coordination

No shared system for assigning students to instructors, or seeing who reviewed what, and when.

Manual communication

Birthday wishes and fee reminders sent one by one, with no templates and no record of what was sent.

No analytics

No visibility into growth, retention or attendance trends without manually tallying registers by hand.

No financial reporting

Income, expenses and cash position lived in disconnected notebooks with no single ledger view.

The Solution

After: one platform, eight modules, zero paper.

Every challenge above maps to a purpose-built module — each one scoped to exactly the role that needs it.

PB Art Academy owner dashboard with KPI tiles
The Owner's dashboard — the single screen every module below feeds into

Dashboard & Analytics

KPI tiles, trend charts and drill-down reports for the Owner and Manager roles, updated in real time.

Student Management

Full CRUD student records with batch and category assignment, photo capture and active/inactive status.

Finance

Fee collection, discounts, expense recording and a live ledger — replacing every manual cash register.

Attendance

Daily digital attendance per batch, with date-range reports and summary stats.

Performance

Art-by-art progress tracking, scoring, leaderboards and the syllabus reference, grouped in one tab set.

Employees

Staff records, attendance, salary calculation and staff-to-student assignment in one view.

WhatsApp

Template-driven birthday wishes and fee reminders, triggered directly from student and staff records.

Audit Log

A complete, queryable trail of every write operation — user, role, action, entity, IP and timestamp.

Dashboard & Analytics

Every number the Owner needs, on one screen.

KPI tiles up top, trend charts underneath, and drill-down access into the record behind every figure.

Owner dashboard with 10 KPI tiles covering enrolment, attendance and fees
Dashboard — 1,248 total enrolments since 2017, 186 active students, 172 present today
Income cash vs account chart, profit/loss month-on-month, and staff workload analytics
Income split, profit/loss MOM, activity trend and staff workload — 12 active staff
Financial analysis charts: fees vs expense trend, opening vs closing balance
Financial analysis — fees vs expense trend, opening vs closing balance movement
Attendance day trend and daily fees paid vs expense count charts
Attendance day trend, daily fees paid and level upgrade tracking
Student growth and retention charts: new joins vs total, active vs inactive
Student growth & retention — 117 new joins this year, active vs inactive trend

KPI tiles

Enrolments, active students, admissions, attendance and fee status surfaced the moment the Owner logs in.

Trend charts

Month-on-month fees, expenses and profit/loss, plus weekly activity trend lines for engagement.

Student growth

New joins vs total students, and active-vs-inactive movement, tracked month by month for 2026.

Financial trends

Cash vs account income split, opening/closing balance movement and fees-vs-expense daily view.

Attendance trends

Day-wise present/absent lines alongside fees-paid and expense-entry counts for the same period.

Drill-down reports

Every chart links back to the underlying student, staff or transaction record for verification.

Student Management

From walk-in to enrolled, in one form.

Registration, batch assignment, daily attendance and monthly reporting — all built around the same student record.

Students list with 186 active and 14 inactive students
Students — 186 active, 14 inactive, filterable by batch, category and status
Student registration form
Registration — guardian details, batch/category assignment and photo capture
Daily student attendance marking screen
Attendance — mark present/absent per batch, per day
Monthly student attendance report
Attendance report — 92 students, 23 working days, 1,482 present-days in August

Registration workflow

One structured form captures the student, both guardians, school, batch, category and expected joining date.

Photo capture

Camera-based photo upload attached directly to the student record during registration.

Batch & category management

Students are assigned to a weekly batch and a skill category/level, both filterable across every list and report.

Filtering

Joining-date range, category, batch, status and name filters on every student-facing table.

Attendance & reports

Daily marking plus a monthly report with per-day present/absent grids and summary tiles.

Financial Management

A single ledger the Owner actually trusts.

Fee collection, discounts and expenses all resolve into one live ledger — the exact figures below are pulled straight from the August 2026 ledger.

Total Fees Collected
₹6,45,800
in August 2026
Total Fees Yet to Collect
₹1,85,000
in August 2026
Total Expense
₹3,41,070
in August 2026
Total Amount in Hand
₹4,20,410
closing balance
Ledger summary with opening balance, income, expenses and closing balance
Ledger — opening ₹2,30,680 → income ₹5,30,800 → expenses ₹3,41,070 → closing ₹4,20,410
Income list for August 2026 with 8 paid entries
Income — ₹2,72,400 collected, ₹43,600 due across 8 filtered records
Add fee form for a student
Add Fee — student, fee type, payment method and fees month in one form
Add discount form
Add Discount — per-student discount amount with a remarks field
Expense list for August 2026
Expenses — ₹27,850 across 6 entries, categorised by type and payment method
Add expense form
Add Expense — date, amount, payment method, category and remarks

Fee collection

Cash, GPay and card payments logged against a student and a fees month, with automatic due calculation.

Discounts

Per-student discounts recorded with a remark, feeding directly into the same ledger as regular fees.

Ledger

One summary view of opening balance, income, expenses and closing balance — split by cash and account.

Expense tracking

Every expense categorised (rent, utilities, salaries, materials, maintenance, marketing) with payment method.

Cash flow

Cash vs account income tracked separately so the Owner always knows exactly what's in hand.

Reports

Date-range filtering across income and expenses, with running totals and per-transaction edit access.

Employee Management

Staff, attendance and payroll, together.

Six instructors, one system — attendance, salary calculation and assignments all live under Employees.

Employee list with 6 active instructors
Employees — 6 active instructors with qualification, Aadhaar and join date on record
Staff attendance marking with time in/out
Attendance — time in/out per instructor with a one-click Present/Absent toggle
Monthly staff attendance report
Attendance report — colour-coded on-time, late and missing punches by day
Salary calculator with gross salary and working-day adjustment
Salary Calc — gross salary with an optional working-days adjustment for leave

Staff management

Instructor records with qualification, ID, join/end date and active status — six instructors on record.

Attendance

Daily time-in/time-out per instructor, feeding directly into the monthly attendance report.

Payroll

A salary calculator that can pro-rate gross salary against actual working days after excluding leave.

Assignments

Instructors are linked to their students throughout the Performance module for accountability.

Reporting

Monthly attendance reports with on-time/late/missing colour coding for quick review.

WhatsApp Automation

Reminders that send themselves — almost.

Filter the right audience, pick a template, and the message arrives pre-composed in WhatsApp.

WhatsApp automation screen with filters and a fee reminder message template
WhatsApp — filtered contact + "Fee Reminder – Monthly" template, ready to send

Birthday wishes

A birthday bell in the sidebar detects today's birthdays on load and links straight into the WhatsApp flow.

Fee reminders

A pre-built "Fee Reminder – Monthly" template pulls in the student's name and amount due automatically.

Custom templates

Staff filter by category, batch, status or specific student, then pick a message template to send.

Direct communication

One click opens WhatsApp with the composed message pre-filled — no copy-pasting phone numbers.

Performance Tracking

Every art, every student, tracked to completion.

Tracker, Scoring, Leaderboard and Syllabus share one tab group — a single source of truth for student progress.

Student progress

A multi-select art picker records each art a student is working on, with a Not Started / In Progress / Completed status.

Art tracking

In-progress arts show inline as chips (e.g. "Portrait Sketching · Shading") against each student's row.

Scoring

Completed arts are marked with a score, which rolls up into an average per student and per instructor.

Leaderboards

Student and staff rankings with sortable columns, category/batch/staff filters and a custom date range.

Syllabus reference

The full art curriculum by category and level, used as the reference set for both tracker and scoring.

Progress visualisation

A dual-handle range slider on the In-Progress Tracker filters arts by min/max days outstanding.

Performance tracker table with syllabus progress per student
Tracker — 12 students in progress, syllabus completion shown per student (e.g. 4/10, 5/12)
Technology Stack

No framework magic — just a stack built to be maintained.

A React 19 SPA talking to a procedural PHP REST API over MySQL, deployed on Hostinger shared hosting.

Frontend

React

v19.1.1

Core UI library — functional components with hooks throughout, no class components.

React Router DOM

v7.8.2

Client-side routing with protected route wrappers per role.

Recharts

v3.2.1

Bar, line and composed charts across the Analytics module.

React Icons

v5.5.0

FA and MD icon sets used across all modules for nav, actions and badges.

React Select

v5.10.2

The multi-select art picker in the Tracker tab, with custom option rendering.

React Datepicker

v8.7.0

Used in finance flows for date and date-range inputs.

date-fns

v4.1.0

Date manipulation utilities for formatting and calculation across modules.

CalendarRangePicker

Custom · in-house

A day-grid popup calendar built from scratch — two-click range selection with week/month presets.

apiFetch

Custom · in-house

A thin fetch wrapper that injects X-Username and X-Role headers automatically.

Create React App

react-scripts 5.0.1

Build toolchain, outputting hashed static bundles deployed to /App/.

Backend

PHP

Hostinger shared

Procedural PHP — each endpoint file routes its own requests via switch($_GET['action']).

PDO / MySQL

utf8mb4 · IST

Persistent PDO connection with ERRMODE_EXCEPTION; timezone forced to +05:30 on connect.

PHP Sessions

+ user_logs table

Auth tracked in both the PHP session and the database via a 30-second heartbeat.

Audit Logging

audit_logs table

A logAudit() helper called after every write — user, role, action, entity, IP and timestamp.

Environment Config

.env.main file

DB credentials loaded via a custom loadEnv() parser, with no external libraries.

CORS

Permissive

Custom X-Username and X-Role headers whitelisted for role-aware, cross-origin API calls.

API Endpoints
auth.phpstudents.phpstaff.phpattendance.phpfees.phpexpenses.phptracker.phpscoring.phpsyllabus.phpreport.phpaudit.phpdashboard.phpstaff-student.phpdaily-report.phpdrill-snippet.phpreports.php
Key Features

The details that make it feel finished.

Straight from the build — every feature below shipped, not planned.

Role-Based Access

Four roles — Owner, Admin, Manager, Instructor — with route guards and server-side validation on every request.

Analytics

KPI tiles, trend charts and drill-down analytics, click-through from any summary chart to the source record.

Attendance

Daily marking with date-range reports and summary stats for both students and staff.

Finance

Fee collection, discounts, expenses and a live ledger with payment-date filtering.

WhatsApp

Birthday and fee-reminder templates triggered directly from student and staff records.

Leaderboard

Live client-side filtering by category, batch and staff, with sortable columns and a custom date range.

Performance

Art-by-art tracking with a dual-handle slider to filter the In-Progress Tracker by days outstanding.

Audit Logs

A complete trail of every insert, update and delete — who, what, when and from where.

Reports

Attendance and financial reports with date-range filters and running totals.

Calendar

A custom-built CalendarRangePicker — day-grid popup with range highlighting and week/month presets.

Tracker

A multi-select art picker recording per-student progress against the full syllabus.

Photo Capture

Camera-based student photo upload attached directly to the registration record.

Responsive Design

Every table degrades to a mobile-friendly card layout at the 640px breakpoint.

Results

What changed, day to day.

No fabricated before/after percentages here — just the operational shifts the platform actually made.

Digital attendance

Paper registers replaced with one-tap daily attendance and instant date-range reports.

Automated finance

Fee collection, discounts and expenses now flow into a single live ledger instead of separate notebooks.

Centralized records

Every student, guardian, batch and enrolment history lives in one searchable system of record.

Better visibility

The Owner sees enrolment, attendance, fees and staff performance on one dashboard, in real time.

Reduced paperwork

Registration, attendance and fee receipts are now digital, end to end.

Better decision-making

Drill-down analytics turn raw activity into trends the Owner can act on, not just numbers to file away.

Faster registration

A single structured form — with photo capture — replaces multi-step paper admission.

Accountability

Role-based access and a full audit trail mean every change is attributable and traceable.

Gallery

A closer look.

A highlight reel across the platform — each screen appears in full context earlier in this case study.

Owner dashboard
Owner Dashboard
Analytics charts
Analytics
Performance tracker
Performance Tracker
Student registration form
Student Registration
Ledger summary
Ledger Summary
WhatsApp automation
WhatsApp Automation

From paper registers to a real-time system of record.

PB Art Academy now runs on a single platform instead of five disconnected habits — attendance is digital, fees reconcile themselves into a live ledger, and every instructor sees exactly the students and syllabus items assigned to them.

Because the platform was built module by module against the academy's real workflow — not adapted from a generic template — it fits the way the academy actually operates today, and has room to grow: new batches, categories and staff slot into the same structure without re-architecture.

For the Owner, the biggest shift isn't any single feature — it's that the whole business (students, money and performance) is now visible from one dashboard, in real time, instead of reconstructed by hand at the end of every month.