Skip to content

Dallair220/studium

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

League Ladder - Bachelorarbeit TH Köln

Das "League Ladder"-Projekt ist eine Webanwendung, die für das Praxisprojekt an der TH Köln entwickelt wurde. Es handelt sich um eine Plattform, die es Spielern von "League of Legends" ermöglicht, ihre Ranglistenpositionen zu verfolgen und zu vergleichen.

Die Anwendung nutzt eine Express.js-Backend und ein React-Frontend. Die Daten der Spieler und ihrer Ränge werden in einer MongoDB-Datenbank gespeichert und können über die bereitgestellten APIs abgerufen werden.

Im Rahmen der Bachelorarbeit soll Next.js hinzugefügt werden und die Performance-Vorteile des serverseitigen Renderings (SSR) analysiert werden.

Die Live-Version der Anwendung kann unter diesem Link aufgerufen werden: https://praxisprojekt-cf89137f47c5.herokuapp.com/

Technische Aspekte

  • Node.js und Express.js: Verwendet für den Aufbau der serverseitigen Logik, die Handhabung von Routen und HTTP-Anfragen (Controller).
  • MVC-Architektur: Das Projekt folgt dem Model-View-Controller (MVC) Designmuster.
  • MongoDB und Mongoose: NoSQL-Datenbank, verwendet für die Datenspeicherung und Schemavalidierung. Unterstützt CRUD-Operationen auf Datenbankeinträge.
  • Benutzerauthentifizierung: Implementierung von Google OAuth2 und lokaler Authentifizierung mit Passport.js. Bei der lokalen Strategie wird das Passwort-Hashing mit Bcrypt umgesetzt.
  • Best Practices: Helmet für Sicherheit, Compression für Leistung, und Rate Limiting gegen DoS-Angriffe.
  • React: React wird für das User Interface genutzt.
  • Next.js: Wird für serverseitiges Rendern (SSR) und statische Seiten-Generierung (SSG) verwendet.
  • Deployment: Die Anwendung wird auf Heroku gehostet. Das Verzeichnis /client/dist, enthält den produktionsbereiten clientseitigen Code.

Lokal ausführen

  1. Klone dieses Repository auf Ihren lokalen Rechner
  2. Führe npm install innerhalb von /studium aus
  3. Erstelle eine .env-Datei und setze die folgenden Variablen:
  4. Wechsel zu /client und installier ebenfalls mit npm install
  5. Erstelle den Build des Frontends mit npm run build
  6. Starte den Server mit npm run serverstart, innerhalb des root-Ordners
  7. Besuche die Website im Browser unter http://localhost:3000/

Screenshots

image

image

Live Website

https://praxisprojekt-cf89137f47c5.herokuapp.com/

Autor

Paul Hermann
[email protected]

About

League Ladder - Projekt an der TH Köln

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published