Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wojwozniak/nodejs-shop
E-commerce website built with nodejs, express and mongoDB
https://github.com/wojwozniak/nodejs-shop
ejs express-session expressjs mongodb mongoose nodejs tailwindcss
Last synced: 3 days ago
JSON representation
E-commerce website built with nodejs, express and mongoDB
- Host: GitHub
- URL: https://github.com/wojwozniak/nodejs-shop
- Owner: wojwozniak
- Created: 2023-12-21T17:18:48.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-28T01:31:01.000Z (12 months ago)
- Last Synced: 2024-04-28T07:48:55.569Z (8 months ago)
- Topics: ejs, express-session, expressjs, mongodb, mongoose, nodejs, tailwindcss
- Language: EJS
- Homepage:
- Size: 245 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Nodeshop.io
## About
Nodeshop.io is a simple e-commerce application built with Node.js, Express, and MongoDB. It is an end project for university course i attend.
All the data is stored in MongoDB Atlas cloud database. Entire frontend is built with EJS templating engine. I used Tailwind CSS for styling.
Authentication is done by simple username and password. Passwords are hashed with bcrypt. Authorization on routes is handled by custom middleware.
## Features
Main features required by the course:### Not logged in user
- [x] View all products
- [x] Search for products
### Registered user
- [x] Create an account
- [x] Login/logout
- [x] Add product to basket
- [x] View basket, summary and checkout### Admin
- [x] Add/modify/delete product
- [x] See user list
- [x] See order list## Screenshots
### Home page
![Home page](./.about/screenshot.png)### Basket
![Basket](./.about/screenshot2.png)## Installation
- Clone the repository
- Install dependencies with `npm install`
- Create credientials.json file in the root directory and add your MongoDB Atlas `databaseUser` and `databasePassword`
- Run the application with `npm start`
- After changing styles, run `npm run build-css` to compile Tailwind CSS and refresh with F5