Say hello to Flack, a messaging app that can be accessed from any device.
About the problem
This is my solution for CS50’s project 2 - Books. This project was started after watching the first 8 lectures. I chose not to use a database to simplify the codebase. This is the first time that I was exposed to SocketIO and explored a model different from the usual GET/POST requests.
Features
- Enter your own display name when you log in for the first time, the name is saved in your cookies afterwards.
- Truly Asynchronous
- When you add a new channel, it instantly updates on everyone’s devices
- A live count of the number of messages of each channel on the channels page
- Your messages appear on the left side of the chat page while everyone else’s messages appear on the right.
Installing
Requirements
- Python 3.6+
- pip
Installing Dependencies
Install the dependencies using:
1
pip3 install -r requirements.txt
Note: socketIO is known to cause a lot of issues while installation If you face any issue, check out this issue.
That’s it! Run your server:
1
python3 server.py
Contributing
Feel free to contribute features / point out errors. Fork my repository and make a pull request.
I promise I’ll have a look!