This is Snapfake, my ongoing project. I was suggested to try and recreate SnapChat by a fellow developer as a challenge to see how far I've come with mobile development. I'm certainly feeling challenged with this project but that is a great thing, it shows I'm learning.


Currently, this project features user authentication, handled by Firebase. Firebase also manages the data storage of the users messages, and eventually pictures too. I'm loving Firebase, I find it a really powerful yet simple tool to use to create such complex applications easily.


Another challenge of this project is that I wanted to start it with the BloC pattern in mind. I'm currently facing difficulties trying to handle the state of things, keeping the functionality away from the UI but again, this is great news, as it means I'm a better developer than I was before this project.


The major things to come are of course to implement a camera system. I've actually tested the camera feature and it works, just need to figure out how to put it on the specific screen I want, then how to handle the picture and send it around the app. After that, I'll consolidate everything into a great architecture and improve the UI, as it's just basic at the moment.


All the source code is available on my GitHub

The homescreen of the app. Uses Firebase to handle user authentication securely.

The list of contacts available to talk to.

Showing the capability to add a new friend, using a collection in the Cloud Firestore to retrieve a user's username.

The chat screen, currently not showing user messages but it does display the friend's messages.

Copyright © Stefan Novak 2020 | Powered by w3.css