Skip to content

devkiraa/ServiceSaathi

Repository files navigation

ServiceSathi 🛂

A comprehensive Government Services Portal designed for Kerala's Akshaya e-centres. Citizens can request government services via WhatsApp, while centre operators manage requests through a web dashboard.

🚀 Live Demo

Service URL
Akshaya Portal https://servicesathi-portal.onrender.com
WhatsApp Bot https://servicesathi-whatsapp.onrender.com

✨ Features

📱 WhatsApp Bot

  • Natural language processing for service requests
  • Multi-language support (English & Malayalam)
  • Document upload via WhatsApp
  • Real-time status updates

💻 Web Portal

  • User Dashboard: View pending/completed services with analytics
  • Admin Panel: Manage centres, users, and all service requests
  • Service Management: Process applications, request re-uploads, approve/reject
  • Document Handling: Secure document upload and storage

🏛️ Supported Government Services

  • Identity Documents: Aadhaar, PAN Card, Voter ID, Passport
  • Certificates: Birth, Death, Marriage, Income, Community, Nativity
  • Registrations: GST, FSSAI, Property, Will
  • Visa Services: Tourist, Business, Employment, Student, Medical
  • Utility Services: Ration Card, Driving License, Scholarship Applications
  • E-Services: KSRTC/Railway Booking, DigiLocker, Income Tax Filing

🛠️ Tech Stack

Component Technology
Backend Node.js, Express.js
Frontend EJS Templates, CSS
Database MongoDB Atlas
WhatsApp Integration Twilio API
Deployment Render.com

📁 Project Structure

ServiceSathi/
├── akshaya-portal/          # Web portal for Akshaya operators
│   ├── models/              # MongoDB schemas
│   ├── routes/              # Express routes
│   ├── views/               # EJS templates
│   └── public/              # Static assets
│
├── whatsapp-bot-server/     # WhatsApp bot backend
│   ├── controllers/         # Bot logic & handlers
│   ├── config/              # Database config
│   └── routes/              # Webhook routes
│
├── scripts/                 # Utility scripts
├── data/                    # Service data (CSV)
├── ml-experiments/          # AI/ML experiments
└── render.yaml              # Render deployment config

🚀 Deployment on Render.com

Quick Deploy (Blueprint)

  1. Fork this repository
  2. Go to Render Dashboard
  3. Click NewBlueprint
  4. Connect your GitHub repo
  5. Render will auto-detect render.yaml and create both services

Environment Variables

Set these in Render Dashboard for each service:

Portal Service:

Variable Description
MONGO_URI MongoDB Atlas connection string
SESSION_SECRET Auto-generated by Render
WEATHER_API_KEY WeatherAPI.com key (optional)

WhatsApp Service:

Variable Description
MONGO_URI Same MongoDB connection string
TWILIO_ACCOUNT_SID Twilio Account SID
TWILIO_AUTH_TOKEN Twilio Auth Token
TWILIO_WHATSAPP_NUMBER Twilio WhatsApp number
CHAT_API_BASE Chat API endpoint
DOCUMENT_SERVICE_API_BASE Portal URL after deployment

💻 Local Development

Prerequisites

  • Node.js 18+
  • MongoDB Atlas account
  • Twilio account (for WhatsApp)

Setup

# Clone the repository
git clone https://github.com/devkiraa/ServiceSathi.git
cd ServiceSathi

# Install dependencies
npm install

# Create .env files in each service directory
# Copy values from .env.example

# Start all services
npm run dev

Access Points

Service Local URL
Akshaya Portal http://localhost:5601
WhatsApp Bot http://localhost:5600

📊 Demo Credentials

For demo purposes, you can use:

Role Username Password
Admin admin@demo.com demo123
Operator operator@demo.com demo123

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📝 License

This project is licensed under the ISC License.

👨‍💻 Author

DevKiraa - GitHub


Made with ❤️ for Kerala's Akshaya Centres

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •