Full-Stack Development · Academic Project
OnMart
A complete e-commerce flow built to understand how interface, backend logic, and data come together around one user journey.
01 · Purpose
Learning the full path from browsing to purchase
I built OnMart to understand more than an isolated screen or API. The project followed the customer journey across product discovery, login, cart management, checkout, orders, and feedback.
The real lesson was seeing how many small technical decisions have to work together before an experience feels simple to the user.
02 · Interface
Making a large catalog feel navigable
The React interface included dynamic product categories, a consistent navigation system, search, user login, cart access, and responsive product presentation. The project documentation paid particular attention to visual hierarchy, branding, accessibility, responsiveness, and clear feedback.
The cart supported adding and removing products, while forms included validation and purchase confirmation.
03 · System design
Connecting the screen to reliable data
The backend used Node.js and Express.js with Microsoft SQL Server for structured data management. API endpoints were tested with Postman, and the project was designed around reliable communication between the frontend, services, and database.
This was an important bridge between my software development foundation and later data-system work.
04 · Reflection
Good interfaces hide complexity without ignoring it
The project helped me understand that user experience is not decoration added after development. Navigation, validation, response time, data consistency, and backend reliability all shape how a user experiences the product.
It also gave me a practical view of building and testing a multi-layer application.
05 · The next question
From transactions to intelligent commerce
A future version could add recommendation systems, demand forecasting, inventory intelligence, and more personalized search.
Those features would only be useful if they remained transparent and supported the customer rather than adding friction or manipulation.
