# Find Home Web
## Fundamental feature:
### Frontend:
- Kelly starts up a React App and clean it up.
- Kelly creates routes like LandingPage, Homepage, Not Found page, Login Page.
- Kelly creates general layouts and content for all 4 pages.
- Kelly creates a form component in Login Page.
- Kelly creates layouts for the Homepage with 3 main components: Product List, Search App Bar, and Pagination.
### Backend:
- Kelly creates an Express - Mongo server.
- Kelly creates a User modal with the required information (name, email, password).
- Kelly creates register/ login API routes for /users.
- Kelly creates routes to CRUD (Create (POST), Read (GET), Update, Delete) users.
- Kelly tests authentication with Front-end.
- Kelly designs a Product schema in a paper, that list out: ...
> * ...What information a product should have: Title,Image, Category, Price, Address, SocialInfo, Infomation, Descriptions, Status, Author.
> * How some attributes could be related to each other.
> * What fundamental actions buyers can do with products: Category Filter, Price Filter, address filter
> * Data from web
- Kelly actually codes the Product Schema and creates the Product modal with the required information above.
- Kelly creates routes to CRUD products. (without any authentication for now)
### Testing:
- To test the app: Kelly fetches data from the backend via the localhost server and renders the UI of all products.
## Core features:
### Frontend:
- Kelly creates layouts, content, and components for the User Profile & Account Setting Page - UI without testing.
- Kelly creates layouts, content, and components for Upload Product Page - UI without testing.
- Kelly creates layouts, content, and components for Detail Product Page - UI without testing
- Kelly creates layouts, content, and components for Favorite Product Page - UI without testing.
- Kelly continues to connect users’ interaction throughout frontend and backend with API service and Redux, for each page
### Backend:
- Kelly modifies all the /products CRUD with Authentication. At the same time, testing via Thunder Client.
- Kelly deploys Backend on Railway.
### Testing:
- Finally, Kelly tests the interaction between the frontend and backend with the Railway link.
- Kelly looks for bugs from the front-end and fixes them.
- Kelly deploys the front-end on Netlify.
- Kelly submits the project and gets ready to be a Web Developer.
## Core stuff:
- Kelly wants to show the location of the motel room via the Google Map API
- Kelly wants to show the weather in many cities via the Weather API.
- Kelly consults his mentor for guidelines, as well as research, and read through the docs by himself.
- 