Realtime chat app is an application that allows you to communicate with the person or people in front of you in real time. You can create a room in the application and communicate with your friends in the relevant room. You can also sign up for an existing room and read previous messages.
Explore the docs »
The project was implemented with python's 'Django' framework. 'SQLite' embedded in django is used as database. The 'Dockerfile' of the project has been written so that the project can be tested more easily by other users. In the project, instead of server client architecture, ajax was used to display the messages in real time.
- Python
- Django
- SQLite
- Docker
- Kubernetes
- Javascript
- Ajax
If you have Docker Desktop on your computer, you can test the application with one command!
https://docs.docker.com/desktop/install/windows-install/
If there is no docker desktop application, you can use the following commands.
- Clone the repo
git clone https://github.com/MelihSelamiUrkmezz/Realtime-ChatApp.git
- Install Django packages
pip install -r requirements.txt
- Make migrations and migrate
python manage.py makemigrations && python manage.py migrate
- Run the project
python manage.py runserver
If you have docker desktop installed, you can run the project with a single command like this!
docker container run -p 8000:8000 melihselamiurkmez/chatapp:v6
When the above is done, the project will run at 127.0.0.1:8000.
As you can see, you can open a room!
You can easily communicate with your friend in the room by telling your friend the name of the opened room!
You can also connect to the room as a 3rd person and read old conversations!
If you want to manage with kubernetes, a yaml file with LoadBalancer service has been created. you can use that template!
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/NewFeature
) - Commit your Changes (
git commit -m 'Add some NewFeature'
) - Push to the Branch (
git push origin feature/NewFeature
) - Open a Pull Request
Melih Selami URKMEZ - melih.s.urkmez@gmail.com
Project Link: https://github.com/MelihSelamiUrkmezz/Realtime-ChatApp