Moviesy
A beautiful client for YTS website which also provides built-in torrent, subtitles downloader ❤️
Disclaimer: The app let's you download and stream HD movies on the go, if this is something you don't approve then you should stop using it. This is indeed a hobby project :)
Features
- Clean & beautiful UI.
- Built-in movie & subtitle downloader
- Supports torrent streaming.
- Watch movie using in-built player.
- Cast to chromecast devices.
- VPN to access torrents safely.
- Lot more...
Discussions
Discussions is a place where you can ask anything like question, feature discussion, pre-bug reports or any topic of your choice as long as it is related to the project.
Compilation Guide
Since this project involves a private payment system some of the source files has been ignored. Read this guide in order to compile the project.
Project Libraries
- After - A library that helps you to dispatch events "after" some time one of which is displaying prompts.
- ImageLoaderView - An ImageView with cool loading effects eg: shimmer, overlay tinting.
- Auto Bindings - Set of annotations that aims to eliminate biolerplate code.
- Navigator - A small navigation library to ease fragment transactions & handling backstack.
Built with
- Kotlin - First class and official programming language for Android development.
- Coroutines - For asynchronous and more..
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- LiveData - Data objects that notify views when the underlying database changes.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
- Room - SQLite object mapping library.
- Paging - Library helps you load and display small chunks of data at a time. Loading partial data on demand reduces usage of network bandwidth and system resources.
- Saving Sates - Uses recommended solutions for saving & restoring UI state through viewModel.
- Workmanager - An API that makes it easy to schedule deferrable, asynchronous tasks that are expected to run even if the app exits or the device restarts.
- Dependency Injection -
- Hilt-Dagger - Standard library to incorporate Dagger dependency injection into an Android application.
- Hilt-ViewModel - DI for injecting
ViewModel
.
- Retrofit - A type-safe HTTP client for Android and Java.
- Material Components for Android - Modular and customizable Material Design UI components for Android.
- Gradle Kotlin DSL - For writing Gradle build scripts using Kotlin.
Contribute
If you want to contribute to this project, you're always welcome!
See Contributing Guidelines.
License
Copyright 2020 Kaustubh Patange
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
https://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.