Technische keuzes en architectuur
Abacus zal worden gedraaid op een gesloten netwerk zonder internettoegang. De backend draait op één machine en kan via de webbrowser (frontend) worden benaderd vanaf andere computers op het netwerk.
Voor de frontend wordt TypeScript gebruikt, een meer uitgebreide versie van JavaScript met typing. Voor de gebruikersinterface wordt de populaire library React gebruikt.
De backend wordt gemaakt met Rust, een high-level programmeertaal waarmee je efficiënt kunt programmeren. Het unieke systeem van 'ownership' in Rust voorkomt geheugenfouten, en de taal heeft een 'strict type system' waardoor minder bugs ontstaan. Ook is dit een populaire, open-source programmeertaal met een grote community.
Voor de database wordt SQLite gebruikt. Deze library is populair, lichtgewicht en gebruiksvriendelijk voor developers, en bovendien is SQLite een 'zero-configuration database'. Dit betekent dat installeren niet nodig is, zodat de developer meteen aan de slag kan.
Voor meer informatie over onze keuzes en de onderbouwingen hiervan lees je het document Overwegingen talen en frameworks.
Voor de architectuur kun je beginnen bij het Overzicht van de softwarearchitectuur.
De UI/UX designs vind je in onze Figma.