Skip to content

Codefy-Labs/Netflix-KMP

Repository files navigation

🎬 Netflix Clone - Compose Multiplatform

Welcome to the Netflix Clone project by CodefyLabs! This repository showcases the power of Compose Multiplatform by creating a sleek, Netflix-like app that runs seamlessly on both Android and iOS.

Platform Preview
Android Android Demo
iOS iOS Demo

🚀 Features

  • Cross-Platform Compatibility: Build once and run on both Android and iOS.
  • Intuitive UI: A sleek and user-friendly interface inspired by Netflix.
  • Smooth Performance: Optimized for high performance and smooth navigation.
  • Open-Source: Fully customizable and open to contributions.

📚 Dependencies

We’ve utilized a range of powerful libraries to bring this project to life:

Core Libraries

  • Compose UI Components:
    • compose.runtime
    • compose.foundation
    • compose.material3
  • Kotlin Coroutines:
    • kotlinx.coroutines for managing asynchronous tasks.
  • Serialization:
    • kotlinx.serialization for data serialization.

Image Loading

  • Coil:
    • coil
    • coil.network.ktor for efficient image loading and caching.

Networking

  • Ktor:
    • ktor-client-core
    • ktor-client-android
    • ktor-client-darwin
    • ktor-client-content-negotiation for making network requests.

Utilities

  • Napier:
    • napier for logging.
  • Koin:
    • koin-core and koin-compose for dependency injection.

Android-specific

  • Compose Integration:
    • activity-compose
  • Video Playback:
    • media3-exoplayer
    • media3-ui for video playback capabilities.

Testing

  • UI Testing:
    • ui-test-junit4
  • Coroutine Testing:
    • kotlinx-coroutines-test

Icons and UI

  • Feather Icons:
    • compose.icons.feather
  • Constraint Layout:
    • constraintlayout-compose-multiplatform
  • Lottie Animations:
    • compottie

Navigation and ViewModel

  • Compose Navigation:
    • navigation-compose for navigating between screens.
  • ViewModel Integration:
    • lifecycle-viewmodel-compose for using ViewModel in Compose Multiplatform.

📂 Project Structure

The project is organized into common and platform-specific modules to facilitate code sharing and platform-specific customization.

🚀 Getting Started

  1. Clone the repository:

    git clone https://github.com/Codefy-Labs/Netflix-KMP.git
    cd Netflix-KMP
  2. Open the project in Android Studio:

    • Make sure you have the latest version of Android Studio with Kotlin Multiplatform support.
  3. Build and run the project:

    • Select the desired target (Android or iOS) and run the app.

🤝 Contributing

We welcome contributions! If you have suggestions, bug reports, or improvements, please open an issue or submit a pull request.\

Feel free to adjust any sections or add more details as necessary!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages