This is the highest time to create something new on this blog;) – so after consultations with my family, we have decided to answer our main life issue: „What will be for dinner in following week?” in IT way.
Every week we have family gathering to plan dinners for the next week. Sometimes it is very difficult to think out what could be cooked the following week – because many dishes were repeated in the past weeks and we like eating every time something new or something which we had eaten before and we recall it as delicious.
As recently I had to learn new framework in Java- JavaSpringboot and new way of creating frontend – React, I would like to combine these two technologies in my pet project.
Project will consist of following architecture:
JavaSpringBoot will provide REST API via Controller to frontend in React. Service will operate BussinessLogic, which will be:
– providing list of all meals
– CRUD operations on meals
– providing list of randomly generated list of meals for next week
Additional requirement: meals cannot be repeated in incoming 2 weeks.
DAO – will provide basic operations on DB. DB for the sake of simplicity will be chosen as mysql engine.
DB will consist of several tables as:
- meal (id_meal,type, name, recipe, list of ingridients, CookBook for the recipe)
- week (id_week,nwy)
- meal_week (id_meal,id_week)
React frontend will be generated using React generator : https://api-platform.com/docs/create-client/react/ for administrative purposes. Main screen of application will be created individually as React(https://pl.legacy.reactjs.org/)+Typescript (https://www.typescriptlang.org/)+Less (https://lesscss.org/).
Method of deployment of this application – still in progress, considering:
– local kubernetes cluster or AWS EKS
– docker
– standalone Java server (Tomcat, Wildfly, JBoss?)
Of course project will be available on github like the rest of my projects;).