EpicGames — a game shop web app
A game shop web application inspired by the Epic Games Store, built with a React frontend and a Django backend. Browse games, view details, sign in, track preferences, and check out with Stripe.


What it does
Browse and discover games from a listing page with detail popups.
Sign up, sign in, and update your profile.
User preference tracking — the app learns which game tags you interact with and stores them for personalized recommendations.
Stripe checkout integration — complete the purchase flow with a payment page and success confirmation.
How it's built
The frontend is a React 18 app (Create React App) with React Router for navigation and Redux Toolkit for global state management. Material UI handles the component library and styling, while Axios manages all HTTP calls to the backend API.
The backend is a Django REST API (served as a git submodule) handling authentication, game data, user preferences, and Stripe webhook/payment endpoints. The CRA dev server proxies API calls to 127.0.0.1:8000 for seamless local development.
Tech stack
- frontend
- React 18, Redux Toolkit, React Router, Material UI, Axios
- payments
- Stripe (@stripe/stripe-js)
- backend
- Django (REST API, served as git submodule)
- tooling
- Create React App, npm, Git submodules