Inspiration
In many rural communities, access to essential government services, healthcare information, agricultural support, and emergency assistance can become difficult when internet connectivity is weak or unavailable. We wanted to build a solution that does not assume that every village has reliable internet access.
This inspired us to create GramSetu — “The Village Bridge”, an offline-first digital platform designed to connect rural communities with essential services and information, even when connectivity is limited.
💡 What We Built
GramSetu is a multilingual, offline-first Progressive Web App (PWA) that brings multiple rural services together in one platform.
The platform includes:
🏛️ Government Services — information about schemes such as PM-KISAN, Ayushman Bharat, MGNREGA, Jal Jeevan Mission, and NSAP Pension. 🌾 Farmer Support — useful agricultural information and resources. 🏥 Healthcare Support — healthcare information, facility categories, helplines, and emergency guidance. 📄 Document Services — document upload, privacy protection, and duplicate detection. 🚨 SOS Support — emergency requests that can be stored offline and synchronized when connectivity returns. 🤖 Offline Assistant — a rule-based multilingual assistant that can provide basic guidance without requiring an online AI service. 🌐 Multilingual Interface — designed to make information easier to access for users from different language backgrounds. 📡 Offline Functionality — important actions can continue offline and synchronize later. 🛠️ How We Built It
The project uses a web-based architecture with an offline-first approach.
Frontend
We developed the user interface as a Progressive Web App (PWA) using HTML, CSS, and JavaScript.
We used:
Service Worker for offline caching IndexedDB for local data storage Offline request queues for storing actions while disconnected Synchronization logic to send pending requests when connectivity returns
To avoid duplicate submissions during synchronization, we implemented idempotent request handling.
Backend
The backend was built using:
Python FastAPI SQLite
The backend manages authentication, services, documents, SOS requests, synchronization, and role-based access for citizens, officers, and administrators.
Mobile Access
To make GramSetu accessible as an Android application, we created a separate Flutter WebView wrapper around the existing web application. This allows the same GramSetu platform to be packaged as an Android APK without rebuilding the entire application from scratch.
🧩 Challenges We Faced
One of our biggest challenges was designing for environments where internet connectivity cannot be guaranteed.
Instead of assuming that every action could immediately reach the server, we designed the application around an offline-first workflow:
Store locally → Continue working → Synchronize when connectivity returns
We also had to handle synchronization carefully so that requests were not accidentally duplicated or mixed between users.
Another challenge was making multiple services—government information, healthcare, agriculture, documents, and emergency support—available through a simple interface suitable for rural users.
📚 What We Learned
Through this project, we learned that building an impactful application is not only about adding more features. It is also about designing around the real constraints faced by users.
We gained practical experience with:
Progressive Web Apps Service Workers IndexedDB Offline-first architecture Data synchronization FastAPI backend development SQLite database management Authentication and authorization Multilingual interfaces Flutter and Android WebView integration Designing technology for low-connectivity environments
Most importantly, we learned how to think about reliability, accessibility, and usability together.
🌱 Our Vision
GramSetu is built around a simple idea:
Connectivity should not determine whether a person can access essential services.
We want GramSetu to become a digital bridge between rural communities and the services, information, and support they need.
GramSetu — Bridging rural communities to government services, healthcare, information, and opportunity — even when the internet can't.
Because when technology builds a bridge, no village should be left on the other side.
Built With
- artificial-intelligence
- authentication
- css
- data-synchronization
- fastapi
- html
- indexeddb
- javascript
- multilingual
- natural-language-processing
- offline-first
- progressive-web-app-(pwa)
- python
- responsive-design
- rest-api
- service-workers
- sqlite
- text-to-speech
- voice-recognition
Log in or sign up for Devpost to join the conversation.