Replacing Paper with Precision. A Zero-Trust Digital Ecosystem for Institutional Approvals.
For years, engineering students participating in symposiums, hackathons, and workshops had to navigate a labyrinth of physical "On-Duty" (OD) forms, chasing down signatures from multiple faculty members, often losing papers along the way.
The ESEC OD System completely digitizes this workflow. It is a modern, high-performance web application that brings transparency, speed, and cryptographic security to internal college approvals.
- 🎓 Frictionless Student Dashboard: Mobile-optimized, ultra-fast submission forms with automated data entry and document uploading loops.
- 👨🏫 Intelligent Role-Based Access (RBAC): Dedicated, secure views for Students, Faculty Coordinators, Department HODs, and Super Admins.
- 🚦 Live State Tracking: Watch requests move from
PendingtoApprovedin completely real-time. No more guessing. - 📊 Live Analytics & Auditing: Comprehensive dashboards tracking department participation, filtering by semester, year, and event type.
- 📠 One-Click Excel Export: Robust data-dumping services for institutional auditing and NAAC accreditation reports.
- 🛡️ Zero-Trust Verification: Fully approved ODs generate a mathematically secure, tamper-proof QR code to prevent forgery at the gates.
The application follows a strict finite state machine for approvals to prevent race conditions.
graph LR
A[Student] -->|Submits Request| B(Pending Coordinator)
B -->|Faculty Approves| C(Pending HOD)
C -->|HOD Approves| D{Status: Approved}
D -->|Generates| E[QR Signature]
B -.->|Rejects| F[Status: Void]
C -.->|Rejects| F
Client-Side:
- Core: React 18
- Language: TypeScript (Strict Mode)
- Styling: Tailwind CSS (Custom Blueprint Design System)
- Icons: Lucide React
- Data Export: XLSX
Backend & Infrastructure:
- Database: Supabase (PostgreSQL)
- Auth: Supabase Auth
- Storage: Supabase Buckets (For Proofs & Geotags)
To run this project locally, follow these steps:
git clone https://github.com/rahulcvwebsitehosting/Civilog.git
cd Civilognpm installCreate a .env file in the root directory and add your Supabase credentials.
VITE_SUPABASE_URL=your_supabase_project_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_keynpm run devThe system will now be running on http://localhost:5173.
This system enforces strict RLS (Row Level Security) policies on the backend database. A user's JWT token determines their clearance level, ensuring that a student can never spoof a faculty endpoint, and faculty only see data pertinent to their specific department scope.
Designed by Rahul Shyam (https://www.linkedin.com/in/rahulshyamcivil/)