Moviemade Save

Discover movies app illustrating Kotlin Multiplatform development best practices

Project README

en ru




Movies

Check PR Last Commit

Movies - easy way to discover popular movies. This is a simple TMDb client.

The goal of this project is to implement an app that provides a consistent user experience on Android Phones, Android Tablets, Android Auto, Android Wear, Android TV, iOS, Desktop (MacOS, Windows, Linux) and Web. Used Material3, Compose, Kotlin and Multiplatform.

The app is currently in development. Android app is already available.

Screenshots

Requirements

Take a look at local.properties and fill it with your own TMDB API key like this:

TMDB_API_KEY=your_own_tmdb_api_key

The app is still usable without an API key. In this case functionality will be limited.

Build

  • Clone this repository using latest version of Android Studio
  • Run the app on your device or emulator
    • 🤖 Android with Google Mobile Services:
      ./gradlew :androidApp:installGmsDebug
      
    • 🤖 Android with Huawei Mobile Services:
      ./gradlew :androidApp:installHmsDebug
      
    • 🤖 Android Free and Open Source Software:
      ./gradlew :androidApp:installFossDebug
      

Download

Technologies

Git Kotlin Ktor Compose Material3 Gradle Android Firebase Coil Room Clean Dependabot Github Codebeat

Modules

graph TD;
    feature-->androidApp
    feature-->desktopApp

    account-->feature
    auth-->feature
    details-->feature
    feed-->feature
    gallery-->feature
    search-->feature
    settings-->feature
    debug-->feature

    account-impl-->account
    auth-impl-->auth
    details-impl-->details
    feed-impl-->feed
    gallery-impl-->gallery
    search-impl-->search
    settings-impl-->settings
    debug-impl-->debug

    core-->account-impl
    core-->auth-impl
    core-->details-impl
    core-->feed-impl
    core-->gallery-impl
    core-->search-impl
    core-->settings-impl
    core-->debug-impl

    navigation-->core
    ui-->core
    common-->core
    interactor-->core
    notifications-->core
    work-->core
    widget-->core
    platform-services-->core

    analytics-->interactor
    repository-->interactor

    network-->repository
    persistence-->repository

Roadmap

Movies App Roadmap

Contributing

All contributions are welcome!

⭐ Join stargazers
↗️ Submit your PR

Issues

If you find any problems or would like to suggest a feature, please feel free to file an issue.

Contacts

Star History

Star History Chart

License

Apache License 2.0
Copyright 2017 Michael Bely

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Open Source Agenda is not affiliated with "Moviemade" Project. README Source: michaelbel/movies