Back to Projects

Project Case Study / 2026

ClothingMart.

Full-Stack E-Commerce Application

A modern e-commerce platform built with Next.js, Express, PostgreSQL, and Prisma, featuring authentication, product management, and PayPal Sandbox integration.

Next.jsReactTypeScriptNode.jsExpress.jsPostgreSQLPrismaTailwind CSSPayPal Sandbox
ClothingMart homepage
01 / Storefront and homepage
ClothingMart product listing
02 / Product browsing and categories
ClothingMart product details
03 / Product details and selection
ClothingMart checkout
04 / Checkout and payment interface
ClothingMart admin dashboard
05 / Administrative dashboard

Project Overview

ClothingMart is a full-stack e-commerce application developed to explore modern web development, from frontend interfaces to backend services, database management, and deployment.

The project began as a clothing store concept and evolved into a modern TypeScript-based application with a dedicated frontend, REST API, relational database, and external payment integration.

My goal was to understand how the different parts of a real-world application interact, while building a working product that demonstrates my software engineering skills.

Key Features

01

Product Management

Product browsing, category-based organization, product details, and database-backed product information.

02

Authentication

User authentication using JWT-based access and refresh tokens, with role-based access control.

03

Shopping Experience

Shopping cart, wishlist, addresses, and checkout functionality.

04

Payment Integration

PayPal Sandbox integration for practicing payment creation, capture, verification, and payment lifecycle handling.

05

Admin Functionality

Administrative functionality for managing e-commerce operations.

06

Deployment

Public deployment with separate frontend, backend, and database services.

Technical Architecture

The main technologies and responsibilities across the application layers.

Frontend

Next.js and React with TypeScript and Tailwind CSS.

Backend

Node.js and Express.js REST API.

Database

PostgreSQL with Prisma ORM.

Authentication

JWT access and refresh tokens with role-based authorization.

Payments

PayPal Sandbox integration with a provider abstraction.

Engineering Challenges

Full-Stack Integration

Connecting frontend interfaces with backend services while maintaining clear separation between application layers.

Payment Lifecycle

Understanding payment creation, verification, state transitions, and synchronization between payments and orders.

Database Design

Modelling relationships between users, products, carts, orders, and payments using PostgreSQL and Prisma.