Cool T-shirts is a web application for an online t-shirt store. The site allows users to browse, add to cart, and purchase t-shirts. Administrators can manage products and users.
- Users: User registration and login using JSON Web Tokens (JWT).
- Products: Administrators can add, edit, and delete products.
- Purchases: Add products to cart and checkout via PayPal.
- Security: Password encryption, .PEM certificate files for secure data transmission.
- Profile Management: Users can upload a profile image and edit their profile.
- Client-side Validation: User-friendly validation on the client-side.
- Server-side Validation: Router validation on the server-side.
- Error Handling: Middleware error handling for all server-side errors.
- Front-end: React, @syncfusion/ej2-react-inputs for data input.
- Back-end: Express, JSON Web Tokens for authentication.
- Database: MongoDB
- Others: Multer for file uploads, http-errors for error handling.
- Node.js
- npm (Node Package Manager)
- MongoDB
-
Clone the repository:
git clone https://github.com/Roman-Manzhelii/Cool-T-shirts.git cd Cool-T-shirts -
Install dependencies:
- For the client:
cd client npm install - For the server:
cd server npm install
- For the client:
-
Run the application:
npm start
-
Registration and Login:
- Register a new user or log in with an existing account.
-
Browse Products:
- View available t-shirts and add them to your cart.
-
Checkout:
- Proceed to checkout and pay via PayPal.
- React Components: All client-side code is implemented using React components.
- Node/Express: Used as the server-side technology.
- RESTful API: Routers implement a RESTful API for database access.
- MongoDB: Utilized for database management.
- Management of products with stock levels.
- Sorting, searching, and filtering of products.
- Multiple product images for each product.
- Shopping cart functionality.
- Payment processing.
- User login with JWT and .PEM certificates for session persistence.
- Profile image upload.
- Client-side validation.
- Server-side router validation.
- Middleware error handling.
- Localhost deployment.
- View products
- Create new products
- Edit products
- Change product stock levels
- Delete products
- View users
- View users' previous purchase history
- Delete users
- View products
- Purchase products
- View previous purchase history
- Edit user profile and change profile image
- View products
- Register a new user account and set up a new user profile
Developed by:
For more information or questions, please contact via email: romamanzheliy1@gmail.com.


