Finishing the e-commerce app I abandoned in 2023

Finishing the e-commerce app I abandoned in 2023

1 4
calendar_today agoschedule3 min read
— Originally published at dev.to

This is a submission for the GitHub Finish-Up-A-Thon Challenge

What I Built

GlowStore — a full-stack MERN e-commerce store (React + Redux + Express + MongoDB).

Back in 2023 I built this as my university Web Engineering final project. I ran
out of time, handed in what I had, and never touched it again. When I reopened
it for this challenge I found something funny: the backend was basically
finished
— JWT auth, products, orders, reviews, search — but the React
frontend never actually talked to it.
It was a good-looking shell with fake
logic bolted on. So "finishing it" meant connecting the two halves and making it
a real store you can actually shop in.

Repo: https://github.com/hashaam-011/Web-Engineering

Demo

Before — the entire app was just a fake login screen. Typing anything (or
nothing) and clicking "Log in" flipped a boolean and "logged you in":

Image description

After — a working storefront with products from the database:

Image description

A real product detail page (was literally <h1>DetailsPages</h1> before):

Image description

Image description

You can run it yourself in two terminals (no database setup needed — it boots an
in-memory MongoDB and seeds itself):

cd backend && npm install && npm start   # http://localhost:4000
npm install && npm start                 # http://localhost:3000

Demo login: user@example.com / 123456 — or register a new account.

The Comeback Story

Here's what the project looked like before, and what I changed:

Before After
Login dispatched a boolean and ignored your credentials Real login/register against the API with JWT + bcrypt
Frontend never called the backend (no axios anywhere) Axios client with token injection; products load from MongoDB
Product details page was <h1>DetailsPages</h1> and wasn't routed Full details page (image, price, stock, rating) routed by slug
Cart was local-only; "checkout" button did nothing Persistent cart → checkout → real order placed and saved
Backend had a reviews endpoint the UI never used Product reviews: read them and post your own with a star rating
Only 3 routes; most of the app was unreachable Home, login, register, details, account, checkout, orders
Typos baked in (Regsiter, isLoggIn), console.log in render, logo linked to a random site Cleaned up, renamed, fixed scroll/header bugs
A live MongoDB password was committed in .env Removed from tracking, .env.example added

I tracked the whole revival in 30 small commits so the before → after journey
is visible in the history, from "stop tracking node_modules" to "add the orders
page."

My Experience with AI-Assisted Development

I leaned on AI assistance heavily to finish this. The most useful parts:

  • Mapping the gap fast. The first win was having the codebase read end-to-end
    and getting a precise list of what worked vs. what was fake — that turned a
    vague "it's unfinished" into a concrete checklist.
  • Wiring the integration layer. Generating the axios client, the Redux
    thunks for login/register, and the product/cart/order slices was where it saved
    the most time — lots of boilerplate that's easy to get subtly wrong.
  • Filling the missing pages. The checkout form, order summary math (items +
    shipping + tax), and the orders history page came together quickly.
  • Unblocking the environment. Docker wouldn't start on my machine, so instead
    of stalling I switched the backend to an in-memory MongoDB with auto-seeding —
    now anyone can clone and run it with zero setup.

The thing I'd tell other people reviving an old project: don't start by writing
code. Start by getting an honest map of what's actually there. Half of "finishing"
turned out to be deleting fake logic, not adding new features.

1 Comment

1 vote
🔥 Join developers growing publicly
Share your knowledge, build in public, and grow your developer presence with a global community.

More Posts

How I Built a React Portfolio in 7 Days That Landed ₹1.2L in Freelance Work

Dharanidharan - Feb 9

From Prototype to Production: Finishing Moonsu Link, a Chat-Native Agricultural Marketplace for Cameroon

chestlyace - Jul 3

Reviving a 12K+ Star Abandoned Library: toastr-next v3

Divyesh - Jun 13

My First Global Hackathon: What I Learned Building Moonsu Link

chestlyace - Jul 3

Beyond the 98.6°F Myth: Defining Personal Baselines in Health Management

Huifer - Feb 2
chevron_left
138 Points5 Badges
1Posts
0Comments
Software Engineer.

Related Jobs

View all jobs →

Commenters (This Week)

2 comments
1 comment
1 comment

Contribute meaningful comments to climb the leaderboard and earn badges!