Full-Stack Abschlussprojekte Batch #28

von Ruben Villalon

Student programmiert eine App

Flower Empower - Ein Freiwilligenmanagement-System (Vollzeit)

Studenten: Emir Murati, Tim Groshaupt, Valdilene Siqueira, Josie Fessey, Pooja Kumbhar


Flower Empower Homepage


Aktuelles Problem

Flower Empower ist eine Wohltätigkeitsorganisation in Santa Barbara, die seit über 10 Jahren übrig gebliebene Blumen an kranke, trauernde und ältere Menschen in der Gemeinde liefert. Jeden Samstag kommen Freiwillige zusammen, um die Blumen zu Sträußen zu arrangieren oder sie an Bedürftige zu liefern.

Das aktuelle Datenbanksystem zur Koordination der Freiwilligen ist jedoch sehr zeitaufwändig und pflegeintensiv. Derzeit müssen die Vorstandsmitglieder der Organisation freitagabends manuell E-Mail-Erinnerungen an alle Freiwilligen senden, die Routen der Fahrer mit Google Maps planen und einen Tagesüberblick in einer Excel-Tabelle erstellen. Die Freiwilligen melden sich am Tag der Lieferung an und ab, und ihre Freiwilligenstunden werden ebenfalls manuell von den Vorstandsmitgliedern in die Datenbank eingetragen.

Flower Empower login page


Lösung

Dieses Projekt zielt darauf ab, ein Online-Portal für Freiwillige zu erstellen, um diesen Prozess zu optimieren. Die Ehrenamtlichen melden sich in ihrem Konto an, wählen ein Datum für ihre Freiwilligenarbeit, und die Bestätigung wird automatisch per E-Mail verschickt. Wenn sie Fahrer sind, erhalten sie eine geplante Route und die ungefähre Fahrzeit. Als Blumenstrauß-Binder erhalten sie detaillierte Anweisungen, wie sie die Blumen arrangieren sollen. Ein Tagesplan wird automatisch für das Personal erstellt, und die ehrenamtlich geleisteten Stunden können direkt von den Freiwilligen aktualisiert werden.

Unser Ziel ist es, die wiederholte Vorbereitungszeit am Freitag für das Personal zu reduzieren, ihre Wohltätigkeitsorganisation zu skalieren und bei Bedarf auf weitere Routen und Städte auszudehnen.

Flower empower - Events


Technische Features

  • Geoapify API: Ermittelt die exakten Koordinaten der Adressen in der Liste, findet die besten Routen und teilt sie den Fahrern zu.
  • Automatisierte E-Mail-Erinnerung: Wird mit Python gesendet, sobald der Benutzer ein Datum für die Freiwilligenarbeit auswählt.
  • Datenbankintegration: Wählt Daten aus der ursprünglichen Tabelle aus und lädt sie in das Online-Portal hoch.


Technologie-Stack

Die Website wurde mit React und JavaScript für ein dynamisches Frontend entworfen, kombiniert mit Django und Python im Backend für eine robuste Datenverarbeitung. Wir nutzen Docker für die Containerisierung und PostgreSQL für die Datenbank. Alles wird auf DigitalOcean gehostet, um eine zuverlässige Leistung zu gewährleisten, und GitLab wird für ein effizientes Versionskontrollen - Management verwendet.


Ausblick In Zukunft möchte Flower Empower folgende Funktionen implementieren:

  • Eine funktionsfähige Karten-App, damit jeder Fahrer seine Route herunterladen und bei der Lieferung verwenden kann, sowie eine große Karte mit allen Routen in der Personalübersicht.
  • Automatische Löschung von Freiwilligen / Empfängern, wenn sie über ein Jahr lang keine Blumen geliefert bekommen oder keine Freiwilligenarbeit mehr leisten.
  • Online-Datenbank der Blumenlieferanten, um sowohl die Abholung als auch die Lieferung zu optimieren.
  • Empfänger können gewünschte Lieferzeiten und Anweisungen für die Lieferung hinzufügen (besonders wichtig bei Lieferungen an Krankenhäuser oder Pflegeheime).
  • Fortgeschrittene und komplexe Analysen der gesammelten Daten mit der Ergänzung von KI.
  • Spanische Sprachoptionen (46 % der Menschen in Santa Barbara sind Hispanics).
  • Foren für Freiwillige, um über Lieferung  / Blumenstraußgestaltung zu diskutieren, Ratschläge auszutauschen und zusammenzuarbeiten.
 

Panelista - Verbindung von Veranstaltern mit vielfältigen Referenten (Vollzeit)

Studenten: Ali Emre Kuzucu, Sabin Tamang, Miren Bengochea, Margarita Ferreira


panelista
 

Aktuelles Problem

Veranstalter müssen häufig Panels zu organisieren, welche unterschiedliche Meinung repräsentieren sollen. Dies ist sehr schwierig, da es wenig Plattformen gibt, auf welche sie zur Recherche von Sprechern zugreifen  können. Das führt dazu, dass auf der Bühne nicht genug unterschiedliche Meinungen vertreten sind. Dadurch werden die Diskussionen weniger vielfältig und erreichen nicht alle Zuschauer, besonders jene mit unterschiedlichen Hintergründen. Es ist zeitaufwändig und schwierig, diverse Sprecher zu finden, und die aktuellen Plattformen helfen nicht wirklich, unterrepräsentierte Stimmen einzubeziehen.


Lösung

Panelista behebt diese Probleme, indem es eine Plattform bereitstellt, auf der sich sowohl Veranstalter als auch Referenten registrieren können. Veranstalter können manuell in der Datenbank nach passenden Referenten suchen oder einen Chatbot nutzen, um geeignete Sprecher zu finden. Wenn ein spezifischer Referent nicht gefunden wird, können Veranstalter eine Veranstaltung erstellen, die auf der Event-Seite angezeigt wird, um Referenten einzuladen, sich zu bewerben. Dies vereinfacht den Prozess der Suche und Buchung vielfältiger Referenten und sorgt für eine breitere Repräsentation auf der Bühne.

Find a speaker page


Beschreibung

Panelista zielt darauf ab, die Diversität bei allgemeinen Veranstaltungen zu erhöhen, indem es eine öffentliche Datenbank von Referenten aus verschiedenen Hintergründen und mit unterschiedlichen Erfahrungsstufen anbietet. Durch die Vereinfachung der Suche und Buchung von vielfältigen Panelisten sorgt Panelista dafür, dass mehr Stimmen gehört und mehr Perspektiven vertreten werden. Die Plattform steht allen Referenten offen, ohne Gebühren oder Prüfungen, und ermöglicht es ihnen, die Kontrolle über ihre Teilnahme an Veranstaltungen zu übernehmen.

Find an event


Technische Features

  • Referentenprofile: Referenten können detaillierte Profile erstellen, die ihre Erfahrung, Expertise und Themengebiete umfassen.
  • Suche & Filter: Veranstalter können nach Referenten mit verschiedenen Filtern suchen oder ihre Bedürfnisse einem Chatbot beschreiben.
  • Event-Listings: Veranstalter können Veranstaltungen auflisten, die Referenten benötigen, und interessierte Referenten können sich bewerben.
  • Benachrichtigungen: Veranstalter erhalten E-Mail-Benachrichtigungen, wenn sich Referenten für ihre Veranstaltungen bewerben.
  • Gemeinschaftlich getriebene Datenbank: Die Plattform stützt sich auf eine gemeinschaftlich getriebene Datenbank, um stets aktuell und umfassend zu bleiben.


Technologie-Stack

  • Frontend: React, Redux
  • Backend: Python, Django
  • Styling: Tailwind CSS
  • Datenbank: PostgreSQL
  • Containerisierung & Deployment: Docker, DigitalOcean
  • CI/CD: GitLab CI/CD
  • Chatbot: DocsBot


Ausblick

  • Referentenbewertungen: Ermöglichen, dass Veranstalter die Referenten, die sie gebucht haben, bewerten und rezensieren, um die Glaubwürdigkeit und Zuverlässigkeit der Referentenprofile zu erhöhen.
  • Upgrade des Chatbots: Integration eines kostengünstigeren und anpassungsfähigeren Chatbots, um den Arbeitsablauf der Veranstalter zu verbessern.
  • Admin-Dashboard: Entwicklung eines Admin-Panels für App-Statistiken und Einblicke, um bessere Verwaltungs- und Analysefunktionen bereitzustellen.
  • Mobile & Responsive Design: Erstellung einer mobilen Version der App und Sicherstellung der Reaktionsfähigkeit auf allen Geräten, um ein nahtloses Benutzererlebnis zu bieten.
Durch kontinuierliche Weiterentwicklung und das Hinzufügen neuer Funktionen strebt Panelista an, die bevorzugte Plattform für Veranstalter zu bleiben, die vielfältige und ansprechende Panels erstellen möchten, und letztlich zu mehr Gerechtigkeit und Repräsentation im öffentlichen Diskurs beizutragen.


HR Genie - Nahtlose Betreuung Ihrer Teammitglieder (Teilzeit)

Studenten: Daniele Scopece, Luka Cafuta, Alexander Stöhr, Quentin Lamare, Beate Skarsta

HR Genie Login page


Aktuelles Problem

Das Management der Abwesenheitszeiten von Teammitgliedern (bei Krankheit, Mutterschaftsurlaub oder Urlaub) kann für viele Manager/innen mühsam und zeitaufwändig sein, vor allem wenn sie eine nahtlose Dienstleistungskontinuität gewährleisten wollen. Zudem ist es häufig schwierig, den verbleibenden Urlaubsanspruch jedes Einzelnen nachzuvollziehen oder verdächtiges Verhalten (z.B. Verbindungen zwischen Urlaub und Krankheitszeiten) zu erkennen. Auch die Genehmigung von Kursen und Schulungen für Mitarbeiter, um deren Produktivität zu fördern und sie an das Unternehmen zu binden, kann problematisch sein.


Lösung

HR Genie soll die zentrale Anlaufstelle für die nahtlose Verwaltung der Abwesenheiten und Schulungen von Mitarbeitenden, Managern und HR-Personal in kleinen, mittleren und großen Unternehmen sein. Es fördert die Interaktion zwischen Managern und Mitarbeitern, die nach Abteilungen und Teams unterteilt sind.

HR Genie - Homepage


Beschreibung

Jeder Mitarbeitende stelle seine Anfrage für Abwesenheiten (Urlaub, Krankheitsurlaub, Mutterschaftsurlaub) mit dem entsprechenden Beginn- und Enddatum ins System. Findet sich eine interessanten Schulung wird diese in Form einer Beantragung inklusive der genauen Details (Träger, Kosten, Datum, Dauer) eingestellt.

Der/Die direkte Vorgesetzte des betreffenden Mitarbeitenden hat Einsicht und kann den Kalender mit Abwesenheiten des gesamten Teams sowie die Urlaubs- bzw. Schulungsanträge genehmigen oder ablehnen. Diagramme ermöglichen es, die Anfragen, die verbleibenden Urlaubstage und die Schulungen auf ansprechende Weise zu visualisieren.


HR Genie - Manager Items page


Technische Features

  • Gespeicherte Informationen aller Mitarbeiter: Kontaktdaten, verantwortlicher Manager, Teammitglieder, Arbeitszeiten usw.
  • Die Dauer jeder Abwesenheit wird unter Berücksichtigung der tatsächlichen Arbeitszeiten jedes Mitarbeiters berechnet.
  • Der Code ermöglicht die nahtlose Implementierung der Unternehmenshierarchie: Manager haben eigene Vorgesetzte. 
  • Flexible Abwesenheitszeiten, die auch wenige Stunden umfassen können.
  • Aufteilung der Teammitglieder nach Organigram: Die Person, die für die Genehmigung ihrer Abwesenheiten und Schulungen verantwortlich ist.
  • Verschiedene Ansichten für Mitarbeiter/innen, Teammanager oder Unternehmensadministratoren.
  • Der Managende überprüft die zusammengefassten Informationen in ansprechenden Diagrammen.
  • Kalenderansicht zur Übersicht über die Abwesenheiten auf Team- oder Unternehmensebene.
  • Liste der Anfragen für Abwesenheiten und Schulungen, die nur für den zuständigen Manager sichtbar ist.

HR Genie - Calendar page

Technologie-Stack

  • HR Genie nutzt modernste Technologie in der Front- und Back-End-Entwicklung, um kontinuierliche Verbesserungen über die Versionen hinweg zu gewährleisten.
  • Das Backend nutzt die neuesten Django REST-Frameworks, integriert mit PostgreSQL, um vertikale und horizontale Skalierung zu ermöglichen, und Digital Ocean für das vielseitige Hochladen von Dokumenten. Die komplexen Berechnungen (z.B. Dauer der Abwesenheiten) werden im Backend durchgeführt, und die Endpunkte sind so gestaltet, dass die Informationen einfach im Frontend dargestellt werden können.
  • Das Frontend nutzt React und verschiedene Tools wie React-Router, React-Redux, Axios, Styled-Components, Recharts und React-Big-Calendar.
    Sowohl das Frontend als auch das Backend profitieren von einer CI/CD-Pipeline über GitLab.

HR Genie - Manager Dashboard


Ausblick

Die zukünftigen Versionen werden zusätzliche Visualisierungen für alle Unternehmensmitglieder umfassen (z.B. einen Schichtkalender) und eine höhere Flexibilität sowohl für den Unternehmensadministrator als auch die Mitarbeitenden bieten. Die Angestellten werden in der Lage sein, den Fortschritt ihrer Schulungen zu teilen. E-Mail-Benachrichtigungen über neue Anfragen sowie den Statuswechsel von Genehmigungen werden ebenfalls entwickelt. Die Flexibilität zur Änderung der Mitarbeiterinformationen (Arbeitszeiten) wird ebenfalls implementiert. Eine Web-App für Mobiltelefone ist ebenfalls in der Entwicklungspipeline.

Schlussworte

Bringe deine Karriere mit dem bahnbrechenden Full-Stack Bootcamp der Constructor Academy auf neue Höhen. Mach dich bereit für eine Zukunft voller Möglichkeiten. 
Die Constructor Academy ist darauf ausgerichtet, angehende Entwickler wie dich zu ermächtigen, dein wahres Potenzial zu entdecken und den Weg für unübertroffenen Erfolg zu ebnen. Begleite uns auf diesem aufregenden Abenteuer und lasst uns gemeinsam die Zukunft der Full-Stack-Entwicklung gestalten.

Möchtest du mehr über die Constructor Academy und technikbezogene Themen lesen? Dann finde hier weitere spannende Blogbeiträge.

Mehr Infos
Blog