For our capstone project for the Fullstack Academy boot camp, we decided to design a full-stack e-commerce site, complete with Stripe integration, utilizing the PERN (PostgreSQL, Expressjs, React, and Nodejs) stack, with usage of MaterialUI for some components and styling as well. This project was created over the duration of a month, and we are very proud of what we were able to create together!
- User account creation, authorization and authentification using JSON Web Tokens (JWTs) for regular users and administrator users
- Persistent cart storage (items placed in cart by user persist throughout separate sessions)
- Stripe integrated check out (Please don't actually buy a non-existant product with a card on our site)
- Full-stack integration with persistent database for users' carts and products sold by our store
- Administrator dashboard, complete with data tables to enable real-time adding, editting, and deletion of products from the comfort of the website itself
- A lovely image carousel on the home page that shows off some of the popular games on the store page
-
Clone this repository down on your local machine
-
Install packages
npm install
- Add a
.env
file with your secret value for auth
JWT_SECRET='somesecretvalue'
- Create the database
createdb your-database-name
- Update
src/server/db/client.js
to reflect the name of your database
const connectionString = process.env.DATABASE_URL || 'https://localhost:5432/your-database-name';
- Seed the database
npm run seed
- Start the server
npm run dev
-
Open your browser at
http://localhost:3000
-
Buy something 😎 (but please don't actually use your actual credit card information)