Novelle — The Book Shop

WhereStoriesComeAlive.

Discover curated books, timeless stories, and literary treasures. From bestsellers to hidden gems — your next great read awaits.

Built With

Technology Stack

A carefully chosen modern stack built for performance, scalability, and developer experience.

Frontend

User Interface Layer

Next.js 14
React 18
TypeScript
Tailwind CSS
Vercel

Backend

API & Business Logic

NestJS
PostgreSQL
Sequelize ORM
JWT Auth
OCI VM

Storage

Object & Asset Storage

S3 Bucket
Image CDN
Asset Pipeline

Infrastructure

Platform & Services

REST APIs
RBAC
Admin Dashboard
Order Management
By the Numbers

Engineering Highlights

A snapshot of the scale and depth behind this application.

15+

API Endpoints

REST architecture

30+

Components

Reusable UI

5+

DB Models

PostgreSQL tables

JWT

Authentication

Secure token-based

20+

Pages

Fully responsive

95+

Lighthouse

Performance score

< 30s

Build Time

Optimised pipeline

100%

TypeScript

Full type safety

Live

Production

Deployed on Vercel

Architecture

System Architecture

A full-stack request lifecycle — from browser to storage — built for reliability and separation of concerns.

1

Client

Browser / Mobile

React UI, Tailwind CSS, Framer Motion

2

Next.js

App Router (Frontend)

SSR, RSC, API rewrites, Auth middleware

3

NestJS API

REST Backend

Controllers, Services, Guards, DTOs

4

PostgreSQL

Primary Database

Sequelize ORM, Relations, Migrations

5

S3 Storage

Object Storage

Product images, CDN distribution

What's Built

Feature Showcase

Every feature is fully implemented and live in production — not a prototype.

Live

Authentication

Secure JWT-based auth with refresh tokens, protected routes, and role-based access enforcement at middleware level.

Live

Inventory Management

Full CRUD for product catalogue including stock tracking, availability updates, and automated low-stock alerts.

Live

Order Processing

End-to-end order lifecycle management from cart to fulfilment with status tracking and customer notifications.

Live

Image Uploads

Direct S3 upload pipeline with client-side preview, compression, and CDN delivery for product imagery.

Live

Admin Dashboard

Role-gated internal dashboard for managing products, users, orders and analytics with full audit trails.

Live

Role-Based Access

Granular RBAC system with Admin and User roles, protecting sensitive operations at both API and UI layers.

Live

Responsive Design

Mobile-first layouts that adapt seamlessly from 375px phones to 1920px ultrawide monitors without compromise.

Live

Product Management

Rich product editor with structured data, image management, pricing, and Lexical-powered rich text descriptions.

How It's Built

Engineering Principles

The philosophies that guided every design and implementation decision in this codebase.

Scalable Architecture

Designed for growth. The layered Next.js + NestJS separation ensures features can be added without structural debt.

Modular Components

Each UI component and API module is self-contained, testable, and reusable — minimising coupling across the system.

Type Safety

End-to-end TypeScript from API DTOs to React components. No `any` types — strict mode enforced throughout.

Performance First

Server Components, image optimisation, lazy loading, and minimal client JS bundle keep Time-to-Interactive low.

Security by Design

JWT verification at middleware, RBAC guards on every protected route, and input validation via Zod + class-validator.

Clean Code

Consistent naming conventions, JSDoc documentation, ESLint + Prettier enforcement, and feature-based folder structure.

Production Ready

Live on Vercel with environment separation, OCI-hosted backend, health checks, and real end-to-end user flows.

Let's Connect

Get in Touch

Interested in the project or want to collaborate? Reach out — I respond promptly.

Open to senior frontend & full-stack opportunities. Say hello →