Launch OST eSports Webseite
Nach einer langen on/off Phase der Entwicklung ist nun endlich unsere Webseite in einem ersten Entwurf fertiggestellt. Natürlich ist sie bei weitem nicht fertig, aber alle Feature welche als “notwendig” eingestuft wurden sind fertiggestellt. Wir haben noch einige weitere Dinge geplant, wie zum Beispiel die Möglichkeit Teams selbst zu verwalten (und die damit verbundene Registrierungs- und Login-Maske).
Feedback und Feature-/Änderungswünsche sind gerne gesehen und können in unserem Discord im Channel “feedback” verfasst werden.
Nun zu mehr Technischen Themen
Die Webseite ist mit folgendem Techstack entwickelt worden:
Frontend Framework | Qwik |
CSS-Framework | Tailwind |
CI/CD | Vercel |
Backend | Pocketbase |
Server | Ubuntu 22.04.1 (Von OST zur Verfügung gestellt) |
Die Entscheidung für Tailwind und Vercel sind ziemlich selbsterklärend, wenn man die beiden kennt. Qwik hingegen weniger. Das Frontend Framework habe ich ausgesucht, weil es komplett anders funktioniert als die grossen drei (React, VueJs und Angular). Wer sich dafür interessiert, wie solche Frameworks im inneren Funktionieren und sich wundert, wie Qwik das ganze neu erfinden konnte, kann es hier nachlesen.
Pocketbase habe ich gewählt, weil die Seite hauptsächlich nur über simple CRUD Operationen mit dem Server/der Datenbank kommuniziert. Vielleicht fragst du dich jetzt: “Wieso nicht Supabase oder Firebase?” und die Antwort darauf ist “Open-source”. Naja, sie ist nicht nur open source. Firebase habe ich nicht gewählt, weil es nicht open source ist. Supabase hingegen habe ich nicht gewählt, weil es laut Erfahrungsberichten eine Qual ist, wenn man es selbst hosten möchte. Und wenn man es nicht selbst hostet, ist der Dienst auch nur mittelmässig gut, sofern man nicht monatlich bezahlt. Pocketbase hingegen ist komplett portable und in kürzester Zeit aufgesetzt. Darüber hinaus kann man es nicht nur standalone, sondern auch als Go Framework verwenden, was es erstaunlich mächtig macht.
Zum Abschluss: Wer sich für das Projekt interessiert und als Entwickler mitwirken möchte ist sehr willkommen. Der gesamte code ist auf GitHub öffentlich sichtbar und ihr könnt ihn jederzeit Forken und daran Entwickeln. Ich versuche darauf zu achten issues zu maintainen und für Neulinge verständlich zu formulieren.
Dokumentiert ist zurzeit kaum was, aber auch das ist in einem issue geplant :)