Just as with React Native, one of the first apps I worked on in Flutter was a chat
application. This time, I also decided to address some of the issues I had encountered with
the React Native version of the app.
I used firebase for authentication and a realtime database, which improved the security aspect as well as the fact that the users could now receive messages without triggering events on their device (such as hitting refresh).
Other than the basic functionality wherein users could message each other, I also added a feature to create and chat in groups. The app also showed the date above a group of messages sent on one day, and the time with each message. The data/time display is also designed such that the sender and receiver can be in different time zones, and the date/time would be shown according to the time-zone that the user is in.
The Photo Journal app was something I worked on as a weekend project. The app lets users
upload their most treasured photos with a caption, and the home screen shows these photos in
an instagram-like interface. The user can also set a date/time with the photo, and can
delete existing posts. Photos posted in the app are only visible to them, since the photo
journal was never meant to be a photo "sharing" application.
I used firebase for authentication, database, and photo storage, and a few flutter packages to allow users to pick images from the device storage. It was a fun exercise to develop a simple but complete app with an appealing user interface in such a short time, with a couple of iterations of major design changes to the database schema.