Thomas Bonderup

Full Stack Film Applikation

Publiseret Apr 20, 20229 min læsning0 kommentarer

I dette projekt arbejdede jeg i et 4 personers team, hvor vi udviklede en full stack film applikation til at søge og bookmarke film fra IMDb. Applikationen er designet fra bunden med en PostgreSQL database, backend og en single page application til frontend.

Full stack movie application with IMDb data

Link til kode:
https://github.com/ThomasBonderup/RAWDATA-project-group-1 https://github.com/ThomasBonderup/RAWDATA1-portfolio-subproject-2

Database design

Jeg var med til at udarbejde et relationelt database design med database normalisering og E-R-modeller til film applikationen.

ER-Diagram of full stack movie application

Database funktionalitet

Der blev udviklet database forespørgsel funktionalitet til at søge efter filmtitler, trigger functions til at gemme bruger forespørgsler i en søgehistorik tabel, udvidet søgefunktionalitet til at søge efter filmtitler baseret på titel, plot, karakterer og skuespiller, exact-match-forespørgsel med inverted indeks for at matche intersecting søgeord, VARIADIC arrays, søge rangering funktionalitet.

Applikationsdesign

Backend-systemet blev udviklet i ASP.NET Core med C#. Arkitekturen bestod af en lagdelt softwarearkitektur med et Web Service Layer udviklet i ASP.NET Core MVC til at levere et REST API, der kommunikerer med et Data Access Layer med Entity Framework gennem Data Transfer Objects for at få data gemt i en PostgreSQL-database, der kører på en server.

Der blev tilføjet pagination til REST API’et og grundlæggende it-sikkerhed for API’et med brugergodkendelse. Unit test og integrationstest blev brugt flittigt i projektet.

Single Page Application

Film applikationen blev designet som en Single Page Application (SPA) med funktionalitet udviklet i JavaScript og Knockout web-framework. Bootstrap blev brugt til UX.

Single page application for movie title page