Osa | Git-projekti | Teknologiat | Integraatiot |
---|---|---|---|
Käyttöliittymä | dashboard-frontend | React, Typescript, AWS CDK | - |
Taustapalvelu | dashboard-backend | Node.js, Typescript, AWS SAM | PTV |
Termistö
Suomeksi | Englanniksi | Selitys |
---|---|---|
Palvelutietovaranto | PTV | |
Palvelukokonaisuus | Service collection | Käsin valittu joukko PTV:n palveluita |
Palvelu (PTV:n) | Service | Kokonaisuus, joka sisältää erilaisia palvelukanavia |
Palvelukanava | Service channel | Yksittäinen palvelu, esim. nettisivu tai toimipaikka |
Datan flow
Taustapalvelu ottaa vastaan palvelukokonaisuuksien id:tä ja tekee pyynnön Palvelutietovarannolle (PTV). PTV palauttaa näiden palvelukokonaisuuksien sisällöt. Taustapalvelu tarkistaa, löytyykö näille palvelukokonaisuuksille ylikirjoitus-jsonia. Jos löytyy, jsonissa määritetyt asiat ylikirjoitetaan datasta ennen palauttamista käyttöliittymälle. Esimerkiksi palvelukokonaisuudella ei ole nimeä tai otsikkoa PTV:ssä joten sellainen täytyy antaa ylikirjoitus-jsonilla.
Käyttöliittymä
Käyttöliittymä on toteutettu React-sovelluksena. Pyynnöt taustapalvelulle välitetään käyttäen SWR-kirjastoa joka mm. vastaa datan tallettamisesta välimuistiin.
Taustapalvelu
Kotinäkymän taustapalvelu pohjautuu Serverless-arkkitehtuuriin. Kotinäkymän taustapalvelu käyttää Palvelutietovarantoa (PTV). PTV:n API-avaimet haetaan AWS:n Secrets Managerista env.json -tiedostoon josta ne annetaan ajoympäristöön. Poikkeuksena muista projektin taustapalveluista, Kotinäkymän taustapalvelu käyttää AWS SAM:a.
Julkaiseminen
Sekä käyttöliittymä, että taustapalvelu hyödyntää GitHubin Actions-työkalua julkaisujen tekemiseen.