The project is a streaming platform for conducting online events of various types, ranging from entertainment to scientific activities. Our goal was to create an online solution for events that had as many features as an offline one to ensure a quality conference.
The following features are available in the app:
- Online streaming option
- Networking opportunities for participants (video and text chat)
- Ability to vote and raise questions by the function “Raise your hand”
- Pay for the conference in the app
Besides, organizers of events have real-time statistics about participants, their interests (pages or stands that they visited), and can check whether a particular user is online. Also, the platform allows sponsors to create visual stands where participants can find out information about them.
It may be interesting:
What Was Done
The main challenge on the project was to create a solution from scratch in the shortest possible time and with a limited budget.
To begin with, we have integrated one of the best user authentication methods, the JWT(JSON Web Token). This type of authorization is very secure and is now one of the best solutions. You could also become a user of this system by logging in via LinkedIn.
The problems that had to be solved during the development process were creating a service that allows registering one user for various events as a delegate, so we had to add access checks, users to various events, and their parts as delegates. Users who registered for the event could ask questions that were moderated by administrators.
The administrator also monitored the broadcast and could send messages to all users on the broadcast with some information, or create various polls in which users could participate. In addition, we make it possible to communicate in chats with users and send special invitations to group calls in various systems.
This platform also assumed sponsors of various ranks, they could create their own stands where users could find out some information about them, and there were also users with additional rights who could edit the stands of sponsors whose employees they are.
New challenges on this project were logging users in online mode and displaying this status, it was necessary to check whether the user is online, as well as on which page it is located, this allows you to track the interests of users, as well as interests in the event. Also, this functionality was necessary for sponsors so that they could know the number of users who came to their stand from the event.
In addition, we create access to the event that is paid (or by promo code), which requires the creation of a payment system and close integration with the Stripe payment service.
Project team: 2 developers, 1 PM.
Technologies and tools: Python, PostgreSQL, Django, Django REST, JWT token integration, Pytest, Docker, Docker compose, Redis as a broker for Celery, Social Auth(oauth2), and the official Stripe library for interacting with their API. Also, we have close integration with AWS(EC2, DynamoDB, Lambda func.,Api Gateway , Event Bridge. RDS, S3), Websockets.