Skip to content

Flict-dev/Web-messenger

Repository files navigation

FastAPI + React · license Code style: black

fastapi-logo sql-alchemy react-logo typescript-logo

A small Web Messenger with End-to-End encryption


Features

Docker

git clone https://github.com/Flict-dev/Web-messenger.git
docker compose up

Go to http://localhost:8000/

Quick Dev Start

  • Run Backend
    • Create virtual environment
      python -m venv env
    • Activate virtual environment
      Windows: env/Scripts/activate
      Linux: source env/bin/activate
    • Install requirements
      pip install -r requirements.txt
    • Run FastAPI server
      cd backend
      cd app
      uvicorn main:app --host '<ip>' --port <port>
  • Run Frontend
    • Install all node packages
      cd frontend
      npm install
    • Run react server
      npm start

Examples

Home page

Home page

Creating a room

Creating a room

Message

Message

Adding other users

To add a new user, it is enough to share a link Adding other users

Sharing the encryption key

The user needs an encryption key to decrypt other people's messages and send their own Sharing the encryption key

User status

Users have online and offline statuses User status

Ban users

Admin can ban users Ban users

Deleting a room

When deleting a room, users and their messages are also deleted Deleting a room