Skip to content
View SoumoparnoRoy's full-sized avatar

Highlights

  • Pro

Block or report SoumoparnoRoy

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
SoumoparnoRoy/README.md

🧭  About

I build Flutter apps that hold up outside the demo — offline, on a bad network, on a mid-range Android phone.

Start from the user's problem, not the widget tree.

Keep Flutter out of the domain layer, so the interesting parts stay testable without a device.

Design for no signal, low memory, interrupted taps — real conditions, not the happy path.

Maintainable over clever. I'll be the one reading it in six months.


🛠  Tech Stack

Mobile

Flutter, Dart

Backend & Data

Node.js, Express, MongoDB, SQLite

Tooling

Git, GitHub, VS Code, Android Studio, Postman, Vercel

🚀  Featured Projects

📚 Zeolite — Know exactly how many classes you can afford to miss

Flutter Riverpod SQLite Offline First Tests License

An offline-first attendance tracker that answers one question before you skip a lecture.

Rules, not rows A weekly class is stored as a rule and expanded into occurrences on demand. Editing a rule reshapes every future week instantly, and the database stays tiny.
Time that doesn't drift Dates as yyyymmdd integers, times as minutes since midnight — immune to timezones and DST.
Marks that survive edits Attendance is keyed by (subject, date, start time), not slot id, so a mark outlives the rule that produced it.
Testable by design The domain layer never imports Flutter. 80 tests cover the schedule engine, stats formulas, notification gating, and palette contrast ratios — no device needed.
Can skip     ⌊p / t⌋ − h
Must attend  ⌈(t·h − p) / (1 − t)⌉

No accounts. No server. No network calls. Works on a train with no signal.

→ View repository

🛒 KursKart — Multi-store e-commerce, full stack

Flutter Node.js Express MongoDB JWT Vercel

A Flutter client and a Node/Express/MongoDB API in one monorepo.

Can't oversell Checkout reserves stock with a conditional update per product. If any line fails, reserved stock is released and the cart is left untouched.
Immutable orders Order lines copy name, price and image at purchase time, so editing a product later never rewrites history.
Runs two ways The same Express app runs as a normal server and as a serverless function, with a cached Mongo connection shared across warm invocations.
Security defaults bcrypt hashing, JWT in flutter_secure_storage, API URL as a --dart-define, cleartext HTTP in debug builds only.

→ View repository  ·  → Live API


🐍  Contributions

Snake eating my contribution graph

📊  GitHub Stats

GitHub stats Top languages

🌱  Currently

Building Polished Flutter products that survive real device constraints
Learning Architecture patterns for apps that keep growing
Improving Repositories documented well enough to read as case studies
Open to Flutter roles, collaborations, and interesting mobile problems

Let's build something

LinkedIn



"Design for real device constraints and imperfect conditions."

footer

Pinned Loading

  1. Zeolite Zeolite Public

    Offline-first Flutter app for tracking a university timetable and attendance. Tells you how many classes you can still afford to miss.

    Dart 3

  2. KursKart KursKart Public

    Dart 1