// the find
ashishrawat2911/firekart_app
An Ecommerce application built in Flutter using Nodejs and MySQl.
A full-stack Flutter e-commerce demo with a Node.js/MySQL backend, covering auth, cart, orders, and product browsing. It's a learning project showing how to wire together flutter_bloc, freezed, injectable DI, and a REST API — not something you'd ship to production. If you're a Flutter developer looking for a reference architecture for a non-trivial app, this is one of the better examples floating around.
The modular monorepo structure (melos, feature modules under /modules) is well thought out for a demo — analytics, data, domain, and deeplink are separate packages, which makes dependency direction explicit. Using freezed + injectable throughout is current idiomatic Flutter: you get immutable state, union types, and generated DI wiring without rolling it yourself. The backend is TypeScript with a clean controller/service/repository layering and proper request validators — it's not just a pile of route handlers. CI is wired up via GitHub Actions, which is more than most demo repos bother with.
No tests worth mentioning — there's a single auth repository test file and nothing else, so the architecture's testability is theoretical rather than demonstrated. The backend has no rate limiting, no refresh token flow, and OTP verification looks like it talks to Firebase Auth on one side and a custom MySQL user table on the other, which is a recipe for desync bugs. Last meaningful commit was late 2024 and Flutter/Dart move fast — dependencies are likely stale and you'll spend time unblocking pub upgrade before writing any actual code. Payment is UI-only; there's a payment screen screenshot but no actual payment integration, so the 'e-commerce' framing oversells it.