AlmaNotes is a web-based platform designed by students at the University of Bologna (UniBo) for their peers. It serves as a centralized hub to share, organize, and access high-quality study materials.
- Note Sharing & Management: Users can easily upload their notes, which are then organized by course, professor, and academic year.
- Advanced Search: A search system allows users to find materials by text queries, or by filtering for specific professors and subjects.
- Peer Reviews: A community-driven rating system where students can rate notes and provide feedback through star ratings.
- User Dashboard: Personalized views for tracking downloaded files, managing personal uploads, and viewing favorite or top-rated notes.
- Admin Tools: Administrative capabilities to manage users and moderate uploaded content to maintain platform quality.
- Design: Used Figma for mockups.
- Backend: Developed in PHP using an Object-Oriented approach for clean logic separation.
- Database: MySQL with the MySQLi extension, utilizing prepared statements to ensure security.
- Frontend: Built with HTML and Bootstrap for responsive design, JavaScript and CSS.
/php: Contains the core application logic, page controllers, and view templates./db: Includes theDatabaseclass which handles all CRUD operations and database connectivity./uploads: Directory for storing student-contributed document files./js: Contains the client-side code for modals and rating.