Objective:
Develop a TypeScript web application named "Event Feedback Hub", where users can share their feedback on events they attended (workshops, webinars, conferences), and view others' feedback in real-time.
Application Requirements
- Frontend: React
- API: GraphQL
- Database: free to pick any option you see fit (even local storage / in-memory for simplicity)
-
Frontend Features
- A submission form where users can select an event from a dropdown menu and submit their feedback along with a rating (1-5 stars).
- A real-time feedback stream displaying all feedback for a selected event. Include:
- The event name.
- The user's feedback text.
- The rating given.
- Options to filter or paginate the feedback stream based on event or rating.
-
Backend Features
- A GraphQL server setup to handle:
- Submission of feedback.
- Retrieval of all feedback for a given event, including filtering capabilities.
- Real-time updates when new feedback is submitted.
- A database schema suitable for storing events, feedback submissions, and user ratings.
- A GraphQL server setup to handle:
Submission Guidelines
Your final submission should be a GitHub repository containing the complete source code for the application.
We encourage creative and efficient solutions to the requirements presented. Your approach to designing and implementing this application will be a valuable part of our evaluation. Good luck!