Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rishikesh-suvarna/nexuschat
Nexus communication platform built on Next.js and powered by Prisma ORM. Hosted securely on PlanetScale, Nexus offers a seamless user experience akin to Discord. User authentication is streamlined with Clerk, allowing easy sign-in via Google and ensuring robust security. Whether users engage in text-based, real-time audio / video conversation
https://github.com/rishikesh-suvarna/nexuschat
audio chat clerk clerkauth mysql next planetscale prisma-orm real-time text video
Last synced: 11 days ago
JSON representation
Nexus communication platform built on Next.js and powered by Prisma ORM. Hosted securely on PlanetScale, Nexus offers a seamless user experience akin to Discord. User authentication is streamlined with Clerk, allowing easy sign-in via Google and ensuring robust security. Whether users engage in text-based, real-time audio / video conversation
- Host: GitHub
- URL: https://github.com/rishikesh-suvarna/nexuschat
- Owner: rishikesh-suvarna
- Created: 2023-09-16T20:56:09.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-14T12:58:34.000Z (4 months ago)
- Last Synced: 2024-07-14T14:12:49.168Z (4 months ago)
- Topics: audio, chat, clerk, clerkauth, mysql, next, planetscale, prisma-orm, real-time, text, video
- Language: TypeScript
- Homepage:
- Size: 1.02 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NexusChat
Nexus is a communication platform built on Next.js and powered by Prisma ORM. It offers a seamless user experience similar to Discord, allowing users to engage in text-based, real-time audio/video conversations.
## Features
- Real-time text-based communication
- Audio and video calls
- User authentication via Clerk
- Securely hosted on PlanetScale## Technologies Used
- Next.js
- Prisma ORM
- Clerk for user authentication
- PlanetScale for DB secure hosting## Getting Started
To get started with Nexus, follow these steps:
1. Clone the repository: `git clone https://github.com/rishikesh-suvarna/NexusChat.git`
2. Install dependencies: `npm install`
3. Set up the database connection in the `.env` file.
4. Run the application: `npm run dev`## Environment Variables Setup
To configure the environment variables for Nexus, you can use the `.env.example` file located in the root folder of the application. Follow these steps:
1. Copy the `.env.example` file and rename it to `.env`.
2. Open the `.env` file and update the values of the environment variables according to your setup.Here is an example of the `.env` file:
```
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_SIGN_IN_URL=
NEXT_PUBLIC_CLERK_SIGN_UP_URL=
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=DATABASE_URL=
UPLOADTHING_SECRET=
UPLOADTHING_APP_ID=LIVEKIT_API_KEY=
LIVEKIT_API_SECRET=
NEXT_PUBLIC_LIVEKIT_URL=
```Once you have updated the `.env` file, you can proceed with the remaining steps mentioned in the README.
## Contributing
Contributions are welcome! If you'd like to contribute to Nexus, please follow these guidelines:
1. Fork the repository.
2. Create a new branch: `git checkout -b feature/your-feature-name`
3. Make your changes and commit them: `git commit -m 'Add some feature'`
4. Push to the branch: `git push origin feature/your-feature-name`
5. Open a pull request.## License
This project is licensed under the [MIT License](LICENSE).