├── .DS_Store
├── .github
├── ISSUE_TEMPLATE
│ ├── bug-report.yml
│ └── feature-request.yml
├── pull-request.md
├── pull_request_template.md
└── workflows
│ ├── autocomment-iss-close.yml
│ ├── greetings.yaml
│ └── greetings.yml
├── .gitignore
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── Learn.md
├── README.md
├── app
└── globals.css
├── components.json
├── jsconfig.json
├── package-lock.json
├── package.json
├── public
├── favicon.ico
├── index.html
└── robots.txt
├── server
├── .DS_Store
├── .gitignore
├── Archive.zip
├── Utils
│ ├── Messages.js
│ └── Users.js
├── index.js
├── package-lock.json
└── package.json
├── src
├── .DS_Store
├── @
│ ├── components
│ │ └── magicui
│ │ │ ├── animated-list.jsx
│ │ │ └── cool-mode.jsx
│ └── lib
│ │ └── utils.js
├── App.css
├── App.js
├── Components
│ ├── ChatPage.jsx
│ ├── HomePage.css
│ ├── HomePage.jsx
│ ├── Loader.jsx
│ ├── LocationTemplate.jsx
│ ├── MapEmbed.jsx
│ ├── MessageTemplate.jsx
│ ├── MicroPhone.jsx
│ ├── MobileMenu.jsx
│ ├── PrivateRoute.jsx
│ └── ShareBox.jsx
├── Context
│ └── UserAuthContext.jsx
├── assets
│ ├── Logo-Full-Dark.png
│ ├── ReactChat-dark.png
│ ├── ReactChat-light.png
│ ├── light_svg.svg
│ ├── okji.jpeg
│ ├── sparkle_sound.mp3
│ └── svg.svg
├── index.css
└── index.js
└── tailwind.config.js
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urstrulynishkarsh/ReactChat/6ad5257e87fd3f81d244173502b39b1bde663d8a/.DS_Store
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug-report.yml:
--------------------------------------------------------------------------------
1 | name: Bug Report
2 | description: Report a bug
3 | labels: ["bug"]
4 | body:
5 | - type: markdown
6 | attributes:
7 | value: |
8 | Please fill out the sections below to help everyone identify and fix the bug
9 | - type: textarea
10 | id: description
11 | attributes:
12 | label: Describe your issue
13 | placeholder: When I click here this happens
14 | validations:
15 | required: true
16 | - type: textarea
17 | id: steps
18 | attributes:
19 | label: Steps to reproduce
20 | placeholder: |
21 | 1. Go to page X
22 | 2. Click here
23 | 3. Click there
24 | validations:
25 | required: true
26 | - type: textarea
27 | id: expected
28 | attributes:
29 | label: What was the expected result?
30 | placeholder: I expected this to happen
31 | - type: textarea
32 | id: screenshots
33 | attributes:
34 | label: Put here any screenshots or videos (optional)
35 | - type: dropdown
36 | id: assign
37 | attributes:
38 | label: "Would you like to work on this issue?"
39 | options:
40 | - "Yes"
41 | - type: markdown
42 | attributes:
43 | value: |
44 | Thanks for reporting this issue! We will get back to you as soon as possible.name: Bug Report
45 | description: Report a bug
46 | labels: ["bug"]
47 | body:
48 | - type: markdown
49 | attributes:
50 | value: |
51 | Please fill out the sections below to help everyone identify and fix the bug
52 | - type: textarea
53 | id: description
54 | attributes:
55 | label: Describe your issue
56 | placeholder: When I click here this happens
57 | validations:
58 | required: true
59 | - type: textarea
60 | id: steps
61 | attributes:
62 | label: Steps to reproduce
63 | placeholder: |
64 | 1. Go to page X
65 | 2. Click here
66 | 3. Click there
67 | validations:
68 | required: true
69 | - type: textarea
70 | id: expected
71 | attributes:
72 | label: What was the expected result?
73 | placeholder: I expected this to happen
74 | - type: textarea
75 | id: screenshots
76 | attributes:
77 | label: Put here any screenshots or videos (optional)
78 | - type: dropdown
79 | id: assign
80 | attributes:
81 | label: "Would you like to work on this issue?"
82 | options:
83 | - "Yes"
84 | - type: markdown
85 | attributes:
86 | value: |
87 | Thanks for reporting this issue! We will get back to you as soon as possible.
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature-request.yml:
--------------------------------------------------------------------------------
1 | name: New Feature
2 | description: Suggest or request a new feature
3 | labels: ["enhancement"]
4 | body:
5 | - type: markdown
6 | attributes:
7 | value: |
8 | Please fill out the sections below to properly describe the new feature you are suggesting.
9 | - type: textarea
10 | id: description
11 | attributes:
12 | label: Describe the feature
13 | placeholder: A button in the screen X that allows to do Y
14 | validations:
15 | required: true
16 | - type: textarea
17 | id: rationale
18 | attributes:
19 | label: It should be implemented because
20 | placeholder: It will allow to do Y that is needed for Z
21 | - type: textarea
22 | id: context
23 | attributes:
24 | label: Additional context
25 | placeholder: |
26 | Add any other context or screenshots about the feature request here.
27 | - type: dropdown
28 | id: assign
29 | attributes:
30 | label: "Would you like to work on this issue?"
31 | options:
32 | - "Yes"
33 | - type: markdown
34 | attributes:
35 | value: |
36 | Thanks for your suggestion! Let's see together if it can be implemented.
37 |
--------------------------------------------------------------------------------
/.github/pull-request.md:
--------------------------------------------------------------------------------
1 | ### Description
2 |
3 |
4 |
5 | Fixes #(issue)
6 |
7 | ### Type of Change
8 |
9 | - [ ] Bug fix (non-breaking change which fixes an issue)
10 | - [ ] New feature (non-breaking change which adds functionality)
11 | - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
12 | - [ ] Documentation update
13 |
14 | ### How Has This Been Tested?
15 |
16 |
17 |
18 | - [ ] Test A
19 | - [ ] Test B
20 |
21 | **Test Configuration**:
22 | * Firmware version:
23 | * Hardware:
24 | * Toolchain:
25 | * SDK:
26 |
27 | ### Checklist:
28 |
29 | - [ ] My code follows the style guidelines of this project
30 | - [ ] I have performed a self-review of my own code
31 | - [ ] I have commented my code, particularly in hard-to-understand areas
32 | - [ ] I have made corresponding changes to the documentation
33 | - [ ] My changes generate no new warnings
34 | - [ ] I have added tests that prove my fix is effective or that my feature works
35 | - [ ] New and existing unit tests pass locally with my changes
36 | - [ ] Any dependent changes have been merged and published in downstream modules
37 |
--------------------------------------------------------------------------------
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | ## Related Issue
2 | [Cite any related issue(s) this pull request addresses. If none, simply state “None”]
3 |
4 | ## Description
5 | [Please include a brief description of the changes or features added]
6 |
7 | ## Type of PR
8 |
9 | - [ ] Bug fix
10 | - [ ] Feature enhancement
11 | - [ ] Documentation update
12 | - [ ] Other (specify): _______________
13 |
14 | ## Screenshots / videos (if applicable)
15 | [Attach any relevant screenshots or videos demonstrating the changes]
16 |
17 | ## Checklist:
18 | - [ ] I have performed a self-review of my code
19 | - [ ] I have read and followed the Contribution Guidelines.
20 | - [ ] I have tested the changes thoroughly before submitting this pull request.
21 | - [ ] I have provided relevant issue numbers, screenshots, and videos after making the changes.
22 | - [ ] I have commented my code, particularly in hard-to-understand areas.
23 |
24 |
25 | ## Additional context:
26 | [Include any additional information or context that might be helpful for reviewers.]
27 |
--------------------------------------------------------------------------------
/.github/workflows/autocomment-iss-close.yml:
--------------------------------------------------------------------------------
1 | name: Comment on Issue Close
2 |
3 | on:
4 | issues:
5 | types: [closed]
6 |
7 | jobs:
8 | greet-on-close:
9 | runs-on: ubuntu-latest
10 | permissions:
11 | issues: write
12 | steps:
13 | - name: Greet User
14 | uses: actions/github-script@v5
15 | with:
16 | github-token: ${{ secrets.GITHUB_TOKEN }}
17 | script: |
18 | const issue = context.payload.issue;
19 | const issueCreator = issue.user.login;
20 | const issueNumber = issue.number;
21 |
22 | const greetingMessage = `Hello @${issueCreator}! Your issue #${issueNumber} has been closed. Thank you for your contribution!`;
23 |
24 | github.rest.issues.createComment({
25 | owner: context.repo.owner,
26 | repo: context.repo.repo,
27 | issue_number: issueNumber,
28 | body: greetingMessage
29 | });
--------------------------------------------------------------------------------
/.github/workflows/greetings.yaml:
--------------------------------------------------------------------------------
1 | name: Greetings
2 |
3 | on: [pull_request_target, issues]
4 |
5 | jobs:
6 | greeting:
7 | runs-on: ubuntu-latest
8 | permissions:
9 | issues: write
10 | pull-requests: write
11 | steps:
12 | - uses: actions/first-interaction@v1
13 | with:
14 | repo-token: ${{ secrets.GITHUB_TOKEN }}
15 | issue-message: "Hi there! Thanks for opening this issue. We appreciate your contribution to this open-source project. We aim to respond or assign your issue as soon as possible."
16 | pr-message: "Welcome to Our repository.🎊 Thank you so much for taking the time to point this out."
17 |
--------------------------------------------------------------------------------
/.github/workflows/greetings.yml:
--------------------------------------------------------------------------------
1 | name: "Greetings"
2 |
3 | on:
4 | fork:
5 | push:
6 | branches: [main]
7 | issues:
8 | types: [opened]
9 | pull_request_target:
10 | types: [opened]
11 |
12 | jobs:
13 | welcome:
14 | runs-on: ubuntu-latest
15 | steps:
16 | - uses: actions/checkout@v1
17 | - uses: EddieHubCommunity/gh-action-community/src/welcome@main
18 | with:
19 | github-token: ${{ secrets.GITHUB_TOKEN }}
20 | issue-message: |
21 | Congratulations, @${{ github.actor }}! 🎉 Thank you for creating your issue. Your contribution is greatly appreciated and we look forward to working with you to resolve the issue. Keep up the great work!
22 | pr-message: |
23 | Great job, @${{ github.actor }}! 🎉 , Thank you for submitting your pull request. Your contribution is valuable and we appreciate your efforts to improve our project. Our team will review your changes shortly.
24 | footer: "We will promptly review your changes and offer feedback. Keep up the excellent work! Kindly remember to check our [contributing guidelines](https://github.com/urstrulynishkarsh/ReactChat/blob/main/CONTRIBUTING.md)"
25 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # .gitignore
2 | node_modules/
--------------------------------------------------------------------------------
/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 | # Contributor Covenant Code of Conduct
2 |
3 | ## Our Pledge
4 |
5 | We as members, contributors, and leaders pledge to make participation in our
6 | community a harassment-free experience for everyone, regardless of age, body
7 | size, visible or invisible disability, ethnicity, sex characteristics, gender
8 | identity and expression, level of experience, education, socio-economic status,
9 | nationality, personal appearance, race, religion, or sexual identity
10 | and orientation.
11 |
12 | We pledge to act and interact in ways that contribute to an open, welcoming,
13 | diverse, inclusive, and healthy community.
14 |
15 | ## Our Standards
16 |
17 | Examples of behavior that contributes to a positive environment for our
18 | community include:
19 |
20 | * Demonstrating empathy and kindness toward other people
21 | * Being respectful of differing opinions, viewpoints, and experiences
22 | * Giving and gracefully accepting constructive feedback
23 | * Accepting responsibility and apologizing to those affected by our mistakes,
24 | and learning from the experience
25 | * Focusing on what is best not just for us as individuals, but for the
26 | overall community
27 |
28 | Examples of unacceptable behavior include:
29 |
30 | * The use of sexualized language or imagery, and sexual attention or
31 | advances of any kind
32 | * Trolling, insulting or derogatory comments, and personal or political attacks
33 | * Public or private harassment
34 | * Publishing others' private information, such as a physical or email
35 | address, without their explicit permission
36 | * Other conduct which could reasonably be considered inappropriate in a
37 | professional setting
38 |
39 | ## Enforcement Responsibilities
40 |
41 | Community leaders are responsible for clarifying and enforcing our standards of
42 | acceptable behavior and will take appropriate and fair corrective action in
43 | response to any behavior that they deem inappropriate, threatening, offensive,
44 | or harmful.
45 |
46 | Community leaders have the right and responsibility to remove, edit, or reject
47 | comments, commits, code, wiki edits, issues, and other contributions that are
48 | not aligned to this Code of Conduct, and will communicate reasons for moderation
49 | decisions when appropriate.
50 |
51 | ## Scope
52 |
53 | This Code of Conduct applies within all community spaces, and also applies when
54 | an individual is officially representing the community in public spaces.
55 | Examples of representing our community include using an official e-mail address,
56 | posting via an official social media account, or acting as an appointed
57 | representative at an online or offline event.
58 |
59 | ## Enforcement
60 |
61 | Instances of abusive, harassing, or otherwise unacceptable behavior may be
62 | reported to the community leaders responsible for enforcement at
63 | urstrulynishkarsh.
64 | All complaints will be reviewed and investigated promptly and fairly.
65 |
66 | All community leaders are obligated to respect the privacy and security of the
67 | reporter of any incident.
68 |
69 | ## Enforcement Guidelines
70 |
71 | Community leaders will follow these Community Impact Guidelines in determining
72 | the consequences for any action they deem in violation of this Code of Conduct:
73 |
74 | ### 1. Correction
75 |
76 | **Community Impact**: Use of inappropriate language or other behavior deemed
77 | unprofessional or unwelcome in the community.
78 |
79 | **Consequence**: A private, written warning from community leaders, providing
80 | clarity around the nature of the violation and an explanation of why the
81 | behavior was inappropriate. A public apology may be requested.
82 |
83 | ### 2. Warning
84 |
85 | **Community Impact**: A violation through a single incident or series
86 | of actions.
87 |
88 | **Consequence**: A warning with consequences for continued behavior. No
89 | interaction with the people involved, including unsolicited interaction with
90 | those enforcing the Code of Conduct, for a specified period of time. This
91 | includes avoiding interactions in community spaces as well as external channels
92 | like social media. Violating these terms may lead to a temporary or
93 | permanent ban.
94 |
95 | ### 3. Temporary Ban
96 |
97 | **Community Impact**: A serious violation of community standards, including
98 | sustained inappropriate behavior.
99 |
100 | **Consequence**: A temporary ban from any sort of interaction or public
101 | communication with the community for a specified period of time. No public or
102 | private interaction with the people involved, including unsolicited interaction
103 | with those enforcing the Code of Conduct, is allowed during this period.
104 | Violating these terms may lead to a permanent ban.
105 |
106 | ### 4. Permanent Ban
107 |
108 | **Community Impact**: Demonstrating a pattern of violation of community
109 | standards, including sustained inappropriate behavior, harassment of an
110 | individual, or aggression toward or disparagement of classes of individuals.
111 |
112 | **Consequence**: A permanent ban from any sort of public interaction within
113 | the community.
114 |
115 | ## Attribution
116 |
117 | This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118 | version 2.0, available at
119 | https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
120 |
121 | Community Impact Guidelines were inspired by [Mozilla's code of conduct
122 | enforcement ladder](https://github.com/mozilla/diversity).
123 |
124 | [homepage]: https://www.contributor-covenant.org
125 |
126 | For answers to common questions about this code of conduct, see the FAQ at
127 | https://www.contributor-covenant.org/faq. Translations are available at
128 | https://www.contributor-covenant.org/translations.
129 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # **Contributing Guidelines** 📄
2 |
3 | This documentation contains a set of guidelines to help you during the contribution process.
4 | We are happy to welcome all the contributions from anyone willing to improve/add new scripts to this project.
5 | Thank you for helping out and remember, **no contribution is too small.**
6 |
7 | Please note we have a [code of conduct](CODE_OF_CONDUCT.md) please follow it in all your interactions with the project.
8 |
9 |
10 |
11 |
12 |
13 | ## **Need some help regarding the basics?🤔**
14 |
15 |
16 | You can refer to the following articles on basics of Git and Github and also contact the Project Mentors,
17 | in case you are stuck:
18 |
19 | - [Forking a Repo](https://help.github.com/en/github/getting-started-with-github/fork-a-repo)
20 | - [Cloning a Repo](https://help.github.com/en/desktop/contributing-to-projects/creating-an-issue-or-pull-request)
21 | - [How to create a Pull Request](https://opensource.com/article/19/7/create-pull-request-github)
22 | - [Getting started with Git and GitHub](https://towardsdatascience.com/getting-started-with-git-and-github-6fcd0f2d4ac6)
23 | - [Learn GitHub from Scratch](https://docs.github.com/en/get-started/start-your-journey/git-and-github-learning-resources)
24 |
25 |
26 |
27 | ## **Issue Report Process 📌**
28 |
29 | 1. Go to the project's issues.
30 | 2. Give proper description for the issues.
31 | 3. Don't spam to get the assignment of the issue 😀.
32 | 4. Wait for till someone is looking into it !.
33 | 5. Start working on issue only after you got assigned that issue 🚀.
34 |
35 |
36 |
37 | ## **Pull Request Process 🚀**
38 |
39 | 1. Ensure that you have self reviewed your code 😀
40 | 2. Make sure you have added the proper description for the functionality of the code
41 | 3. I have commented my code, particularly in hard-to-understand areas.
42 | 4. Add screenshot it help in review.
43 | 5. Submit your PR by giving the necesarry information in PR template and hang tight we will review it really soon 🚀
44 |
45 |
46 |
47 | # **Thank you for contributing💗**
48 |
--------------------------------------------------------------------------------
/Learn.md:
--------------------------------------------------------------------------------
1 | # 🚀 Learn React & Tailwind CSS with ReactChat 🎨
2 |
3 | Welcome to ReactChat, a starter pack for creating React projects with Tailwind CSS configured. This guide will walk you through the steps to build your project using React version 18.2 and Tailwind CSS version 3.2.
4 |
5 | ## 👨💻 Demo
6 | 
7 |
8 |
9 |
10 |
11 |
44 |
45 |
46 | 🌐 The Socket.IO Chat Room with Real-Time Location Sharing Project 🚀
47 |
48 | The goal of this project is to create an exciting and dynamic web-based chat application using Socket.IO.
49 | Our aim is to push the boundaries of real-time communication by incorporating advanced features like location sharing.
50 | In today's fast-paced digital world, users crave more than just text-based interactions. We're here to deliver an experience
51 | that goes beyond expectations, fostering seamless communication and connection among users. This `readme.md` file explains the key steps and results that we got as part of our project.
52 |
53 |
54 | ## 🔥 Key Features 🔑
55 | - Real-time messaging
56 | - Location sharing
57 | - User authentication
58 | - Multimedia support
59 | - Responsive design
60 | -
61 | ## 🌟 Why It Matters 🚀
62 | In the ever-evolving digital landscape, traditional chat applications are no longer sufficient.
63 | Users expect interactive and engaging platforms that keep them hooked.
64 | Our project addresses this demand by integrating cutting-edge technologies and features, making communication not just convenient, but fun and immersive.
65 |
66 | ## 💡 What Sets Us Apart 💡
67 | - Advanced real-time communication
68 | - Seamless location sharing
69 | - User-friendly interface
70 | - Scalable architecture
71 |
72 | ## 🌟 Tutorial 💡
73 | step-by-step tutorials and guides to get started with Socket.IO Chat Room with Real-Time Location Sharing.
74 |
75 | https://github.com/IP80808080/ReactChat/assets/94137507/f3f5953c-e566-4480-9d14-d43ce2b481b3
76 |
77 |
78 |
79 |
80 | ### 1. Clone the Repository
81 |
82 | First, clone the repository to your local machine using the following command:
83 |
84 | ```bash
85 | git clone https://github.com/urstrulynishkarsh/ReactChat.git
86 | ```
87 |
88 | ### 2. Install Required Packages
89 | Navigate into the cloned ReactChat directory and install the required packages:
90 |
91 | ```bash
92 | cd ReactChat
93 | npm install
94 | ```
95 |
96 | ### 3. Start the Development Server
97 | To start the development server, run the following command:
98 |
99 | ```bash
100 | npm run dev
101 | ```
102 |
103 | ### 4. View Your Project
104 | Open your browser and navigate to http://localhost:3000 to view your project.
105 |
106 | ## Building Your Project 🏗️
107 | Now that you have set up your development environment, you can start building your project:
108 |
109 | - Create React Components: Begin by creating your React components inside the src/components directory.
110 | - Add Styles with Tailwind CSS: Use Tailwind CSS classes to style your components directly in your JSX files or create new CSS files and import them into your components.
111 | - Customize Tailwind Setup: If needed, you can add your own tailwind.config.js file to customize your Tailwind setup.
112 |
113 | ## Contributing 🤝
114 | Contributions to ReactChat are welcome! If you have any suggestions or find any issues, please feel free to open an issue or a pull request on GitHub.
115 |
116 | ## About ReactChat ℹ️
117 | ReactChat is a project developed for the GSoC2024 ReactChat Challenge. (Visit)[reactchatio.vercel.app] to learn more.
118 |
119 | ## Conclusion 🎉
120 | Wrap up with Socket.IO Chat Room with Real-Time Location Sharing. Reflect on what you've learned and celebrate your achievements!
121 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | #
ReactChat: Real-Time Chat Application with Socket.IO and Location Sharing
2 |
3 | Welcome to ReactChat, a powerful and dynamic web-based chat application built with Socket.IO. Our mission is to provide an immersive chat experience by integrating advanced features such as real-time messaging and location sharing. In this README, we'll guide you through setting up and building your project using React and Tailwind CSS.
4 |
5 |
117 | {/*----------------------- Micky Mouse positioned at the top of the title ---------------------------- */}
118 | {/* Mickey Mouse digital clock */}
119 |
120 |
121 |
126 |
127 |
128 |
129 |
{formatTime(currentTime)}
130 |
131 |
132 |
133 |
134 | {initial_message}
135 |
136 | {/*------------------------- thus it is overlapping with the dark theme thats why positioned at the top of the title --------------- */}
137 |
138 |