A custom e-commerce fashion shop focused on women's apparel. This website/application is built for a small business wanting to have more granular control, adaptability, and custom features of their website.
Technologies:
-
Frontend
- React
- Redux Toolkit
- Bootstrap
- React-Bootstrap
-
Backend
- Node
- Express
- MongoDB
- Mongoose
- Postman
- Seeder
-
Testing
- E2E Layer
- Unit Layer
- Component Layer
- API Layer
-
DEVOPS
- Github Actions
- Automated Testing checks on PR and main push
- CI/CD
- Fullscreen mode
- Cross platform
- Mobile Responsive
- Full featured shopping cart
- PayPal / credit card integration
- Checkout process (shipping, payment method, etc)
- Product reviews and ratings
- Top products carousel
- Product pagination
- Product search feature
- User profile with orders
- Database seeder (products & users)
- Admin Features
- Admin product management
- Admin user management
- Admin Order details page
- Mark orders as delivered option
Challenges: Admin users uploading images for products
Solutions: Using Node route on the backend to upload images to a public folder, for scalablity will need to implement cloud storage such as Cloudinary.
If you have any feedback, please reach out to gregpetropoulos@yahoo.com
Go to the Login page and enter an admin user or test user
email: 'admin@email.com',
password:123456
email: 'john@email.com',
password:123456
Clone the project
git clone https://github.com/GregPetropoulos/FashionShop.git
In the root folder
Install dependencies
npm install
Start the both frontend and backend servers
npm run dev
In the root folder
Install dependencies
npm install
Start the server
npm run server
In the root folder
cd frontend
Install dependencies
npm install
Start the server
npm run start
In the root folder
cd frontend
npm run storybook
# This will run on http://localhost:6006/
In the root folder
cd frontend
npx cypress open
There are three core API categories and more detail can be found at the postman docs
/api/products
/api/users
/api/orders
To run this project, you will need to add the following environment variables to your .env file, see the .env-example in the root folder
PORT=5000
NODE_ENV=development
MONGO_URI=ADD_YOUR_CONNECTION_STRING_HERE
JWT_SECRET=ADD_YOUR_SECRET
PAYPAL_CLIENT_ID=YOUR_PAYPAL_CLIENT_ID
To deploy this project on a platform such as render or heroku:
npm run deploy
Contributions are always welcome!
See contribute for ways to get started.
Please adhere to this project's code of conduct
.
I am a React/React-Native Front End Developer and enjoy building applications with engaging UI/UX and robust backend API's with Node.js
React, React Native, Javascript, HTML, CSS, Node, Express
π©βπ» I'm currently working on React migration to React Native code base
π§ I'm currently learning Cypress testing strategy and Next.js
π―ββοΈ I'm looking to collaborate on open source Veterans Health apps, Oil and Gas Technology, Department Of Defense, and React Native Elements UI
π¬ Ask me about anything frontend
π« How to reach me gregpetropoulos@yahoo.com
β‘οΈ Fun fact...I found a dinosaur fossil that remains in the Las Vegas Natural History Museum.