Bridging the gap between citizens and government services.
Setu is a citizen-focused web application that simplifies government-service procedures by turning confusing processes into clear, actionable steps. Users can search for a government service, understand its application process, review required documents, and identify which documents they still need.
Our goal is simple: make public-service information easier to understand and easier to act on.
Government procedures can be difficult to navigate. People may struggle to understand which documents they need, what steps to follow, and what to do next.
Setu aims to make that journey simpler through an intuitive interface and structured, service-specific guidance.
Instead of leaving users to navigate complicated instructions on their own, Setu helps them understand the process one step at a time.
Search for a government service using everyday language and get relevant process guidance.
View the documents associated with a service so you can prepare before applying.
Select the documents you already have and identify which required documents are still missing.
View application steps and a suggested next action to help you understand how to proceed.
A clean, responsive interface designed to make government-service guidance easier to navigate.
A web frontend communicates with a Python Flask backend to retrieve process information and check document requirements.
- Search: Enter the government service you need.
- Understand: Setu retrieves the relevant service information.
- Prepare: Review the required documents and application steps.
- Check: Select the documents you already have.
- Take the next step: Review the missing documents and suggested next action.
| Technology | Purpose |
|---|---|
| HTML5 | Page structure |
| CSS3 | Styling and responsive interface |
| JavaScript | User interactions and API requests |
| Python | Backend application |
| Flask | HTTP API and application routes |
| Flask-CORS | Cross-origin requests between the frontend and backend |
The project also includes Python modules for service recognition, process retrieval, and document checking.
Setu/
├── app.py
├── index.html
├── result.html
├── script.js
├── style.css
├── ai/
│ ├── ai_engine.py
│ ├── process_loader.py
│ └── requirement_checker.py
├── data/
├── test.py
└── README.md
Note: The exact contents of the ai/ and data/ directories may vary as the project evolves.
Follow these instructions to run Setu locally.
- Python installed on your computer
- A modern web browser
- Git (optional, for cloning the repository)
git clone https://github.com/deepikachandra-stack/Setu.git
cd SetuAlternatively, download the repository ZIP from GitHub and extract it.
Windows:
python -m venv .venv
.venv\Scripts\activatemacOS / Linux:
python3 -m venv .venv
source .venv/bin/activatepython -m pip install Flask Flask-CORSIf the project later adds a requirements.txt file, you can install its listed dependencies with:
python -m pip install -r requirements.txtFrom the project root, run:
python app.pyThe Flask development server should be available at:
http://127.0.0.1:5000
Keep the terminal running while you use the application.
Open index.html in your web browser.
Enter a service in the search box or choose one of the suggested services. The frontend sends requests to the local Flask backend.
Important: The current frontend uses http://127.0.0.1:5000 for API requests. This is intended for local development and will need to be configured for a deployed environment.
The Flask backend exposes the following routes:
| Endpoint | Method | Purpose |
|---|---|---|
/ |
GET | Confirms that the backend is running |
/process |
GET / POST | Retrieves process information for a requested service |
/check-documents |
GET / POST | Checks which required documents are missing |
GET /process?service=Income%20Certificate
GET /check-documents?service=Income%20Certificate&document=Identity%20Proof
The exact response depends on the service data available in the project.
The application has been tested locally for the following flows:
- Starting the Flask backend
- Opening the frontend
- Searching for a service and opening its result page
- Identifying missing documents
- Confirming when all required documents are selected
- Testing the Birth Certificate flow
These are local functional checks, not a guarantee that every possible service or deployment environment is supported.
To run the existing Python test file, try:
python test.pySetu is intended to provide guidance and help users prepare for government-service applications.
- Requirements can vary by state, jurisdiction, and individual circumstances.
- Document lists and procedures may change over time.
- Users should verify current requirements, fees, eligibility, and application instructions through the relevant official government portal.
- Setu should not be treated as an official government website or as a substitute for authoritative government instructions.
Potential future improvements include:
- Expanding service coverage
- Adding state-specific guidance
- Linking directly to official application portals
- Improving service recognition for natural-language queries
- Adding automated tests for API endpoints and frontend flows
- Deploying the frontend and backend for public access
- Improving multilingual accessibility
- Satwika — Frontend Development
- Tanvi Reddy — Backend Development
- Deepika Chandra — AI Integration, Intelligent Service Processing & Project Coordination
Repository: deepikachandra-stack/Setu
Built as a project to make public-service guidance more understandable, accessible, and actionable.