Project Description
An online bookstore application with a featuring a Hero Page, a Browse page, individual book pages, and an efficient checkout system.
(see demo images below)
Key Features
- Persistent User State: React useContext hook allows for persistent state on the client side between page changes and page refreshes
- Server-side and Client-side JavaScript: Used Server-side Rendering for efficient page loading, supplemented by client side React for responsive user interaction
- Smart Checkout: The checkout process takes tax and shipping into account when calculating the user's total
- Web Hosting: Using Vercel and Supabase for free application and database hosting
Design Decisions
- Utilized Prisma ORM for easy integration between Next.JS and PostgreSQL
- Implemented Next.JS dynamic routes to create a repeatable template for individual book pages
- Simple layout to align with what users expect in an online store