Skip to content

GRAFHY is a virtual communication platform that enables users to exchange messages, posts, and images made with Python and Vue.js

License

Notifications You must be signed in to change notification settings

VitorCarvalho67/Grafhy-SSM

Repository files navigation

English | Рortuguês

 

Imagem logo

GRAFHY (social media)

GitHub license GitHub stars Build Status GitHub languages top GitHub contributors Codacy Badge

GRAFHY is a virtual communication platform that enables users to exchange messages, posts, and images. Furthermore, it offers features such as creating conversation groups, user login and registration, real-time encrypted messaging, message and post notifications, user profiles with photos, and encrypted passwords. Its MySQL database ensures efficient management of user interactions, making it a comprehensive and secure platform for online communication.

Technology

  • Python
  • FastAPI
  • MySQL
  • Minio
  • JavaScript
  • Nginx
  • Vue
  • Docker-compose
  • Tauri

How To Use

git clone https://github.com/VitorCarvalho67/Grafhy-SSM.git

Navigate to the project directory on sever side

cd Grafhy-SSM/server

Create a virtual environment (venv) for the project

python -m venv venv

Activate the virtual environment. On Windows:

.\venv\Scripts\activate

On macOS and Linux:

source venv/bin/activate

Install the project's dependencies from requirements.txt.

pip install -r requirements.txt

Running the server side

uvicorn main:app --reload

Running the client side

Navigate to the project directory on client side, install the dependencies and run the project

cd client
npm run dev

Screenshots

Running with docker

Important

remember to uncomment .env.example and remove .example from the file name.

sudo docker-compose build
sudo docker-compose up
# or 
sudo docker-compose up -d

Contributing

Contributions to this project are welcome. Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Commit your changes.
  4. Push to the branch.
  5. Submit a pull request.