diff --git a/LEARN.md b/LEARN.md new file mode 100644 index 0000000..3405bcd --- /dev/null +++ b/LEARN.md @@ -0,0 +1,116 @@ +# Discord-Clone + + +
+

Table of Contents

+
    +
  1. + Introduction +
  2. +
  3. + Key Features +
  4. +
  5. + Tech Stacks +
  6. +
  7. + How to set up? +
  8. +
  9. + Snaps +
  10. +
+
+ +# Introduction: + +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. + +# Key Features: + +- 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 + +# Tech Stacks: + +- TypeScript: 97.9% + +- Javascript: 1.3% + +- CSS: 0.8% + +# How to set up? + +1. Clone the repository: git clone + + ```sh + git clone https://github.com//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 + ``` + +# Snaps: + + + + + + + +## 🙏 Support + +This project needs a ⭐️ from you. Don't forget to leave a star ⭐️