Inspiration
In many local schools, teachers still rely on heavy physical registers to track daily student attendance, which can be tedious to manage, prone to damage, and difficult to compile into monthly or yearly reports. Furthermore, rural and semi-urban classrooms in Nepal frequently face unstable internet connectivity. We wanted to build a lightweight, ultra-fast tool designed specifically for teachers that works completely offline, supports both Bikram Sambat (BS) and AD calendars, and removes all friction from the daily attendance routine.
What it does
Hajiri Sahayog is a 100% offline-first Progressive Web App (PWA) built for teachers to manage classroom attendance effortlessly.
- Class Management: Easily organize and manage multiple classes and student rosters.
- Flexible Input: Add students manually, through voice input (via Web Speech API), or via bulk CSV imports.
- Quick Attendance Marking: Swiftly mark students as Present, Absent, or on Leave.
- Dual Calendars: Full support for both Bikram Sambat (BS) and Gregorian (AD) calendar formats.
- Holiday Configuration: Set up one-time or recurring weekly holidays (such as Saturdays or custom weekends).
- Insights & History: View per-student attendance histories and individual statistics at a glance.
- Privacy First: Operates completely offline with local storage (IndexedDB), requiring no user accounts, external servers, or internet connection.
How we built it
Hajiri Sahayog was engineered as a modern, high-performance web application utilizing a robust front-end stack:
- Core & UI: Built with React 18 and TypeScript, styled efficiently using Tailwind CSS v3 for a clean, responsive layout.
- State Management: Handled via Zustand for predictable and lightweight state flow.
- Local Storage & Database: Uses Dexie.js as a wrapper over IndexedDB to securely persist all student records and attendance logs locally on the device.
- Date Conversion: Integrated
nepali-date-converterto seamlessly switch and handle BS and AD dates. - PWA & Voice: Configured with
vite-plugin-pwaand Workbox for reliable offline caching and installation, alongside the browser's Web Speech API for hands-free student name entry.
Challenges we ran into
- Offline Data Integrity: Ensuring that data remains perfectly synchronized and secure entirely in the browser without relying on a cloud backend required meticulous handling of IndexedDB transactions via Dexie.js.
- Dual Calendar Complexity: Managing overlapping date formats between Bikram Sambat (which has irregular month lengths depending on the year) and the Gregorian calendar required precise logic mapping to avoid attendance log offsets.
- Voice Recognition Accuracy: Fine-tuning voice input for classroom environments where accents or background noise might interfere with the Web Speech API required fallback manual entry options.
Accomplishments that we're proud of
- Successfully creating a truly zero-friction tool that installs instantly on mobile devices and laptops as a PWA and functions seamlessly deep inside classrooms with zero internet access.
- Implementing dual BS and AD calendar support natively, making it practically useful for the daily realities of schools in Nepal.
- Achieving a secure, privacy-first architecture where teachers keep 100% ownership of their data locally on their devices with full export/import backup capabilities.
What we learned
- The immense power of modern Progressive Web Technologies (PWAs) in bridging digital divides for local communities where reliable internet access cannot be assumed.
- How proper local database design (IndexedDB + Dexie.js) can match the speed and reliability of traditional server-backed applications while guaranteeing absolute user privacy.
What's next for Hajiri Sahayog
- Advanced Analytics & Reports: Expanding monthly and yearly summary generation to export neatly formatted PDF or CSV school reports.
- Multi-Language Support: Adding full native Nepali language toggles alongside English for maximum accessibility among local educators.
- Cloud Sync Option (Optional): Implementing an end-to-end encrypted, opt-in cloud sync feature for teachers who want automated backups across multiple devices without sacrificing privacy.
Built With
- api
- css
- css3
- dexie.js
- html5
- indexeddb
- javascript
- pwa
- react
- speech
- tailwind
- typescript
- vite
- web
- zustand
Log in or sign up for Devpost to join the conversation.