Inspiration

In the context of the hackathon theme "Insecurity," our project addresses the academic uncertainty many students face when selecting university courses. Choosing the right course can be daunting, especially for new or undecided students who lack reliable information about course content, teaching quality, or workload. Our platform, "Bewerte Deinen Kurs," empowers students to make informed decisions by providing a space to share and access anonymous course reviews. By fostering transparency and collaboration, we aim to reduce the stress and insecurity associated with course selection.

What it does

"Bewerte Deinen Kurs" is a platform where students can:

  • Review Courses: Share their experiences with courses, including ratings for workload, teaching quality, and exam difficulty.
  • Access Reviews: Browse reviews to gain insights into course content, teaching methods, and overall quality.
  • Vote on Comments and Reviews: Upvote or downvote reviews and comments to highlight the most helpful feedback.
  • Report Inappropriate Content: Flag reviews or comments that violate community guidelines. Admin Tools: Administrators can manage reported comments and reviews, ensuring a safe and constructive environment.

How we built it

Our platform was built using the following technologies:

  • Frontend: React with TypeScript, Material-UI for styling, Zustand for state management, and React Router for navigation.
  • Backend: A RESTful API for managing courses, reviews, and comments, with endpoints for voting, reporting, and admin actions.
  • Database: A relational database to store user data, reviews, comments, and reports.
  • Authentication: Secure user authentication using tokens, allowing anonymous reviews while maintaining accountability.
  • Deployment: The platform is hosted on a cloud service, ensuring scalability and reliability.

Key components include:

  • Course Page: Displays course details, reviews, and a sidebar with aggregated ratings.
  • Review Panel: Allows users to view, edit, and vote on reviews, with collapsible sections for comments.
  • Admin Reports: A dedicated admin panel for managing reported reviews and comments.
  • Voting System: A dynamic voting system for both reviews and comments, with real-time updates.

Challenges we ran into

  • Balancing Privacy and Accountability: Allowing anonymous reviews while ensuring accountability required careful design of our authentication and reporting systems.
  • Data Mapping: Ensuring consistent data flow from the backend to the frontend, especially for nested structures like comments within reviews.
  • UI Consistency: Designing a user-friendly interface that works seamlessly across different devices and screen sizes.

Accomplishments that we're proud of

  • Community Impact: Created a platform that empowers students to make informed decisions, reducing stress and uncertainty in course selection.
  • User-Friendly Interface: Designed an intuitive and visually appealing UI using Material-UI. Scalable Architecture: Developed a scalable backend that can handle a growing number of users and reviews.
  • Comprehensive Voting System: Successfully implemented a voting system for both reviews and comments, with real-time updates and user-specific vote tracking.
  • Admin Tools: Built a robust admin panel for managing reported content, ensuring a safe and constructive environment.

What we learned

  • Collaboration: Strengthened our teamwork and communication skills, especially when tackling challenging technical problems.
  • Frontend-Backend Integration: Gained experience in managing complex data flows between the frontend and backend, especially for nested data like comments within reviews.
  • State Management: Learned to use Zustand effectively for managing global state in a React application.
  • User Experience Design: Understood the importance of designing intuitive interfaces that prioritize user needs.

What's next for Bewerte Deinen Kurs

  • Enhanced Analytics: Add features like aggregated course statistics and trends to provide deeper insights for students.
  • Mobile friendly: Develop a mobile friendly version to make the platform more accessible on the go.

Built With

  • Frontend: React, TypeScript, Material-UI, Zustand, React Router -Backend:* RESTful API, ASP.NET
  • Database: MySQ
  • Hosting: Docker, Nginx

By addressing the insecurity students face in course selection, "Bewerte Deinen Kurs" creates a transparent and collaborative academic environment, empowering students to make confident and informed decisions.

Share this project:

Updates