**1. Task Components:**
Task should consist of these components:
- Frontend: Develop a user interface or frontend that implements the p2p chat code using holepunch.
- Error Handling and Validation: Implement proper error handling and input validation to prevent security vulnerabilities and data leaks.
- Responsive Web Design: Create a user-friendly and responsive web interface for seamless access on various devices and screen sizes.
- Documentation: Provide clear documentation on how to use your application on local environments.
- Docker Compose: Use a single Docker Compose file to orchestrate the deployment of the entire application. This file should define the services, networks, and volumes required to run the application seamlessly.
- Git Repository: Set up a Git repository to track the development of your project. Make sure to keep the repository private throughout the development process.
- Systematic Commits: Make regular and systematic commits to the Git repository. Commits should be clear, descriptive, and reflect the changes made in each iteration.
## **Tasks**
### **Task:**
**Title:** Web based P2P chat app using Holepunch
**Description:**
Build a React-based chat application using Holepunch. The app should allow users to communicate with each other securely, without the need for a central server or a third-party service.
**Requirements:**
1. The app should be built using Node.js and the Holepunch library.
2. The app should have a React interface that allows users to connect to the chat network and chat with other users using peer id.
3. The app should be fully functional and user-friendly, with an intuitive user interface and clear documentation.
**Deliverables:**
1. A web-based chat application built using Holepunch.
2. Documentation outlining the features and functionality of the app, as well as instructions for installation and usage on local environments.
3. A GitHub repository containing the app source code and documentation.
**Technology Stack:**
- React.js, Next.js (or other JavaScript frameworks).
**Bonus Task:**
- Add group chat functionality
**Resources:**
- [Holepunch Documentation](https://docs.holepunch.to/)
- [use-hyper](https://github.com/LuKks/use-hyper)