---
# System prepended metadata

title: Untitled

---

## 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)



