A web-based civic services platform designed to help citizens in Chandigarh discover public services, understand government schemes, validate documents, and access healthcare information through a single interface.
The project aims to make essential services easier to discover and navigate through AI-assisted guidance, document validation, and a centralized citizen experience.
- Conversational assistance for citizen queries.
- Helps users understand public services and application requirements.
- Provides easy-to-understand responses.
- Designed to guide users toward relevant official information.
- Search for relevant government services.
- Access service information and documentation requirements.
- Support for Chandigarh-specific services and selected central government services.
- Helps citizens find the appropriate official portal.
- Document-processing workflow using OCR technology.
- Extracts text from supported uploaded documents.
- Supports preliminary document checks.
- Helps identify potential missing information before an application is submitted.
Document checks are intended to assist users and should not be treated as official government verification.
- Access information about approved hospitals listed in the application.
- Search hospital information.
- Support for appointment-related workflows.
- User registration and login.
- Session-based authentication.
- Password hashing for account security.
- Guest access, where enabled.
- Centralized interface for accessing available services.
- Convenient navigation between service discovery, healthcare, and AI assistance.
- Designed to simplify the citizen's digital-service journey.
Citizens often struggle to find accurate information about government services, eligibility requirements, supporting documents, and application procedures. Information can be distributed across multiple websites, making the process confusing and time-consuming.
This project addresses that challenge by bringing service discovery, AI assistance, document checks, and healthcare-related features together in one web application.
The Chandigarh Civic Services Portal provides a unified digital experience that helps users:
- Discover relevant public services.
- Understand application and documentation requirements.
- Check uploaded documents for potential issues.
- Find listed healthcare facilities and access appointment features.
- Navigate public-service information with AI-assisted guidance.
The goal is to make digital public services more accessible, understandable, and convenient.
| Technology | Purpose |
|---|---|
| Python | Core application logic |
| Flask | Web application and backend routing |
| MySQL | Relational database |
| HTML, CSS & JavaScript | Web interface |
| Groq API | AI-assisted responses, where configured |
| OCR / Tesseract | Document text extraction, where configured |
| Python-dotenv | Environment-variable configuration |
| Werkzeug Security | Password hashing and verification |
The listed technologies reflect the intended project architecture; confirm them against the current source code before treating this list as final.
chandigarh/
βββ app.py
βββ ai_assistant.py
βββ benefits.py
βββ health_care.py
βββ ocr_validator.py
βββ db.py
βββ documents.py
βββ templates/
βββ static/
βββ requirements.txt
βββ .env.example
βββ README.md
Some filenames and directories may differ in your repository. Keep the structure in this README synchronized with the actual project files.
Install the following before running the application:
- Python 3.11
- MySQL Server
- Git
- Tesseract OCR, if required by the document-validation module
git clone https://github.com/yatin341/CU_project.git
cd CU_project/chandigarhWindows PowerShell:
py -3.11 -m venv venv
.\venv\Scripts\Activate.ps1If PowerShell blocks activation, you can run the virtual environment's Python executable directly instead.
python -m pip install --upgrade pip
pip install -r requirements.txtCreate a .env file in the directory expected by the application.
Example configuration:
SECRET_KEY=replace_with_a_secure_random_value
DB_HOST=localhost
DB_USER=your_mysql_username
DB_PASSWORD=your_mysql_password
DB_NAME=your_database_name
GROQ_API_KEY=your_groq_api_keyUse the exact environment-variable names expected by your source code. Additional settings may be required for other integrations.
Security: Never commit .env, database passwords, API keys, or other secrets to GitHub. Store production secrets in your hosting provider's environment settings.
- Start your MySQL server.
- Create the database configured in your
.envfile. - Configure the database credentials.
- Run the initialization or migration process provided by the project.
Use the database initialization command defined by your application rather than assuming a particular command.
If the Flask application exposes app from app.py, run:
flask --app app run --debugOpen the local address shown in the terminal, usually:
Use debug mode for local development only, not for production deployment.
The application can be prepared for deployment on a suitable Python hosting platform, such as Render.
A production deployment generally requires:
- A valid Python build environment.
- All required Python dependencies.
- Production environment variables.
- A reachable MySQL database.
- OCR system packages, if document processing depends on Tesseract.
- A production WSGI server such as Gunicorn.
- Correct configuration for uploaded files and persistent storage.
Deployment commands and database settings should match the repository's actual configuration.
- Keep API keys and database credentials in environment variables.
- Use secure password hashing.
- Validate uploaded files and restrict upload sizes.
- Apply appropriate authentication and authorization checks.
- Avoid exposing personal or sensitive information in logs.
- Use HTTPS in production.
- Verify government-service information against official sources.
- Do not treat AI-generated guidance or OCR output as an official decision.
- Multilingual AI assistance.
- More comprehensive government-service discovery.
- Improved document-quality and completeness checks.
- Application-status tracking through authorized integrations.
- Notifications for relevant application updates.
- Accessibility improvements for users with different needs.
- Integration with verified government APIs where access is available.
- Expanded healthcare search and appointment management.
- Better automated testing and monitoring.
- Simplify access to public services.
- Reduce confusion around documentation requirements.
- Improve discoverability of relevant information.
- Make citizen-facing digital services easier to use.
- Explore responsible AI integration in public-service workflows.
Contributions and suggestions are welcome.
- Fork the repository.
- Create a feature branch.
- Make and test your changes.
- Submit a pull request describing the improvements.
This is a software project intended to assist users in navigating public-service information. It is not an official Chandigarh Administration website unless formally authorized. Service availability, eligibility, documentation requirements, and application decisions must be confirmed with the relevant official authority.
GitHub: @yatin341
Add a license to the repository if you intend to publish the project for reuse. Until a license is specified, do not assume that others have permission to redistribute or modify the code.