As we use chat apps such as Discord and Instagram on a day-to-day basis, we became more and more aware of the lack of freedom given to users with the functionality of these apps, with users confined to simple chatting, sending pictures etc. To give users a new and different experience, we created Dyna.
What it does
Dyna is a customizable chat app, where users are able to add their own custom commands all while still maintaining the essential basics of a chat app. A few select built-in commands are also provided. Users can use their commands while talking to friends or just by themselves, and a command can be anything as long as it’s possible to be coded in a programming language. So far, we support Python, with more languages coming soon.
How we built it
As a team, we used multiple different programming languages including HTML, CSS, Python and other tools including SQL, SQLAlchemy, Flask, Cloudinary, and multiple others. We started with a Flask framework, proceeding to build the frontend and UI first, then adding more functionality starting with chat functionality and customizable commands. We then did some touching up and that was our final product.
Challenges we ran into
This was the first time any of our team members made a chat app, which gave us difficulties from the start. Some of us did not have a lot of experience in doing CSS and Flask, and we had to learn while coding which did cause annoyances at times. During the process, we had to learn many new concepts in order to successfully incorporate all the functionalities we wanted and these new concepts included web sockets, web APIs etc. These challenges took time to overcome, but we’re glad we made it through.
Accomplishments that we're proud of
We’re proud that we successfully we made our first chat app, and employed many concepts that were new to us. We’re also really happy to have made the UI look so clean and professional, considering that this was first time some of us used CSS in an actual project. We have also never made a project that executes code online, and choosing to implement this feature was something we’re glad we did.
What we learned
We learned many things throughout the course of making this project, including various concepts as well as collaborating as a team to create a project. During the making of the project, some team members learned how to use Flask, others learned web sockets, and we all ended up learning something. This was one of our first hackathons, and it was a good experience that allowed us to gain more experience in collaboration and time management, given the limited time and the large number of features we had to add.
What's next for Dyna - Dynamic Chat Command App
We plan to add support for more than 70 languages on top of Python. We also hope to add more built-in commands, giving the user more convenience and accessibility. We would like to add the functionality to share users’ commands across the platform, creating a ‘forum’ where users can interact and share their knowledge.