This is a submission for the DEV Weekend Challenge: Community
The Community
I live in an apartment society in Bengaluru, India. 500 families. Multiple WhatsApp groups. Pure chaos.
This is not a hypothetical. Here's proof — straight from my mom's phone:
The daily reality:
| The Problem | What Actually Happens |
|---|---|
| Lost announcements | Committee posts important notice → buried under "👍" and "ok noted" within the hour |
| Security calls | Guard's only workflow: call residents — "Sir, koi Ramesh Kumar aaya hai…" — at 2 AM, because your in-laws arrived a day early |
| Buy/sell nobody sees | "Selling Samsung washing machine, 8000 rs" — scrolled past by 150 people, seen by 3. Who knows if someone sent a private DM?? |
| Court booking wars | Four people claim they booked badminton at 6 PM. Nobody has proof. Loudest person wins. |
| Home food, buried | Neighbor's incredible biryani offer drowns between a parking complaint and a meme |
Every apartment society in India with 50–500 flats runs on WhatsApp groups that were never designed for any of this. Tens of millions of families deal with this daily.
So I built the thing we actually need.
What I Built
MeraSociety is a private, verified community platform for apartment societies — one app that replaces the group chaos with structured workflows, AI agents, and real-time collaboration.
The core insight: people don't want to fill out forms. They want to type the same messy way they do in WhatsApp and have the system figure it out. So every major feature is powered by AI that bridges that gap.
Quick Overview — Every Pain Has a Proper Fix
| Feature | The WhatsApp Pain | The MeraSociety Fix |
|---|---|---|
| Announcements | Buried in 20 minutes | Pinned, priority-tagged, seen tracking + threaded comments |
| Real-Time Chat | One giant noisy group | Multiple topic channels (General, Buy & Sell, Services, etc) |
| Bazaar Marketplace | Listings vanish in minutes | AI extracts structured listings from messy text; AI matches buyers to sellers |
| Security Passes | Guard calls you at 2 AM | QR-coded digital passes — guest shows code at gate, zero phone calls |
| Sports Booking | "I messaged first!" fights | Slot grid with enforced fairness via rubrics |
| AI Court Booking | Manual slot hunting | "Book badminton tomorrow evening" → confirmed booking in 2 seconds |
| Chat-to-Listing AI | Selling messages get lost | AI detects listings in chat → one-click post to Bazaar |
| AI Composer | Admins can't write notices | Rough notes → polished English + Hindi announcement |
| MCP Translation | Half the society reads Hindi | Model Context Protocol server for English↔Hindi translation |
| Admin Dashboard | Volunteer admins overwhelmed | Member management, approvals, full audit trail |
🏠 Dashboard — Your Society at a Glance
Member count, active listings, pending security passes, today's bookings — all at a glance. Quick action buttons for the four things people do most. A live activity feed shows what's happening in your society right now.
📢 Announcements — Notices That Don't Disappear
Water tank cleaning notice? Pinned at the top, marked urgent with a red badge. Tracks comments (threaded) and seen count (admin knows who hasn't read it). Filter by all, pinned, or urgent. Still there weeks later.
💬 Real-Time Chat — Multiple Channels, Not One Firehose
Six topic channels in my society: General, Buy & Sell, Services, Food Corner, Sports, Maintenance. Every message shows sender's photo, name, and flat number. Mobile-responsive with a slide-out channel list.
But chat isn't just chat — it's where the AI agents live.
🛒 Bazaar — A Marketplace That Understands WhatsApp
Nobody writes structured listings. They type:
"Selling my 2 year old Samsung washing machine, 7kg, works perfectly. 8000 rs. DM me flat B-302"
AI extraction turns that into:
{
"title": "Samsung 7kg Washing Machine",
"category": "buy_sell",
"price": 8000,
"tags": ["electronics", "washing-machine", "samsung"],
"condition": "good"
}
One click → listing is live. AI matching on the buyer side: "looking for a washing machine under 10k" → relevance-scored results with reasons.
🔒 Security Passes
Pre-register visitors (Guest, Contractor, Delivery). Each generates a 6-character code + QR code. Guest shows it at the gate → guard verifies on screen → done. Status tracking: Active → Used → Expired → Cancelled. Everything logged.
🏸 Sports Booking — Fair, Provable, Argument-Free
Slot grid: pick a court, pick a date, book. We have enforced a 2-hour cap per flat per court per day. Browser dev tools can't bypass it. The database itself says no.
🤖 AI Agents — Natural Language → Real Actions
Three AI Agent workflows + MCP integration:
- AI Court Booking Agent — type in the Sports chat channel:
User: "Book me a badminton court tomorrow evening"
🤖 Agent: ✅ Booked! Badminton Court A on 2026-03-03, 6:00–7:00 PM.
📊 Fairness: 1.0 hours remaining (max 2h/day per flat).
💡 Also available: 19:00-20:00, Tennis Court 18:00-19:00
An agentic loop: natural language → database queries → booking insert → explanation.
- Chat-to-Marketplace Agent — post "Selling my Samsung TV, 8000 rs" in Buy & Sell. AI silently detects it (confidence > 50%) and offers a one-click post to Bazaar. No form-filling.
- AI Announcement Composer — admins type "water tank cleaning tmrw 10am-2pm no water sorry" → polished English + Hindi announcement, auto-suggested priority, pin recommendation.
-
MCP Translation Server —
/api/mcp/translateexposestranslate_to_hindi,translate_to_english,detect_languageas MCP tools. Any MCP-compatible client can discover and use them (AI Can Translate Searches from different languages into semantic searches on the same knowledge base).
👨💼 Admin Dashboard & More
- Admin Dashboard — member directory, pending approvals, full audit log
- Notifications — deep-linked alerts for listings, bookings, verifications
-
Feedback — bug reports + feature requests tracked
open → in progress → resolved - Onboarding — invite-code gated signup → admin approval → full access
Demo
- Live Demo : https://merasociety.vercel.app
- YouTube Link : https://www.youtube.com/watch?v=6TNUxPRyHKA
Code
🏘️ MeraSociety — Your Society, Connected
DEV.to Weekend Build Hackathon — Feb 28, 2026
A verified, private mini-social network for apartment societies — replacing chaotic WhatsApp groups with structured, searchable workflows.
Live Demo → | Read the Blog Post → | Watch on YouTube →
Quick Start
cd merasociety
npm install
npm run dev
See merasociety/README.md for full documentation.
Github URL : https://github.com/Vishwa-docs/merasociety
How I Built It
The Stack
| Layer | Technology | Why |
|---|---|---|
| Framework | Next.js 16 (App Router) | Server components + API routes + file routing in one project |
| Language | TypeScript | 27 routes across 14 pages — type safety isn't optional at this scale |
| Styling | Tailwind CSS v4 | Consistent UI, fast iteration, zero component library dependency |
| Backend | Supabase | Auth + Postgres + Realtime — no separate backend to deploy |
| AI | Azure OpenAI (GPT-4o) | Few-shot prompting for extraction, semantic matching, three agentic workflows |
| MCP | Custom MCP Server | Model Context Protocol translation server — tool discovery + execution |
| State | Zustand | 20 lines of code for the entire client-side auth store |
| QR | qrcode.js | Branded QR codes for visitor passes |
| Deploy | Vercel | Push to main → live |
Database: 14 Tables
societies → members → announcements → announcement_comments
→ announcement_seen
→ channels → messages
→ listings
→ visitor_passes
→ courts → bookings
→ notifications
→ feedback
→ audit_log
Key Design Decisions
Invite-code isolation. Each society has a unique code. No code = no account. No "browse societies" by design — total data privacy per community.
Three roles.
admin,resident,guard— each sees a different app. Permissions enforced at the application layer, not just hidden in UI.Server-side fairness.
check_booking_fairness()is a PostgreSQL function on every INSERT. I could've just disabled the button — but anyone with dev tools could bypass that. The database enforces the 2-hour cap. You can't cheat math.Full audit trail. Every approval, verification, booking, announcement → logged with timestamp. Definitive answers when questions arise.
Seven AI Endpoints
| Endpoint | What It Does |
|---|---|
/api/ai/extract |
Messy text → structured listing JSON (few-shot prompted) |
/api/ai/match |
Natural language query → scored listing matches |
/api/ai/summarize |
Long announcements → 1–2 sentence summaries |
/api/ai/book-court |
"Book badminton tomorrow" → confirmed booking via agentic loop |
/api/ai/chat-to-listing |
Chat message → confidence-scored listing detection |
/api/ai/compose-announcement |
Rough notes → polished bilingual announcement |
/api/mcp/translate |
MCP-compatible English↔Hindi translation server |
What I'd Build Next
- Voice-to-Listing — speak your listing, AI transcribes + structures it (huge for elderly residents)
- Push notifications — the app only works if people open it
- UPI payments — monthly maintenance collection
- AI Community Pulse — scan chat + feedback to surface trending issues for admins
But honestly? Even as it stands, this is the app I wish my society had instead of hundreds of WhatsApp groups and a spreadsheet.
If you live in an apartment society and this resonated — hit ❤️ and share it with your society's WhatsApp group. The irony is intentional.
Built with love and the kind of frustration that only comes from living in an Indian apartment society.
NOTE : Since starting the development of this project, Supabase has been blocked in India. I have deployed it on Vercel so it should not be an issue, but in case you are unable to log in from an Indian network, I request you to use a VPN or change the DNS provider for supabase.co (As I did).



















Top comments (4)
Please reach out to me if you want to test the app and create an account. Or you can alternatively drop a message in this comment thread and I will create account (Please mention how I can reach out to you as well)
Thanks!
Very good implementation and use case for Indian Apartments. I am curious as to how is it being adopted in your society and what are some challenges you faced if any?
Hi Deepak, I have reached out to my society admin to use this app (I built it over the weekend) and it will be reviewed in the next town hall meeting (April 1st week).
I do think there will be some challenges. For one, we need to tell people how the AI is deciding things such as who gets to keep the court. The other thing is getting people (Especially the elderly) to move to the application. Towards this, I was thinking of implementing something that can directly read messages from a particular WhatsApp group and make the posts and requests, and conversely anything posted on the website will be sent as a WhatsApp message if subscribed.
Thanks for the comment!
I agree. The challenges will be around adoption and accessibility. A follow up post with a experience of 1-2 months of use can be helpful in understanding challenges and solutions. Cheers for the future !!