Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/huntermacias/codecast

Twitch Clone using: Next.js 14, React, WebRTC, Sockets, Prisma, Tailwind, MySQL
https://github.com/huntermacias/codecast

Last synced: 1 day ago
JSON representation

Twitch Clone using: Next.js 14, React, WebRTC, Sockets, Prisma, Tailwind, MySQL

Awesome Lists containing this project

README

        

# [Twitch Clone] - Next Generation Streaming Platform

[Add a brief introduction about your app, its purpose, and its unique selling points]

---

## Key Features

- πŸ“‘ **Advanced Streaming Protocols**: Utilizes RTMP and WHIP for high-quality streaming.
- 🌍 **Efficient Ingress Generation**: Streamlines the process of generating ingress for seamless streaming.
- πŸ”— **Integrations with Streaming Software**: Connects seamlessly with OBS and other popular streaming applications using Next.js.
- πŸ” **Robust Authentication System**: Ensures secure access and user authentication.
- πŸ“· **Thumbnail Upload Feature**: Allows easy upload of stream thumbnails for customization.
- πŸ‘€ **Live Viewer Count**: Displays the number of live viewers in real-time.
- 🚦 **Dynamic Live Statuses**: Keeps viewers updated with live statuses.
- πŸ’¬ **Real-Time Chat**: Engages audiences with a real-time chat feature using sockets.
- 🎨 **Color-Coded Chat**: Assigns a unique color to each viewer in the chat for easy identification.
- πŸ‘₯ **Interactive Following System**: Enables users to follow their favorite streamers.
- 🚫 **Comprehensive Blocking System**: Offers a blocking mechanism for user safety and moderation.
- πŸ‘’ **Real-Time Participant Management**: Allows streamers to kick participants during live streams.
- πŸŽ›οΈ **Streamer Dashboard**: Provides a dedicated dashboard for streamers and content creators.
- 🐒 **Slow Chat Mode**: Manages chat activity with a slow chat option.
- πŸ”’ **Followers-Only Chat Mode**: Enables exclusive chat access for followers.
- πŸ“΄ **Chat Control**: Grants the ability to enable/disable chat during streams.
- πŸ”½ **Flexible Layout**: Features a collapsible layout with options like theatre mode.
- πŸ“š **Sidebar with Following & Recommendations**: Includes a sidebar for easy access to followed streams and recommendations.
- 🏠 **Home Page with Stream Recommendations**: Curates a home page recommending streams, prioritizing live content.
- πŸ” **Customizable Search Results Page**: Offers a distinct layout for search results.
- πŸ”„ **Webhooks Integration**: Syncs user and live status information with the database using webhooks.
- 🀝 **Community Engagement**: Encourages interaction through a dedicated community tab.
- 🌈 **Aesthetic Design**: Boasts a visually appealing and user-friendly interface.
- ⚑ **High-Performance Application**: Delivers a blazing fast user experience.
- πŸ“„ **Server-Side Rendering (SSR)**: Implements SSR for improved performance and SEO.
- πŸ—ΊοΈ **Organized Routing & Layouts**: Features grouped routes and layouts for better navigation.
- πŸ—ƒοΈ **MySQL Database**: Utilizes MySQL for reliable data management.
- πŸš€ **Streamlined Deployment**: Simplifies the deployment process for quick and easy setup.

---

## Getting Started

[Instructions on how to install, configure, and use your app. Include code snippets and command lines if applicable]

---

## Usage

[Provide examples of how to use your app. Screenshots or code snippets can be included here]

---

## Documentation

[Link to the detailed documentation or include key documentation within this section]

---

## Commit Message Guidelines

- **feat**: Introduce a new feature.
- **fix**: Patches a bug in your codebase (bugfix or hotfix).
- **build**: Changes that affect the build system or external dependencies.
- **chore**: Updates dependencies and does not relate to fix or feat and does not modify src or test files.
- **ci**: Changes that affect the continuous integration process.
- **docs**: Updates the documentation or introduce documentation.
- **style**: Updates the formatting of code; remove white spaces, add missing spaces, remove unnecessary newlines.
- **refactor**: Reactors code segments to optimize readability without changing behavior.
- **perf**: Improve performance.
- **test**: Add/remove/update tests.
- **revert**: Reverts one or many previous commits.
```
Good:
perf: optimize loading of items on landing page
feat: send an email to the customer when a product is shipped
fix: add the correct company name to the footer and replacing the dummy text
revert: revert a previously introduced bug in items retrieving from database

Bad:
optimize landing page
send email
oops
I think I fixed it this time?
```
---

## Contributing

[Instructions on how contributors can get involved - detail the process for submitting pull requests, code of conduct, etc.]

---

## Versioning

[Explain how versioning is handled in your project]

---

## Authors and Acknowledgment

[Credit the authors and contributors, and any acknowledgments to third-party libraries or resources used]

---

## License

[Include the license details for your project]

---

## FAQ

[Answer common questions users might have]

---

## Support

[Provide information on where users can get support, such as community forums, email addresses, or issue trackers]

---

## Changelog

[Keep a record of all notable changes made to the project]

---

## Roadmap

[Outline the future plans and features for your app]

---

## Contact

[Provide contact details for users to reach out for more information or collaboration]