Webauftritt & App für den Dartclub Mering/St. Afra
Als aktives Mitglied im Dartclub Mering/St. Afra wollte ich die Webpräsenz modernisieren und zudem die bisher aufwändige (Daten-)Pflege erleichtern.
Die Anforderungen⌗
- Nutzbar als Webauftritt & gleichzeitig als App
- modernes Design
- modularer Aufbau
- gute Performance
- Datenbank für spätere Auswertungen
Das Ergebnis ist öffentlich und kann unter https://www.dart-mering-st-afra.de/ angesehen werden
Tech-Stack : Front-End⌗
Auszeichnungssprache | HTML5 |
Designsprache | Sass |
Programmiersprache | Typescript |
Web-Framework | Angular |
Für das Front-End habe ich mich für das SPA-Framework Angular entschieden. Hintergrund hierfür ist die Tatsache, dass die die Software als Webauftritt und gleichzeitg als App genutzt werden soll.
Um dies zu ermöglichen, wurde die App als sogenannte Progressive Web App umgesetzt und liefert so automatisch das Look & Feel einer nativen Applikation.
Tech-Stack : Back-End⌗
Programmiersprache | Rust |
API | actix |
Datenbank | SQlite |
Webserver | nginx |
Hosting | Linux |
Für das Back-End entschied ich mich für die Programmiersprache Rust sowie das Web-Framework ACTIX. Auslöser hierfür ist die Tatsache, dass das Hosting auf einem Raspberry PI stattfinden soll und ich mir hierdurch eine gute (bzw. ausreichende) Performance erhoffte.
Durch die schmale Hardwareausstattung erschien mir diese Wahl logisch.
Anzahl Codezeilen⌗
Language | files | blank | comment | code |
---|---|---|---|---|
TypeScript | 237 | 1689 | 2275 | 8448 |
Rust | 20 | 718 | 283 | 4808 |
HTML | 64 | 247 | 65 | 3779 |
Sass | 79 | 692 | 35 | 3032 |
SVG | 29 | 14 | 5 | 1151 |
JSON | 588 | 0 | 0 | 1014 |
SQL | 65 | 92 | 123 | 376 |
Windows Module Definition | 1 | 0 | 0 | 340 |
Text | 6 | 74 | 0 | 213 |
Markdown | 3 | 25 | 0 | 148 |
JavaScript | 2 | 1 | 6 | 49 |
PowerShell | 1 | 7 | 0 | 43 |
TOML | 2 | 4 | 3 | 16 |
——– | ——– | ——– | ——– | ——– |
SUM: | 1097 | 3563 | 2795 | 23417 |
Bisher wurden >23k Zeilen Code geschrieben.
Entwicklungszeit: 50-70h
(zum heutigen Stand: 19.08.2022)
Impressionen⌗
Die Seite ist responsive
und so auf dem Desktop wie auch auf mobilen Geräten nutzbar.