UrbanMeet
Einführung
Bei modernen Social-Media-Plattformen dreht sich alles darum, unsere Augen auf den Bildschirm zu richten, um Aufrufe, Likes und Wiedergabezeit zu erhöhen. Indem wir darauf ausgelegt sind, uns mit der Welt jenseits zu verbinden, neigen wir dazu, den Kontakt mit der Welt um uns herum zu verlieren. Öffentliche Plätze wurden jetzt größtenteils geöffnet, um ihre ursprüngliche Kapazität aufzunehmen. Während sich die Welt wieder normalisiert, möchten Menschen jeden Alters zusammenkommen und die Natur genießen. Wäre es nicht praktisch, Orte zu finden, die für Veranstaltungen geeignet sind, an denen viele Menschen in der Gegend teilnehmen können? Geben Sie UrbanMeet ein.
Das Problem
Die meisten Event-Hosting-Plattformen zielen heute auf kommerzielle Events ab, die an ein großes Publikum und größere Veranstaltungsorte vermarktet werden. Die einfachen Leute haben oft Probleme, einfache Community-Events auf diesen größeren Plattformen aufzulisten, und sie gehen wahrscheinlich in den Auflistungskategorien verloren.
Die Lösung
UrbanMeet ist eine Plattform, auf der jeder Bekanntmachungen für die Ausrichtung von Veranstaltungen an öffentlichen Orten wie Parks, Stadien sowie Sport- und Gemeindezentren anbringen kann. Benutzer können Veranstaltungen in der Nähe veranstalten und entdecken: von einer Yoga-Sitzung im Park bis zu einem lokalen Cricket-Turnier. Veranstaltungen wie diese sind eine tolle Gelegenheit, den Zusammenhalt zu stärken und gemeinsam Spaß zu haben. Es können auch Aufklärungsveranstaltungen abgehalten werden, um gesellschaftliche Probleme anzusprechen.
UrbanMeet soll eine App sein, die der Community beim Organisieren und Teilen von Veranstaltungen helfen kann. Auf diese Weise bietet UrbanMeet eine optimierte Möglichkeit für Menschen, sich zu treffen, zu planen und an unterhaltsamen gemeinsamen Aktivitäten teilzunehmen.
Wie es funktioniert
Beim Besuch der Website wird Ihnen eine umfangreiche Karte angezeigt, Sie werden zu Ihrem aktuellen Standort geführt und sehen die Ereignisse in Ihrer Nachbarschaft und Stadt. Wenn nicht, können Sie auch unsere Suchleiste verwenden, um nach einem anderen Ort zu suchen, um Ereignisse an anderen Orten zu erkunden.
In unserem Veranstaltungsbereich können Benutzer Veranstaltungen in der Nähe erkunden und Veranstaltungsdetails anzeigen, z. B. wann sie organisiert werden, wie viele Personen erwartet werden und weitere Informationen. Sie können ein Ereignis auch als „Gefällt mir“ markieren und für später speichern. Auf die Markierung eines Ereignisses in der Leiste kann auch geklickt werden, um zu seiner Position zu gelangen.
Wir wollten, dass unsere Benutzer intuitiv erkunden können, deshalb schlagen wir öffentliche Orte in Ihrer Nähe vor, die für die Ausrichtung von Veranstaltungen geeignet sind, indem wir sie auf der Karte als Markierungen hervorheben. Nachdem Sie sich für einen Ort entschieden haben, können Sie eine Ankündigung für eine Veranstaltung aufhängen, die alle anderen sehen können.
Sie können auf die Schaltfläche „Meine Events“ klicken, um alle Ihre erstellten Events anzuzeigen. Wenn Sie jemals Ihre Meinung zu einem Ereignis ändern, können Sie ein Ereignis jederzeit in seinen Details bearbeiten. Oder löschen Sie ein Ereignis, wenn Sie dies wünschen.
Unter der Haube
Unsere Reise begann mit dem Wunsch, eine Anwendung für die Ausrichtung eines Sportturniers für unsere Freunde und Menschen um uns herum zu entwerfen. Um es für diejenigen, die nach Veranstaltungen suchen, besser auffindbar und zugänglich zu machen, dachten wir, wenn wir den Standort des Benutzers verwenden könnten, könnten wir besser Veranstaltungen in seiner Umgebung vorschlagen.
Dafür haben wir uns auf die Suche nach APIs gemacht, die uns den Standort von Parks und Stadien mit Koordinaten liefern könnten. Bei unserer Suche stießen wir zunächst auf OpenTripMap, das uns Standortdaten lieferte und es uns ermöglichte, unsere Anfragen nach unseren Bedürfnissen zu filtern. Da es unseren unmittelbaren Bedürfnissen entsprach, haben wir ein Datenbankschema für die Organisation von Veranstaltungen entworfen.
Um die Speicherung von Daten zu minimieren, haben wir uns dafür entschieden, die Standortdaten von der externen API einfach von unserem Backend zu reflektieren. Wir speichern unsere Standorte nur, wenn ein Benutzer sich dafür entscheidet, eine Veranstaltung an dem Standort zu erstellen.
Um unseren Benutzern die Möglichkeit zu geben, ihre Orte zu durchsuchen, benötigten wir eine API mit Vorwärts-Geokodierungssuche. Da wir mit unseren aktuellen API-Anforderungen unzufrieden waren, fanden wir eine raffinierte Autocomplete-API für die Suche nach Standorten auf LocationIQ, die eine Autocomplete-Suchleiste in unserem Frontend hervorragend ergänzte. An diesem Punkt haben wir uns für die Verwendung von LocationIQ entschieden, da es umfangreichere Filteroptionen bietet. Unser Wechsel verlief reibungslos, da beide APIs ihre Standortdaten auf Open-Source-OpenStreetMap-Daten basieren, da wir unsere Standorte nach OSM-Typen und -IDs indiziert hatten.
Briefträger
Postman hat uns sehr geholfen, indem es uns ermöglichte, die Endpunkte unserer Anwendung mit unterschiedlichen Abfrageparametern und Autorisierungen zu testen.
Die meisten unserer GET-Endpunkte sind offen und erfordern keine Autorisierung, wie z. B. unsere Standorte:
So testen Sie unseren Ereignisendpunkt, der nach Stadt oder Koordinaten suchen kann:
Wir können auch testen, ob unser authentifizierter und auf Berechtigungen basierender Endpunkt wie beabsichtigt funktioniert:
Hergestellt mit
- Postman API – Zum Testen unserer Endpunkte
- LocationIQ – Zum Abrufen von Geokodierungsdaten
- MapLibre — Zum Rendern der Karte im Frontend
- Django und Django Rest Framework – Für unseren Server
- ReactJS – Für unsere Frontend-Anwendung
- GitHub – Zum Hosten unseres Codes und der Versionskontrolle
- Heroku – Zum Hosten unserer Anwendung
- PostgreSQL – Für unsere Datenbank
https://team19-submission.herokuapp.com/
Autoren
Vignesh Bhat
Kauschik Deka
Kiranbaskar Velmurugan

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































