Skip to content

Commit

Permalink
Updated LEARN.md (#86)
Browse files Browse the repository at this point in the history
  • Loading branch information
Passionatelytoooadorable authored Jun 2, 2024
1 parent 4e809d2 commit 558df51
Showing 1 changed file with 116 additions and 0 deletions.
116 changes: 116 additions & 0 deletions LEARN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# Discord-Clone
<!-- TABLE OF CONTENTS -->

<details open="open">
<summary><h2 style="display: inline-block">Table of Contents</h2></summary>
<ol>
<li>
<a href="#1 Introduction">Introduction</a>
</li>
<li>
<a href="#2 Key Features">Key Features</a>
</li>
<li>
<a href="#3 Tech Stacks">Tech Stacks</a>
</li>
<li>
<a href="#4 How to set up?">How to set up?</a>
</li>
<li>
<a href="#5 Snaps">Snaps</a>
</li>
</ol>
</details>

# <a name="1 Introduction">Introduction:</a>

A clone of Discord with features like realtime chat app, roles, file sharing, servers...etc,
- React is used along with Redux to power front-end.
- Redux to manage state along with Redux Saga.
- React Routing with Error handling and Discord Loading between pages.
- Firebase is used for authentication and firestore to store messages, users and servers.
- Material UI is used along with SASS with a little of styled components for UI.

# <a name="2 Key Features">Key Features:</a>

- Server Channels

i) Create channels

ii) Delete channels

- Message Management

i) Server owners can delete any message

ii) Message author can delete and edit their own messages

- Member Management

i) Kick members as the server owner

ii) Easily leave the server by right clicking the server

iii) Join servers with an invite code

- Server Management

i) Create servers as you would in Discord

ii) Edit server name, and icon URL in the server settings

iii) Delete your server in the server settings

- User Management

i) Manage your account by clicking the settings icon

ii) Change your username, and avatar

iii)Delete your user and prevent it from being used to login

# <a name="3 Tech Stacks">Tech Stacks:</a>

- TypeScript: 97.9%

- Javascript: 1.3%

- CSS: 0.8%

# <a name="4 How to set up?">How to set up?</a>

1. Clone the repository: git clone

```sh
git clone https://github.com/<github_username>/Discord-Clone
```

3. Go to the Discord-Clone directory:

```sh
cd discord-clone
```

4. Install the dependencies in the root of the repo:

```sh
npm install # install dependencies
```

5. Copy the example `.env.local.example` to `.env.local`

```sh
.env.local.example
```

# <a name="5 Snaps">Snaps:</a>

<img src="https://github.com/Yeasir0032/Discord-Clone/assets/128183101/cc30726b-78e0-455b-864a-89ce2b31b2a0" align="center" height="500" width="800">


<img src="https://github.com/Yeasir0032/Discord-Clone/assets/128183101/e6e87662-33e6-4e29-ab3a-333e20ff00d4" align="center" height="500" width="800">


## 🙏 Support

This project needs a ⭐️ from you. Don't forget to leave a star ⭐️

0 comments on commit 558df51

Please sign in to comment.