Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/fox520/tinklemessenger

A cross-platform chat application made with Kivy
https://github.com/fox520/tinklemessenger

chat-application kivy python

Last synced: 22 days ago
JSON representation

A cross-platform chat application made with Kivy

Awesome Lists containing this project

README

        

# Tinkle Messenger
A cross platform chat application which features private and group chats.
Built using the Kivy framework.
# Features
* Global chat with anyone on Tinkle
* Groups
* Private chats
* Friends
* Status
* File sharing
* No need to remember password

# Usage
## Prerequisites
* Python 3 (tested with v3.7.3)
* Kivy (tested with v1.10.1)
* Plyer

## Server
* Have a webserver installed (I used [XAMPP](https://www.apachefriends.org/download.html) on Windows)
* Place the files in [web server](web_server) to the htdocs directory

[Video assistance here](_install_help_content/web_server.mp4)
* Create a directory where you'd like to run the python server from
* Place the files in [server](server) into the newly created directory
* Run [initiate_address.py](server/initiate_address.py) and specify the webserver address (e.g. http://mysite.com/ or http://192.168.178.20/)

Short description of what the server .py files do is found [here](server/README.md).
##
Run
```
server.py
names.py
display_pics.py
```
And that should be it. The .py files in [here](web_server) do not neccessarily need to be run as they are more or less extras.
#
## Client
Run the following commands
```
pip install requests
pip install dataset
pip install plyer
```
Run ```main.py``` to start up the client
```
Note: main.spec can be used to make an executable.
pyinstaller -F main.spec
```

### How to set it up if still not clear
https://youtu.be/JlSIrbnHPRw

## Sign in
![signin](screenshots/client/sign_in.jpg?raw=true "Sign in")
## Home Screen
![home](screenshots/client/home_screen.jpg?raw=true "Home Screen")
## Browsing status
![status](screenshots/client/viewing_status.jpg?raw=true "Viewing status")