05 Backend API
This portfolio project will be focused on creating the backend for a website. That means creating an API with endpoints that is connected to the backend
Projects
You can either create your own website or choose one of the two projects we have described below. Portfolio projektet skal afleveres individuelt
☕️ Hvilken cafe skal jeg studere i?
Hjemmesiden skal kunne hjælpe folk med at finde en cafe at studere i
Problemet
Det er svært at finde den rigtige cafe at studere i. Nogle cafeer er små andre store, nogle er hyggelige, andre billige. Som bruger er det svært at finde det helt rigtige sted at studere
Fx kan det være man leder efter en cafe med wifi, hyggelig musik og god kaffe, eller måske vil man bare finde en cafe der er stille og med billig mad.
Krav til backenden
Database
Databasen skal understøtte at man som bruger kan favorite nogle cafeer. Derfor skal der skal være minimum 3 tabeller:
cafes
,favorites
ogusers
API
Der skal være et endpoint til hver entitet:
cafes
ogusers
hvor alle entiteter bliver returneretFx
/cafes
returnerer alle cafeer i databasen
Der skal være et endpoint til hver entitet:
cafes
ogusers
hvor en specifik entitet bliver returneretFx
/cafes/1
returnerer cafeen der har id 1
Man skal kunne filtrere cafeer med query parameters.
Fx
/cafes?city=copenhagen
skal returnere et array af cafeer der ligger icopenhagen
Der skal være et endpoint hvor man opretter en ny cafe og en ny bruger
Hvilke attributter en cafe og en bruger skal have må i selv bestemme
I må meget gerne udvide funktionaliteten af backenden. Fx hvad hvis en bruger kunne favoritte en cafe. Måske kunne man tilføje pladser i cafeen osv. osv.
📸 Instagram spots
Denne verden er fyldt med utroligt flotte spots. Hvis man gerne vil finde flotte spots at tage billeder af til instagram, kan det være svært. Hvor skal man gå hen og hvor hvornår skal man være et sted. Det skal den her hjemmeside hjælpe med.
Et eksempel kunne være at man på hjemmesiden kan se at man skal tage til Bispebjerg Kirkegård i foråret når kirsebær træerne springer ud
Problemet
Som Instagram bruger vil man gerne tage flotte billeder, men hvor, hvornår og i hvilken retning præcis skal man tage dem?
Krav til backend
Database
Databasen skal understøtte at man som bruger kan tilføje billeder. Derfor skal der være minimum 3 tabeller:
spots
,images
ogusers
API
Der skal være et endpoint til hver entitet:
spots
,images
ogusers
hvor alt bliver returneret.Fx
/spots
returnerer alle spots i databasen
Der skal være et endpoint til hver entitet:
spots
,images
ogusers
hvor en specifik entitet bliver returneret.Fx
/spots/1
returnerer det spot der har id 1
Man skal kunne filtrere spots med query parameters
Fx
/spots?season=winter
Der skal være et endpoint hvor man opretter et nyt spot
Hvilke attributter de forskellige entiteter skal have må i selv bestemme. Når i gemmer billeder skal i gemme url'en til hvor billedet ligger online!
I må meget gerne udvide funktionaliteten af backenden. Fx hvad hvis en bruger kunn favoritte et spot
eller måske dele spots med andre brugere, hvordan ville det se ud på backenden?
✍️ Dit projekt her
Man må gerne lave sit eget projekt. Så længe der er en database, et api og minimum 2 entiteter med tilhørende endpoints
Afleveringer
Krav til aflevering
Github link til backend repo
Sql fil i Github repositoriet
Link fronteraflevering her - Skal aflevers inden d. 3/12 kl 23:59
Fokus i opgaven er på koden. Hvis i får det deployet så flot. Hvis ikke, så gør det ikke noget.
Last updated