diff --git a/README.md b/README.md index cef71ddf..d2956b42 100644 --- a/README.md +++ b/README.md @@ -1,76 +1,39 @@ # android-enhanced-video-player -Enhanced Video Player for Android built on top of Exoplayer compliant with Android Jetpack Compose [![](https://jitpack.io/v/profusion/android-enhanced-video-player.svg)](https://jitpack.io/#profusion/android-enhanced-video-player) +[![CI Android Enhanced Video Player](https://github.com/profusion/android-enhanced-video-player/actions/workflows/android-jetpack.yml/badge.svg)](https://github.com/profusion/android-enhanced-video-player/actions/workflows/android-jetpack.yml) -## Table of Contents - - - [Table of Contents](#table-of-contents) - - [Setup](#setup) - - [Pre-requirements](#pre-requirements) - - [Install Node](#install-node) - - [Install Ruby Dependencies](#install-ruby-dependencies) - - [Install JS Dependencies](#install-js-dependencies) - - [Install Ktlint to IDE](#install-ktlint-to-ide) - - [Running the project](#running-the-project) - - [Media Types](#media-types) - - [DASH](#dash) - - [Documentation](#documentation) - -## Setup - -### Pre-requirements - -For the javascript runtime, we recommend [Node.js](https://nodejs.org/en/). - -We **strongly** suggest you to use [NVM \(Node Version Manager\)](https://github.com/nvm-sh/nvm) and also doing [this configuration](https://github.com/nvm-sh/nvm#deeper-shell-integration). - -We **strongly** suggest you to use [rbenv (Managing Ruby environment)](https://github.com/rbenv/rbenv). - -To ensure compatibility with [Android Gradle plugin](https://developer.android.com/studio/releases#android_gradle_plugin_and_android_studio_compatibility), it is mandatory to use Android Studio Flamingo or any subsequent version. - -We use yarn for dependency management, install instructions are available at https://classic.yarnpkg.com/lang/en/. - -### Install Node - -```console -$ nvm install -$ nvm use -``` - -Every time you use the repo you will need to use `nvm use` in your terminal to commit - -### Install Ruby Dependencies +Enhanced Video Player for Android built on top of Exoplayer compliant with Android Jetpack Compose -```console -$ rbenv install -$ bundle install -``` +## Table of Contents -This will install Ruby and fastlane, used for linting the project. +- [Table of Contents](#table-of-contents) +- [Installation](#installation) +- [Media Types](#media-types) + - [HLS](#hls) + - [DASH](#dash) +- [Documentation](#documentation) -### Install JS Dependencies +## Installation -```console -$ yarn install +1. Add it in your root build.gradle at the end of repositories: + +```groovy +allprojects { + repositories { + ... + maven { url 'https://jitpack.io' } + } +} ``` +2. Add the dependency -This will install husky pre-commit, pre-push and msg-commit hooks. - -### Install Ktlint to IDE -Make sure to open this project with Android Studio at least once before proceeding with ktlint instalation. That guarantees some hidden files/folders (like `.idea`) exist and can be configured by the following command. Navigate to the project’s directory in the terminal and execute: -```console -ktlint applyToIDEAProject +```groovy +dependencies { + implementation 'com.github.profusion:android-enhanced-video-player:Tag' +} ``` -This will change Android Studio's code format configurations. The next time you apply an automatic code formatting on a kotlin file, it will use our new set of rules defined by ktlint. - -**Pro Tip:** use a hotkey to make Android Studio format your file for you. You can choose your hotkey on `File > Settings > Keymap > Main Menu > Code > Reformat Code & Reformat File` - -## Running the project - -To run the project, open it in the IDE, Android Studio, and execute it. - ## Media Types Exoplayer supports the three main adaptive streaming algorithms: HLS, DASH and MSS. @@ -120,4 +83,5 @@ EnhancedVideoPlayer(mediaItem = mediaItem) ## Documentation - - [Releasing](docs/RELEASING.md) +- [Contributing](docs/CONTRIBUTING.md) +- [Releasing](docs/RELEASING.md) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md new file mode 100644 index 00000000..65854385 --- /dev/null +++ b/docs/CONTRIBUTING.md @@ -0,0 +1,66 @@ +# Contributing + +## Table of Contents + +- [Table of Contents](#table-of-contents) +- [Setup](#setup) + - [Pre-requirements](#pre-requirements) + - [Install Node](#install-node) + - [Install Ruby Dependencies](#install-ruby-dependencies) + - [Install JS Dependencies](#install-js-dependencies) + - [Install Ktlint to IDE](#install-ktlint-to-ide) +- [Running the project](#running-the-project) + +## Setup + +### Pre-requirements + +For the javascript runtime, we recommend [Node.js](https://nodejs.org/en/). + +We **strongly** suggest you to use [NVM \(Node Version Manager\)](https://github.com/nvm-sh/nvm) and also doing [this configuration](https://github.com/nvm-sh/nvm#deeper-shell-integration). + +We **strongly** suggest you to use [rbenv (Managing Ruby environment)](https://github.com/rbenv/rbenv). + +To ensure compatibility with [Android Gradle plugin](https://developer.android.com/studio/releases#android_gradle_plugin_and_android_studio_compatibility), it is mandatory to use Android Studio Flamingo or any subsequent version. + +We use yarn for dependency management, install instructions are available at https://classic.yarnpkg.com/lang/en/. + +### Install Node + +```console +$ nvm install +$ nvm use +``` + +Every time you use the repo you will need to use `nvm use` in your terminal to commit + +### Install Ruby Dependencies + +```console +$ rbenv install +$ bundle install +``` + +This will install Ruby and fastlane, used for linting the project. + +### Install JS Dependencies + +```console +$ yarn install +``` + +This will install husky pre-commit, pre-push and msg-commit hooks. + +### Install Ktlint to IDE +Make sure to open this project with Android Studio at least once before proceeding with ktlint instalation. That guarantees some hidden files/folders (like `.idea`) exist and can be configured by the following command. Navigate to the project’s directory in the terminal and execute: +```console +ktlint applyToIDEAProject +``` + +This will change Android Studio's code format configurations. The next time you apply an automatic code formatting on a kotlin file, it will use our new set of rules defined by ktlint. + +**Pro Tip:** use a hotkey to make Android Studio format your file for you. You can choose your hotkey on `File > Settings > Keymap > Main Menu > Code > Reformat Code & Reformat File` + +## Running the project + +To run the project, open it in the IDE, Android Studio, and execute it.