Naša spletna rešitev z recepti je zasnovana z namenom, da ljubiteljem kuhanja in kulinarike poenostavi proces iskanja, priprave ter raziskovanja jedi. Spletna rešitev je razdeljena na:
- Backend(Spring Boot): za povezavo z podatkovno bazo
- Frontend(React): uporabniški vmesnik
- Vid Bezget
- Patrik Bevc
- Jure Nadrah
Projekt je razdeljen na:
Narejen s Spring Boot.
-
/src/main/java: kjer so java paketi dao, rest, vao, kateri vsebujejo:
- ReceptiRepository
- ReceptiController
- Recepti
-
src/main/resources: kjer je je datoteka z aplikacijskimi konfiguracijami
- application.properties
Narejen z React strukturnim ogrodjem.
- frontend/src/: vsa logika frontend dela aplikacije
- frontend/public: staticna spletna strna, slike
- Java: V Javi standardi kodiranja vključujejo CamelCase za poimenovanje razredov, metode in spremenljivke.Prav tako je priporočljivo, da se uporabljajo komentarji za dokumentiranje in da so vrstice kode kratke ter pregledne.
- JavaScript: V JavaScriptu standardi kodiranja vključujejo uporabo camelCase za spremenljivke in funkcije. Poleg tega je priporočljiva uporaba dveh presledkov za zamik, dosledna uporaba zaklepajev
{ }in minimalno globalno področje za spremenljivke.
-
Potrebna programska oprema:
- Java(18 ali poznejša)
- Node.js
Priporoceni IDE:
- IntelliJ IDEA(latest)
- Visual Studio Code(latest)
-
Prenesen oz. kloniran repozitorij za prispevanje k projektu:
git clone https://github.com/pbevc03/RIS_project01.git -
Namescanje potrebne programsek opreme:
- Za backend: ob kloniranju repositorija bo spring boot že od začetka namešen.
- Za frontend: pa greste v direktorij
/frontend/src/in tam namestitenpm init -yin natonpm install express
-
Porti za pregled aplikacija:
- Backend:
localhost:8080 - Frontend:
localhost:3000
- Backend:
Nove funkcionalnosti pred objavo stestirajte.
Nove funkcionalnosti prav tako objavite na nov branch tako da lahko admin tega projekta pregleda te funkcionalnosti.
- Spring Boot(2.5.4 ali novejša)
- Maven(17 ali novejša)
- MySQL(latest)
- React
Naša spletna stran z recepti je ustvarjena za vse ljubitelje kuhanja, saj omogoča hiter dostop do preizkušenih receptov z jasnimi navodili in izpisom sestavin. Namen aplikacije je poenostaviti pripravo obrokov in uporabnikom omogočiti, da odkrijejo nove jedi in nadgradijo svoje kulinarično znanje.
Spletna stran združuje različne kuharske ravni, od začetnikov do izkušenih kuharjev, in ponuja raznolike recepte, prilagojene različnim prehranskim potrebam. Uporabnikom omogoča, da raziskujejo nove jedi, shranjujejo priljubljene recepte in delijo svoje nasvete.
Aplikacija je namenjena širokemu krogu uporabnikov, vključno s tistimi, ki imajo specifične prehranske zahteve, ter zaposlenim, ki iščejo hitre rešitve za pripravo obrokov. Primerna je za vsakogar, ki želi izboljšati svoje kuharske veščine in razširiti jedilnik.
Aplikacija poenostavi iskanje receptov glede na čas, sestavine in prehranske zahteve, s čimer uporabnikom prihrani čas pri načrtovanju obrokov.
Recepti - Navodila in sestavine za pripravo jedi.
- Jed – Končan produkt po izvedenih navodilih recepta
- Sestavine – Specifični izdelki, potrebni za pripravo recepta.
- Navodila - Koraki, ki jih uporabnik sledi za pripravo obroka.
- Uporabnik – Obiskovalec spletne strani, ki lahko išče in shranjuje recepte.
- Prehranske zahteve - Specifične prehranske potrebe (brez glutena, vegansko, brez laktoze ipd.).
- Kuharske ravni -Različne stopnje kuharskega znanja, npr. začetniki, srednje napredni, izkušeni.
- Shranjevanje receptov - Funkcija, ki omogoča uporabnikom, da shranijo priljubljene recepte za poznejšo uporabo.
- Priljubljeni recepti - Recepti, ki jih uporabnik označi kot priljubljene.
- Nasveti za kuhanje - Nasveti in triki za izboljšanje kuharskih veščin ali poenostavitev procesov.
- Kategorije jedi - Različne vrste receptov, kot so predjedi, glavne jedi, sladice, prigrizki ipd.
- Čas priprave - Ocenjen čas, ki je potreben za pripravo jedi.
- Iskalnik receptov - Orodje za iskanje receptov glede na določene parametre (čas priprave, sestavine, vrsta jedi ipd.).
-
Pregled receptov
Uporabnik lahko pregleduje recepte v aplikacije, ter razširi pregled receptov z uporabo iskalnika za določene besede (npr. vrsta jedi, imena sestavin). -
Ogled podrobnosti recepta
Uporabnik lahko ogleda podrobnosti izbranega recepta, kot so seznam sestavin, navodila za pripravo, predviden čas in zahtevnost. S tem je omogočen bolj poglobljen vpogled v recept, preden se uporabnik odloči za pripravo ali shranjevanje. -
Dodajanje receptov
Uporabnik lahko doda svoj recept v aplikacijo, vključno s sestavinami, postopkom priprave in dodatnimi informacijami. Ta funkcionalnost omogoča širjenje baze receptov in prispevek k skupnosti. -
Urejanje svojih receptov
Uporabnik ima možnost urejanja receptov, ki jih je sam dodal. S tem zagotavlja, da so njegovi recepti točni in posodobljeni. -
Brisanje svojih receptov
Uporabnik ima možnost brisanja receptov, ki jih je sam dodal. S tem lahko odstrani recepte, ki jih več ne želi deliti. -
Pisanje komentarjev
Uporabnik lahko oceni recept in pusti komentar, s čimer prispeva svoje mnenje ali nasvete za izboljšave. Komentarji in ocene so v pomoč drugim uporabnikom pri izbiri receptov ter izboljšajo interaktivnost in zanesljivost vsebine na platformi.
getIme():
• Ta metoda vrne ime recepta. Namenjena je za pridobivanje imena recepta.
getSestavine():
• Vrne sestavine, ki so potrebne za pripravo recepta. Omogoča dostop do teh sestavin za prikaz ali nadaljnjo obdelavo.
getNavodila():
• Vrne navodila za pripravo recepta. Ta metoda omogoča pridobitev informacij o tem, kako pripraviti jed.
setIme():
• Nastavi ime recepta. Omogoča uporabniku ali aplikaciji, da spremeni ime obstoječega recepta.
setSestavine():
• Dodajanje sestavin. To omogoča spreminjanje ali dodajanje novih sestavin receptu.
Metode:
- getIme()
- getSestavine()
- getNavodila()
omogočajo enostaven dostop do informacij o receptu.
Metode:
- setIme()
- setSestavina()
- setSestavine()
zagotavljajo fleksibilnost pri spremembah teh podatkov.
• dodajRecept(Recept recept): Uporabniku omogoča ustvarjanje novega recepta z dodajanjem podrobnosti, kot so naslov, sestavine in navodila.
• urediRecept(Recept recept): Uporabniku omogoča urejanje obstoječega recepta, ki ga je ustvaril.
• izbrišiRecept(Recept recept): Uporabniku omogoča brisanje recepta, ki ga ne želi več hraniti.
• shraniReceptMedPriljubljene(Recept recept): Doda recept na seznam uporabnikovih priljubljenih.
• napišiKomentar(String komentar): Uporabniku omogoča, da doda komentar ali oceno k določenemu receptu.
• izberiKategorijo(): Uporabniku omogoča izbiro kategorije za brskanje ali filtriranje receptov.
• dodajReceptMedPriljubljene(Recept recept): Doda recept na seznam uporabnikovih priljubljenih receptov.
• odstraniReceptIzPriljubljenih(Recept recept): Odstrani recept s seznama uporabnikovih priljubljenih receptov.
• iščiRecept(String input): Išče recepte na podlagi ključnih besed, ki jih vnese uporabnik.
• uporabiFiltre(String filter): Uporablja dodatne filtre (npr. kategorija, ocena) za zožitev rezultatov iskanja.
Dodana mapa z testiranjem na: /app/src/test
ReadMe file s porocilom: Go to unit_tests.

