discord-clone is a clone of Discord, a chatting platform that allows users to share messages and media privately or in servers. discord-clone aims to replicate those features both on the front and backend.
- Javascript
- React
- Redux
- FontAwesome
- PostgreSQL
- Python
- Flask
- SQLAlchemy
- SocketIO
- Clone the repository
git clone https://github.com/fxuls/discord-clone.git
- Install python dependencies
pipenv install --dev -r dev-requirements.txt && pipenv install -r requirements.txt
-
Create a
.env
file based on the example provided -
Setup your PostgreSQL credentials and database according to the variables set in .env
-
Active your pipenv then run the following command to open shell
pipenv shell
- Migrate the database
flask db upgrade
- Seed the database
flask seed all
- Run the flask app
flask run
-
Navigate to
react-app
-
Install dependencies
npm install
- Start the frontend server
npm start
The application will now be running at http://localhost:3000/
- Open a direct message with a friend
- Remove a friend
- Accept or deny incoming friend requests
- Cancel sent friend request
- Send friend requests by username
- View and send messages between you and another user
- Delete or edit messages that you have sent
- View a list of servers you have joined
- See list of channels in each server
- View messages in each channel
- Send messages to a channel
- Delete messages you have sent in a channel
- If you are a mod or admin of server be able to add channels and delete other user's messages