BÜ Nabız — an anonymous overload wall for Boğaziçi students (DEV Weekend Challenge)
Source: Dev.to
This is a submission for the DEV Weekend Challenge: Community. I built BÜ Nabız for Boğaziçi University students—people juggling classes, projects, internship applications, and life at the same time.
When everyone is overwhelmed, it becomes invisible. People assume they’re the only one struggling, so they go silent. I wanted a tiny place that says: “You’re not alone this week.”
What BÜ Nabız does
- An anonymous weekly overload wall
- Share your weekly load in under 10 seconds (text optional)
- Pick a category (Ders / Proje / Başvuru / Hayat), status, and intensity
- Tap “Ben de” to show solidarity (keeps counts meaningful with basic anti‑spam)
- View the Nabız (pulse) for the week: totals + top categories + top statuses
- No login — intentionally frictionless
- Design goal: weightless, mobile‑first UI with a calm dark theme
Live demo:
Repository:
How I Built It
Tech stack
- Next.js (App Router) + TypeScript + Tailwind CSS
- Firebase Firestore for data storage
Firestore security rules
// Firestore security rules
service cloud.firestore {
match /databases/{database}/documents {
// Everyone can read
match /{document=**} {
allow read: if true;
}
// Anyone can create a post (validated fields)
match /posts/{postId} {
allow create: if request.resource.data.keys().hasAll(['category', 'status', 'intensity'])
&& request.resource.data.category is string
&& request.resource.data.status is string
&& request.resource.data.intensity is int;
}
// “Ben de” increments are handled via deterministic event id + transaction
match /posts/{postId}/likes/{likeId} {
allow create: if request.auth == null && request.resource.id == request.time.toMillis().toString();
}
}
}
- Firestore indexing for
week+created_atqueries - Core loop: share → scroll → “Ben de” → pulse
- Anonymous doesn’t mean chaotic: basic constraints (validation + simple anti‑spam) are still required
- Mobile‑first matters—if it’s not comfortable on a phone, students won’t use it
- Optional preset‑only mode / basic profanity filtering
- Future improvements: better filtering + search, weekly share link for WhatsApp groups
Thanks for reading — and if you’re a Boğaziçi student, I hope this makes the week feel a bit less heavy.