Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/cfunkz/python-realtime-chat

A simple flask and socketio chat application made using python. Image sharing, gif sharing, censoring, emojis & profile viewing/editing.
https://github.com/cfunkz/python-realtime-chat

chat chatapp css flask groupchat html js login messanger python register socketio sqlalchemy sqlite

Last synced: 16 days ago
JSON representation

A simple flask and socketio chat application made using python. Image sharing, gif sharing, censoring, emojis & profile viewing/editing.

Awesome Lists containing this project

README

        

# EchoChat

This is a simple Flask-based chat application with basic features. There are plans add more features and improvements.

## Images

login
register
dash
create
join
edit
descript
chat
gifs
user-list
view

## Dependencies

- [Flask](https://flask.palletsprojects.com/) - Web framework for Python
- [Flask-Login](https://flask-login.readthedocs.io/) - User session management for Flask
- [SQLAlchemy](https://www.sqlalchemy.org/) - SQL toolkit and Object-Relational Mapping (ORM)
- [SQLite](https://www.sqlite.org/) - Embedded relational database engine
- [Requests](https://docs.python-requests.org/en/latest/) - HTTP library for Python
- [Bleach](https://bleach.readthedocs.io/) - An HTML sanitization library
- [Better Profanity](https://github.com/snguyenthanh/better_profanity) - A profanity filter library
- [Flask-SocketIO](https://flask-socketio.readthedocs.io/) - WebSocket support for Flask applications
- [Pillow (PIL Fork)](https://pillow.readthedocs.io/) - Python Imaging Library (PIL Fork)

### Features
- [x] Basic Input Validation, Sanitazion & CSPS/HSTS
- [x] Login / Register
- [x] Basic Dashboard
- [x] Emojis
- [x] Gif sharing using `Giphy`
- [x] Image uploading, Image sending using `IMGBB`
- [x] Create Room, Join Room, Edit Room, Leave Room, Private Rooms, User List
- [x] SQLite Database
- [x] Working HTML tags in messages `bold, ` etc. and "``" for embed.
- [X] Admin list with admin panel for managing users

### To-Do List
- [ ] Room search
- [ ] Notification system & private messages
- [ ] Stream Video (one to one, one to many)
- [ ] Online Users
- [ ] GMAIL SMTP
- [ ] Voice record & transcribe?

## How to use

1. Download/Clone repository.
2. Install the required dependencies using `pip install -r requirements.txt`.
3. Set up your keys and variables in `config.json`.
4. Run the application with `python app.py`.
5. Visit `http://localhost:5000` in your web browser.