Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rasmushy/edugle
This school project aims to create a real-time, text-based chat platform that allows users to engage in conversations within various chat rooms. Built using technologies like GraphQL, Node.js, and a MongoDB database. Chat rooms will be created by site itself.
https://github.com/rasmushy/edugle
apollo backend chat graphql-server messenger mongodb nextjs node omegle typescript
Last synced: 3 months ago
JSON representation
This school project aims to create a real-time, text-based chat platform that allows users to engage in conversations within various chat rooms. Built using technologies like GraphQL, Node.js, and a MongoDB database. Chat rooms will be created by site itself.
- Host: GitHub
- URL: https://github.com/rasmushy/edugle
- Owner: rasmushy
- License: mit
- Created: 2023-09-03T19:54:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-16T05:52:03.000Z (about 1 year ago)
- Last Synced: 2024-09-28T21:41:52.016Z (3 months ago)
- Topics: apollo, backend, chat, graphql-server, messenger, mongodb, nextjs, node, omegle, typescript
- Language: TypeScript
- Homepage: https://edugle-fro.onrender.com/
- Size: 500 KB
- Stars: 2
- Watchers: 1
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [Edugle](https://github.com/rasmushy/Edugle-frontend)
This school project aims to create a real-time, text-based chat platform that allows users to engage in conversations within various chat rooms. Built using technologies like GraphQL, Node.js, and a NoSQL database. Chat rooms will be created by site itself and users can change rooms with site navigation. Idea is that you will be randomised into next room with other user.
## Features:
- Real-time chat
- User authentication
- User authorization
- GraphQL API
- MongoDB database## How to run the project locally:
1. Clone the repository
2. Run `npm install` in the root folder
3. Run `npm run dev` in the root folder## How to run the project in production:
1. Clone the repository
2. Run `npm install` in the root folder
3. Run `npm run build` in the root folder
4. Run `npm start` in the root folder## How to run the tests:
1. Run `npm test` in the root folder
To run tests you will need to have admin profile manually added to your test database users collection matching like this:
{
username: "admin",
email: "[email protected]",
password: "admin"
}
Role needs to be changed to admin! Others collections should be empty!## Environment variables:
Enviroment example provided in .env.example file. You will need to create your own .env file to run the project.