Main Dashboard - Complete Feature Guide

Last Updated: 2026-05-27 | Applies to: IK v1.2+ | Role: All Users

Dashboard Layout Overview

The InstitutionKit dashboard is your command center. It adapts based on your role and selected campus.

Dashboard Sections (Top to Bottom):

  1. Header Bar - Campus info, export button, fee reminders
  2. Welcome Box - Personalized greeting with today's date
  3. Campus Info Bar - Campus details (when single campus selected)
  4. Multi-Campus Cards - Overview cards per campus (Super Admin only)
  5. Stats Grid - Total Students, Teachers, Classes, Subjects
  6. Today's Attendance - Student + Teacher attendance with weekly trend chart
  7. Fee Summary - Outstanding, Collected, Overdue, Collection Rate
  8. Two-Column Widgets - Announcements, Events, Performance Charts
  9. Quick Actions - One-click access to common tasks

Role-Based Dashboard Views

Super Administrator sees:

  • All-campus or per-campus statistics
  • Multi-campus comparison cards
  • Campus switcher in header
  • Full financial overview
  • Export report button
  • Send fee reminders button

Campus Admin sees:

  • Single campus statistics only
  • Campus-specific financial data
  • No campus switcher
  • Limited to assigned campus widgets

Teacher sees:

  • Assigned class performance charts
  • Today's attendance tasks
  • Upcoming events
  • Announcements (filtered for teachers)

Accountant sees:

  • Fee collection statistics
  • Outstanding fees by class
  • Recent payments table
  • Collection rate metrics
  • Overdue invoice counts

Section 1: Campus Info Bar

When viewing a specific campus, you'll see:

🏛️ Campus: North Branch (NORTH)👔 Principal: Dr. Sarah Ahmed📞 Phone: +92-300-1234567📧 Email: [email protected]📍 Address: 123 Main Road, Islamabad

This bar is hidden when viewing "All Campuses" mode.

Section 2: Multi-Campus Cards (Super Admin Only)

When viewing all campuses, each campus gets a summary card:

┌─────────────────────────────────┐│  📍 North Branch          View →││  👥 Students: 450               ││  👨‍🏫 Teachers: 32                ││  💰 Outstanding: $12,500        ││  📊 Attendance: 94.5%           │└─────────────────────────────────┘

Click "View Dashboard →" to drill into a specific campus.

Section 3: Stats Grid

Four key metrics at a glance:

MetricWhat It CountsColor Code
Total StudentsActive enrolled students (published ik_student posts)Blue
Total TeachersActive staff with teacher rolesLight Blue
Total ClassesPublished ik_class postsGreen
Total SubjectsTerms in ik_subject taxonomyOrange

How numbers are calculated:

  • Students: Count of ik_student posts filtered by campus
  • Teachers: Count from institutionkit_staff table where role is teacher_permanent or teacher_visiting and status is active
  • Classes: Count of ik_class posts
  • Subjects: WordPress term count

Section 4: Today's Attendance Widget

Student Attendance Card:

┌─────────────────────────────────────┐│  Student Attendance                 ││  ✅ Present: 425  ❌ Absent: 18     ││  ⏰ Late: 7       🏖️ On Leave: 0   ││  [████████████████░░] 96% Rate      ││  Mark Attendance →                   │└─────────────────────────────────────┘

Clickable Stats: Click on Absent/Late/Leave numbers to open a detailed popup showing which students have that status.

Weekly Trend Chart: Line chart showing last 7 days of attendance percentage using Chart.js.

Teacher Attendance Card: Same format but pulling from institutionkit_staff_attendance table, filtered for staff with teacher roles.

Section 5: Fee Management Summary

Four financial metrics:

MetricSource TableCalculation
Total Outstandinginstitutionkit_invoicesSUM(total_amount - amount_paid) WHERE status != 'paid'
Total Collected (Month)institutionkit_transactionsSUM(amount) WHERE created_at >= first day of month
Overdue Invoicesinstitutionkit_invoicesCOUNT WHERE due_date < today AND status != 'paid'
Collection RateCalculated(Collected ÷ Total Monthly Fees) × 100

Section 6: Announcements Widget

Shows up to 10 active announcements filtered by:

  • Target Audience: Shows announcements for your role (all, teachers, parents, students)
  • Expiry: Hides expired announcements
  • Campus: Filters by current campus

Admins can:

  • Post new announcements via modal popup
  • Delete announcements (trash icon)
  • Set expiry dates
  • Choose target audience

Announcement Modal Fields:

Title: [___________________________]Content: [___________________________]Target: [Everyone ▾]Expires: [Pick Date (optional)][Post Announcement] [Cancel]

Section 7: Events Widget

Shows up to 10 upcoming events with:

  • Event type badge (Exam, Holiday, Meeting, School Event, Fee Due)
  • Location with 📍 icon
  • Date/time with 🕒 icon
  • End date (if multi-day)

Event Types:

TypeUse ForExample
examExam schedules"Mid-Term Exams"
holidaySchool closures"Eid Holidays"
meetingStaff/parent meetings"PTA Meeting"
eventGeneral events"Sports Day"
fee_duePayment deadlines"Last Date for Fee Submission"

Section 8: Performance Charts (Admin/Teacher)

Two bar charts using Chart.js:

Class Performance Chart:

  • X-axis: Class names
  • Y-axis: Average percentage (0-100%)
  • Data from: institutionkit_gradebook table
  • Top 5 classes by average

Subject Performance Chart:

  • X-axis: Subject names
  • Y-axis: Average percentage
  • Top 5 subjects by average

Section 9: Fee Dues Widget (Admin/Accountant)

Table showing outstanding fees grouped by class:

ClassTotal DueStudents
Grade 10$15,20045
Grade 9$8,40032
Grade 8$3,10028

Only shows classes with outstanding balances.

Section 10: Recent Payments (Admin/Accountant)

Last 10 transactions from institutionkit_transactions:

DateStudentAmountMethod
May 25, 2026John Doe$500Cash
May 24, 2026Jane Smith$650Bank Transfer

Section 11: Parent Portal Stats (Admin)

Shows parent engagement metrics:

  • Total registered parents
  • Parents linked to students
  • Linkage percentage with progress bar

Section 12: Notification Logs (Admin)

Last 10 notifications sent from the system:

  • Date/time sent
  • Type (fee_reminder, attendance_alert, etc.)
  • Channel (email, SMS)
  • Status (sent, failed)

Quick Actions Bar

One-click buttons for common tasks:

[➕ New Admission] [📊 Compare Campuses] [👤 Add Student][👨‍🏫 Add Teacher/Staff] [🏫 Add Class] [📋 Mark Attendance][🧾 Manage Invoices] [📢 Post Announcement] [📅 Add Event]

Export Report Feature

Click "Export Report" to download a JSON file containing:

  • All student records
  • All staff records
  • All invoices (filtered by campus)
  • Last 30 days attendance records

File format: institutionkit-export-2026-05-27.json

Send Fee Reminders

Click "Send Fee Reminders" to email all parents with overdue invoices. The system:

  1. Finds all unpaid invoices past due date
  2. Looks up parent email (from student meta or parent user account)
  3. Sends formatted reminder email
  4. Logs notification in institutionkit_notifications
  5. Reports count of sent reminders and students without emails

Dashboard Data Flow

┌─────────────────────────────────────────────────────────┐│                    DATA SOURCES                          │├──────────────┬──────────────┬──────────────┬────────────┤│  WordPress   │   IK Custom  │   WordPress  │  Calculated││  Posts/Terms │   Tables     │   Users      │  Metrics   │├──────────────┼──────────────┼──────────────┼────────────┤│ ik_student   │ staff table  │ parent role  │ Collection ││ ik_class     │ invoices     │ teacher role │ Rate       ││ ik_subject   │ attendance   │ admin role   │ Attendance ││              │ transactions │              │ Percentage ││              │ notifications│              │            │└──────────────┴──────────────┴──────────────┴────────────┘

Campus Filtering Logic

All dashboard queries respect the current campus context:

Single Campus (campus_id = 5):

sql

-- All queries add:WHERE campus_id = 5-- or for postmeta:AND pm.meta_key = '_ik_campus_id' AND pm.meta_value = 5

All Campuses (campus_id = 0):

sql

-- No campus filter applied-- Shows aggregated data from all campuses

Pro Tips

  1. Quick Campus Switch: Use the dropdown in the header to instantly switch between campuses without leaving the dashboard
  2. Attendance Drill-Down: Click on absent/late numbers to see exactly which students
  3. Bulk Fee Reminders: Send reminders to all overdue parents with one click
  4. Export for Meetings: Download the JSON export before staff meetings for data-driven discussions
  5. Performance Trends: Use the charts to identify struggling classes or subjects early

Comments are closed.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
💬 Ask Me Anything!