A Recipe & Social Network App for Food Lovers
A mobile app that provides recipes based on available ingredients, and its provide a social network for food lovers to share their recipes and cooking experiences and get feedbacks.

Project Overview
Developed a comprehensive mobile application that combines recipe discovery with social networking features. The app allows users to find recipes based on the ingredients they have, share their own recipes, and connect with other food enthusiasts. Built with Kotlin Compose for the frontend and Ktor for the backend, the app emphasizes clean architecture, modular design, and accessibility.
Technical Overview
A practical overview of the stack and some of the technical decisions that helped keep the product maintainable and fast.
- Android Stack: Kotlin, Jetpack Compose, MVVM, Clean Architecture, Koin for dependency injection, multi-module setup (core, domain, data, feature modules), Jetpack libraries, custom and accessible UI components.
- Backend Stack: Ktor framework, PostgreSQL, modular backend structure, RESTful APIs, authentication-ready architecture, localization support, and scalable service layering.
Visual Showcase
Showcasing onboarding screen and language selection with its smooth animations and visuals that made with Jetpack Compose.

Structure of the application layers and modules that include a core module for foundations and shared resources, feature modules for each major section, and etc.
Showcasing cuisine wheel with its smooth physics-based animation and shared transition made from scratch with Jetpack Compose.
Showcasing authentication screens with its micro animations and smooth transitions between steps.
Showcasing settings screen of the app witch includes a lots of accessibility features for better user experience and customization.
Showcasing recipe discovery feature. As you can see, there are a lots of micro animations and components that made from scratch with Jetpack Compose. Also, in the recipe flow, user can play music while cooking and the music player is super accessible and easy to use while browsing the recipe steps. Each recipe step is architected to be super accessible and easy to follow.
The Challenge
Creating an app that seamlessly integrates recipe discovery with social networking while ensuring a user-friendly experience across multiple languages and accessibility needs.
- Recipe discovery: Efficiently match user-provided ingredients with a vast recipe database.
- Social features: Implement user profiles, recipe sharing, comments, and likes in a scalable way.
- Multi-language support: Design the backend to handle various locales without performance degradation.
- Accessibility: Ensure the app is usable by individuals with diverse needs and preferences.
Conclusion & Reflection
This project highlighted the importance of balancing feature richness with usability. By focusing on clean architecture and modular design, I was able to create an app that not only meets user needs but is also maintainable and scalable for future growth.
Key Takeaways
- Modular design: Breaking down the app into modules made it easier to manage and scale.
- User-centric features: Prioritizing user needs led to a more engaging and useful application.
- Accessibility matters: Designing with accessibility in mind broadened the app's reach and usability.

