Interested in finding social and academic events but have no idea where to find them? Tired of looking through countless emails, D2L, club websites and posters to find events? Wanting to see, like, interact and look for specific university events all in one place? These were the questions we wanted to address and the inspiration for our mobile and desktop application uHub.
uHub is a mobile and desktop application that allows users to find different events seamlessly from various clubs and the university all in one place. uHub allows hosts to create, delete and showcase events on our site for university students, while also tracking what events they currently have created. University students can view the website to browse and search for various events by different key filters such as by event type or name. If they find an event they like they can also add it to their calendar. Furthermore, students can also create an account and login in to follow specific hosts as well as like different events to get a tailored events feed.
Technologies That We Used
STACK | TECHNOLOGY USED |
---|---|
Front-End | React,Javascript, CSS, HTML |
Back-End | Python, Flask |
Database | MySQL |
APIs | REST, Postman |
Version Control | GitHub |
uHub is a web application that was built modularly and with a focus on scalability as we aimed to design our website to handle thousands of events and users. We strived to produce a seamless experience for users by designing the front end from planning out the site's UI with wireframes and writing responsive APIs in the backend. The frontend we created using React, while our backend was built using Python Flask and tested with Postman.
A few challenges we ran into were:
- Mobile application Compatibility
- Python package management
- Filtering of different events based on specified criteria
- CSS styling and animations
A few accomplishments were are proud of are:
- Designing an intricate mobile and web application that utilizes a database, user-friendly frontend and backend in under 24 hours
- Ascending to a new level of team collaboration
- MySQL Database Design following a planned EERD
- Learning more about React, CSS and Flask in a short time frame
- How to utilize various API such as an API for calendar integration.
- How to manage our time effectively and collaboratively work in a team.
- How to use advanced filtering on React Components.
- Better practices in designing for mobile Responsiveness.
- Effective version control for a team project.
- Adding the ability for users to get recommendations based on their interests and previous liked events.
- The ability for users to get personalized announcements from liked events or followed hosts.
- Google Maps API integration.
- Calendar View for Events
This is the website development branch for our project. This project will use python in combination with flask for the back-end. A fully detailed problem statement and design overview will be uploaded shortly.
cd backend
python3 -m venv venv
( orpython -m venv venv
on Windows)source venv/bin/activate
( orvenv\Scripts\activate
on Windows)pip install -r requirements.txt
flask run -p 5000
(orpython main.py
) to start back-end
cd frontend
npm install
npm start
to start front-end on localhost- Go to http://localhost:3000