## Project Decripsion You are wondering, worried about how to design a fashion style to go to a party, a picnic or work. This makes you really headache and takes a lot of time to prepare. My website fashionforeveryone.com will solve all these problems for you ## User Story fashionforeveryone.com is a website about a clothing store, here we provide fashion clothing suitable for every activity for every person. - As a shopper, you can select and buy items - As a store manager, you can edit, upload, get , delete your items ### Authentication - As a user, I can sign in with my email and password. - As a user, I can register a new account by name, email and password. - As a user, I can stay signed in after refreshing the page ### Users - As a user, I can filter list of items - As a user, I can see list of items. - As a user, I can update my profile. ### Store Manager - As a store manager, i can get list of items. - As a store manager, i can edit item. - As a store manager, i can create new item. - As a store manager, i can delete the item. ### Items - As a shopper and store manager, i can get list of items. - As a shopper and store manager, i can get detail of item. ## API Endpoints ### Auth APIs ``` * @route POST /auth/login * @description Login with username and password * @body {email, password} * @access Public ``` ### Shopper APIs ``` * @route POST /users * @description Register new user * @body {name, email, password} * @access Public ``` ``` * @route GET /users/me * @description Get user Information * @access Login required ``` ``` * @route PUT /users * @description Update user Information * @body {name, age, phoneNumber, address} * @access Login required ``` ``` * @route PUT /users/additems * @description Add item to user's cart * @access Login required ``` ``` * @route GET /users/payhistory * @description Get transaction history, payment * @access Login required ``` ### Transaction, Payments APIs ``` * @route GET /payment * @description Get details of transaction and payment information * @access Login ``` ``` * @route POST /payment * @description Post transaction and payment information of users * @access Login ``` ### Items APIs ``` * @route GET /items?page=1&limit=10 * @description Get item with pagination * @access Public ``` ``` * @route GET /items/:id * @description Get detail of item * @access Public ``` ## Entity Relationship Diagram ![diagram image](https://i.imgur.com/PrvXXeh.png)