The Lobby application was inspired from the Arab Spring uprising in 2011, where several liberation movements utilized modern social applications (i.e. twitter) and networking technologies (i.e. hotspots) for political resistance. As a result economic, political, and social change would overcome several corrupt regimes such as in the case of Muammar Gaddafi. Thus, we were inspired to engineer a mobile social network application to connect people live with others around them.
What it does
As a stand-alone mobile social networking app, Lobby, opens up dialogue between users derived from location based chat functionality. That is, interface sent chat messages are sent to any users within a certain radius of the senders geolocation and vice versa. However, if one leaves the client Message Receiving Radius (MRR) and re-enters after a message has been sent, the user's feed will have the option to update on missed geolocation messages.
How I built it
The Lobby application was designed using MongoDB, a NOSQL database. This database would provide an easy-to-sort and populate table system, featuring API integration capability. These API's provide the communication tool with the server and the server with the client device. Now for every client message sent, it's geolocation and time is stamped, then stored in MongoDB. From there, MongoDB finds users within the geolocation radius from the received message and sends the message to the user interface. Each application provides a unique screen name to keep public anonymity, done through the FaceBook login function.
Challenges I ran into
Some of the many challenges with this app began with the initial concept of finding a users geolocation and generating a geolocation specified messaging system. Meanwhile, this chat must remain open, while updating it's geolocation feature. Aside from geolocation, the sending and receiving of messages was tedious, due to a number of translation errors between languages.
Accomplishments that I'm proud of
This project consisted of a blend of innovation with theory, to provide the software structure necessary to deliver a time sensitive deliverable. In particular Lobby as a theoretical idea for liberation, became about simply connecting people at all times around them.
What I learned
This hackathon has taught us several IDE's, languages and services. For example, integrating a facebook login onto a mobile application, while connecting the user's information to a NOSql database. Overall, everyone's use with Node.js was lacking from knowledge, but now subjected to experience.
What's next for Lobby Mobile Phone Application
The LMA's post-hackathon phase of implementation will focus on incorporating various geolocation chat's with differing radius parameters as well as, a single chat which multi-threads multiple chat types together (e.g. short location, long location, private message). After this application can communicate users in real time over multiple distances, a node system will be added. This system shall generate a geolocation chat room based on a minimum number of users in geolocation diameter.