Full description and requirements are located in Task.pdf
.
recipes-demo.mp4
Backend | Frontend | Database | Deployment |
---|---|---|---|
Java 17 | Typescript | MySQL | Docker + Docker Compose |
Spring Boot | React | Amazon EC2 | |
Lombok | React Query | ||
MapStruct | Jotai | ||
MUI | |||
Formik | |||
Yup |
- Prerequisites:
- Docker
- Open a terminal at the same path as
docker-compose.yml
. - Enter
docker-compose up
and wait for it to finish. - The react client should now be available at
http://localhost/
, and the server athttp://localhost:8081
.
Use the client interface and / or send api requests to the server.
URI | Method | what? |
---|---|---|
recipes/add | POST | Add a recipe (used for testing). |
recipes/get | POST | Submit a query and get resulting recipes. |
users/favorite-recipes/{userId} | GET | Get user's favorite recipes. |
users/favorite-recipes/{userId}/{recipeId} | POST | Add a recipe to user's favorite recipes. |
users/favorite-recipes/{userId}/{recipeId} | DELETE | Remove a recipe from user's favorite recipes. |