As a web developer, I was always fascinated by the way the famous chat applications are built and the logic that goes behind their functioning. So, I chose to develop one myself as my React project as a part of web development immersive bootcamp at Juno College.
Chat-Box is a chat application platform that enable instant messaging and allows real-time interaction. The app has some of the features a typical group chat app would have, such as the option to create a chat group, option to create a username and display chat messages to all users in the group in real-time.
React | Firebase | HTML 5 | CSS3 | Browser’s Local Storage
Most products in the market gradually lose users and fade away because they fail to keep up with customers’ changing needs. To make sure that my chat app stays relevant to the customers, I planned to get user feedback on the user experience and functionality of Chat-box.
What features could be included or modified in a chat app so that a good user experience flow is maintained.
User-testing is the best way to uncover what needs to happen for your product to keep growing, but only if you’re asking the right questions from the right audience.
To understand how useful and relevant my chat app is from the user perspective, I set out to make my app available for user testing and get some customer feedback on it. I reached out to my friends, bootcamp cohort mates and Twitter group and asked if they could spare some time to text my app and answer some questions about it.
Considering the fact that all the users for this exercise were already using some kind of chat applications in their daily life, the kind of feedback I received was very relevant and helped me make the app more robust and user friendly.
I asked the users to move around the app, play around, click buttons, and just go through it as they would a regular app and then provide their feedback. The questions spanned from asking whether they encountered bugs and if there were any features that they didn’t think were valuable. From here, I would take a few of their suggestions to improve the app.
For the most part, the feedback was positive and appreciative. There were some really valuable inputs that ranged from need for bug fixing to adding some new features.
- Make sure the user could not send an empty message.
- Add accessibility features so that the app can be navigated by all users.
- User authentication so that not everyone could delete message and groups.
Updates to the Chat-box
Feedback from the users after real world testing helped me add those features that I was missing out on my own. The first thing I did was the error handing of the message sending feature. The user input was checked for not being an empty string, so now the user could only send a real message comprising of text or characters.
I also added some of the accessibility features like skip-to-main-content link to the app so that the user could straight away navigate to the message sending section of the chat app instead of first going through the instructions, if the user chooses to do so.
The feature that would prevent any user from deleting the messages and groups from the app will entail implementation of the authentication feature to the app. I plan to add two stage user authentication where in there will be admin users and normal authenticated users. Authenticated users would be able to deleted their respective messages and admin users will have the permission to delete chat groups and messages.
The activity of setting out my chat app for user-testing and getting user feedback was an amazing opportunity to connect my app to the real-world process. Feedback and customer response is vital to keep a pulse on how the product is performing. Often this can serve as a pipeline ideas on improvements to existing product, or even start the cycle for entirely new product. It’s just as critical as the pre-launch testing we would do, because it helps us improve what we are currently offering.
It was a lot of fun hearing all the different ideas of ways to improve my chat app. It really motivated me to work hard on the app and to make it better by adding more and improve existing features.