FreeTime HR
Mobile Application Activities for Students
A cross-platform student events platform for Rotterdam University of Applied Sciences, enabling students to discover affordable activities, create events, vote and save favourites.
Goal
Develop FreeTime HR, a platform where students can discover and share free or affordable activities in and around Rotterdam. The application needed to provide an accessible way to browse events, learn about activities and interact with events shared by other students.
Constraints
The frontend had to use a single React Native project supporting Android and web, with a separate backend and relational database running through Docker. The project also required database setup, documentation and a README explaining how to run the application locally.
Process
I took ownership of the final deliverable, independently implementing and integrating the application across the frontend, backend and database. Although the assignment originated as a group project, the submitted version contained only commits authored by me.
I built the frontend with React Native and Expo, including the event feed, event details, profile interface and multi-step event creation flow. I structured reusable hooks for form state, category handling and image selection.
I developed the TypeScript/Hono API, including event and category endpoints, authentication-related functionality, voting and favourites. I implemented request validation and error handling, and connected the API to PostgreSQL through Prisma. I also worked on database migrations, seed data, Docker-based development and setup documentation.
Result
Delivered a full-stack, cross-platform student events application with a React Native frontend, TypeScript API and PostgreSQL database. The final implementation brought together event discovery and creation, event details, categories, voting, favourites and database infrastructure. The project demonstrates my ability to take ownership of a complete application, integrate multiple layers of a software stack and prepare a project for local setup and demonstration.
What I learned
This project strengthened my ability to independently deliver a full-stack application, from relational database design and API validation to frontend integration and deployment-oriented development setup. It also reinforced the importance of maintaining consistent contracts between frontend forms, backend schemas and database models, as well as validating integrations before a final deadline.