Skip to content

halilkrkn/FindeRecipe

Repository files navigation

🍲 FindeRecipe: Recipe Discovery Application

FindeRecipe is an Android application that helps users find recipes based on the ingredients they have. With this app, you can make the most of your available ingredients, discover new recipes, and make cooking more practical.

✨ Features

  • Ingredient-Based Search: Enter the ingredients you have and search for recipes you can make with them.
  • Rich Database: Continuously updated with new recipes.
  • Detailed Recipes: Includes a list of required ingredients, step-by-step instructions, and visuals such as photos or videos.
  • User-Friendly Interface: Easy-to-use and intuitive design.

🛠️ Technologies and Libraries Used

Core Technologies:

  • Programming Language: Kotlin
  • Development Environment: Android Studio
  • Architecture: MVVM (Model-View-ViewModel)

Key Libraries:

  • Jetpack Compose: Modern declarative UI toolkit for Android.
  • Retrofit: Type-safe HTTP client for API communication.
  • Gson: JSON parser for converting API responses into Kotlin objects.
  • Coil: Image loading and caching library.
  • Room Persistence Library: Simplifies local database management.
  • Coroutines: Helps manage asynchronous tasks efficiently.
  • Dagger-Hilt: Dependency injection framework for better scalability.
  • Lottie: Enables lightweight and high-performance animations.
  • Firebase: Provides backend services (database, authentication, storage, etc.).
  • Push Notification: Sends real-time notifications to users.
  • Mock & MockServer: Used for creating mock API responses for testing.
  • Truth: A testing library for readable assertions.
  • Swipe Refresh: UI pattern for refreshing content with a swipe.
  • Splash API: Ensures a consistent splash screen experience in Android 12+.

Database:

  • Room Database: Used for locally storing application data (e.g., favorite recipes, shopping lists).

API:

🚀 Running the Application

  1. Clone the Project:
    git clone https://github.com/halilkrkn/FindeRecipe.git
  2. Open in Android Studio: Open the cloned project in Android Studio.
  3. Sync Dependencies: Wait for Android Studio to sync the project and download all dependencies.
  4. Add API Key: (If required) Add your API key to the local.properties file:
    API_KEY=your_api_key_here
  5. Run the Application: Click the green play button to launch the project.

🤝 Contributing

We welcome contributions to improve FindeRecipe! If you want to contribute, please follow these steps:

  1. Fork the project.
  2. Create a local branch:
    git checkout -b feature/feature-name
  3. Make changes and commit them:
    git commit -m "Feature added"
  4. Push your branch:
    git push origin feature/feature-name
  5. Create a pull request.

📱 Screens Used in the Application

Splash Screen

Proje Ekran Görüntüsü 1

OnBoarding Screen

Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1

Auth Screen

Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1

Recipes Screen

Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1

Recent Recipe Screen

Proje Ekran Görüntüsü 1

Favorite Screen

Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1

Detail Screen

Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1

Search Screen

Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1

Notification Screen

Proje Ekran Görüntüsü 1 Proje Ekran Görüntüsü 1