Projects & Case Studies

Below is a detailed case study of PoperL — a full project executed by me and other projects

PoperL — End-to-end product (Case study)

Status: Completed (self-planned, developed, and launching).
PoperL is an on-demand tutoring platform designed to help students connect with teachers anytime they need support. What started as a simple idea slowly grew into a complete learning system — from building the first chat features, to integrating audio calls, a digital whiteboard, and real-time messaging. Step by step, PoperL evolved as I listened to students’ needs, tested new features, and improved the experience. Today, it offers instant help, seamless communication, and a smooth, modern interface that makes learning easier, faster, and more accessible for everyone.

My role & responsibilities
  • Idea, product planning, and user research (market fit for local micro-entrepreneurs).
  • UX/UI prototyping and responsive web design for the storefront (React.js).
  • Mobile app development with React Native (Expo) and a WebView integration for the storefront.
  • Payment integration using ShurjoPay and secure backend handling.
  • Backend design: Firestore for auth & session flow + MongoDB for subscriptions and analytics (integration).
  • Testing, bug-fixing, preparing launch builds, and publishing/releasing the product.
Technical highlights
  • Frontend: React.js (responsive storefront), Bootstrap + custom CSS, WebView integration inside React Native Expo.
  • Mobile: React Native (Expo), navigation, offline caching for orders, lightweight local DB.
  • Payments: ShurjoPay integration with secure callbacks and state verification.
  • Backend: Node/Express microservice to handle payment verification, update Firestore and insert into MongoDB 'subscriptions' collection.
  • DevOps: Build scripts for Expo, environment config, and CI hooks (placeholder).
Key features
  • User authentication & profile management (Firebase Authentication + Firestore user profiles).
  • Real-time chat using Socket.io with messages and metadata stored in MongoDB (fast, cost-efficient).
  • Audio calling and interactive whiteboard powered by Agora (in-browser calls + teacher blackboard).
  • Media storage (images & voice messages) in Supabase, with planned automatic deletion tied to subscription lifecycle.
  • Subscription & payments integrated with ShurjoPay (React frontend + Node backend flow; sandbox tests available).
  • Teacher points, rating and like/dislike system — likes only by students; points update stored in `teacherCollection` (Firestore) and monthly earnings recorded in MongoDB.
  • Admin web panel for managing content, subscriptions, monthly payout calculations, and revenue history (backend does the heavy lifting to avoid client-side failures).
  • PWA front-end built with React + Vite (installable web app / wrapper-ready for React Native WebView).
  • Service-worker based call notifications: ringtone, auto-open chat on incoming call, and notification lifecycle handling.
Launch plan (short)
  1. Finish remaining UAT fixes and end-to-end tests (auth, chat, calls, whiteboard, media upload/download).
  2. Complete ShurjoPay integration and verify payment flows in sandbox (frontend + Node backend, webhook handling, subscription state sync).
  3. Verify data flows & backup: confirm Firestore ↔ MongoDB sync points, Supabase retention policy, and automatic media deletion tied to subscription expiry.
  4. Run security and compliance checks (Auth rules, Firestore rules, CORS, webhook validation, least-privilege service accounts).
  5. Performance & load testing for Socket.io/Agora paths and DB-heavy flows (simulate concurrent calls/messages).
  6. Prepare production build and configuration (env vars, secrets, monitoring/logging, and CI/CD deployment scripts). If you publish mobile builds later, prepare store assets then — initially focus on the web PWA experience.
  7. Soft launch with a controlled local user group, collect feedback and crash/usage logs, and iterate quickly on UX and bugs.
  8. Run the monthly payout job from backend, confirm reports stored in MongoDB, reset teacher points in Firestore, and publish the earnings page in admin.
  9. Scale: enable analytics, set up alerts, roll out to wider audience and iterate on monetization & admin features.
Project metadata

Timeline: 9–11 months (idea → launch)

Tech stack: React.js, React Native (Expo), Node/Express, Firestore, MongoDB, ShurjoPay

Role: Product owner, developer, and maintainer

Other Projects

Inventory
EasyQuizzy

A quiz app for student built with JAVA and swift.

Club
LearnEdu

A localhost website for study, conduct exam and collect notes from teachers. Users can manage their daily task using this app as well. Raw html css is used for the front end of this app while php laraval is used for backend

Mobile
Restaurant ERM

This is a Restaurant management website where users can scan a qr code from the table and order their food. The chef gets the order printed and a waiter deliver to food to customer and collects the payment

More projects
Project X - Will add my freelance mini projects here
Project X - Will add my freelance mini projects here
Project X - Will add my freelance mini projects here

Want to collaborate?

If you'd like a walkthrough anything or want to discuss a project, get in touch — I handle product design, development and deployment end-to-end.