TachiyomiSY-Plus/CONTRIBUTING.md
Tran M. Cuong 3705880a77
Implement Mihon's spotless PR (#1257)
* Remove detekt (mihonapp/mihon#1130)

Annoying. More annoying in this project.

(cherry picked from commit 777ae2461e1eb277a3aa0c998ff69e4f100387a1)

* Add spotless (with ktlint) (mihonapp/mihon#1136)

(cherry picked from commit 5ae8095ef1ed2ae9f98486f9148e933c77a28692)

* Address spotless lint errors (mihonapp/mihon#1138)

* Add spotless (with ktlint)

* Run spotlessApply

* screaming case screaming case screaming case

* Update PagerViewerAdapter.kt

* Update ReaderTransitionView.kt

(cherry picked from commit d6252ab7703d52ecf9f43de3ee36fd63e665a31f)

* Generate locales_config.xml in build dir

(cherry picked from commit ac41bffdc97b4cfed923de6b9e8e01cccf3eb6eb)

* Address more spotless lint errors in SY

* some more missed

* more missed

* still missing, not sure while it won't report error when running locally

* one more

* more

* more

* correct comment

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2024-08-22 21:24:50 -04:00

3.2 KiB
Executable File

Looking to report an issue/bug or make a feature request? Please refer to the README file.


Thanks for your interest in contributing to Tachiyomi!

Code contributions

Pull requests are welcome!

If you're interested in taking on an open issue, please comment on it so others are aware. You do not need to ask for permission nor an assignment.

Prerequisites

Before you start, please note that the ability to use following technologies is required and that existing contributors will not actively teach them to you.

Tools

  • Android Studio
  • Emulator or phone with developer options enabled to test changes.

Getting help

Translations

Translations are done externally via Weblate. See our website for more details.

Forks

Forks are allowed so long as they abide by the project's LICENSE.

When creating a fork, remember to:

  • To avoid confusion with the main app:
  • To avoid installation conflicts:
  • To avoid having your data polluting the main app's analytics and crash report services:
    • If you want to use Firebase analytics, replace google-services.json with your own
    • If you want to use ACRA crash reporting, replace the ACRA_URI endpoint in build.gradle.kts with your own

Supporting Cloud Sync - Google Drive Implementation

  1. Go to Google Cloud Console
  2. Create a new project
  3. Go to API & Services -> Library -> Google Drive API and click enable
  4. Go to API & Services -> Oauth consent screen
  5. Create it, fill in the app name, user support email, and developer contact information
  6. In the next screen, click add or remove scopes, and add the .../auth/drive.appdata and .../auth/drive.file scopes
  7. Don't add any test users and go back to the dashboard
  8. Click publish
  9. Go to API & Services -> Credentials
  10. Click Create credentials -> Oauth client ID
  11. Select Android, give it a name, and set eu.kanade.google.oauth as the package name
  12. To get the SHA-1 key, run keytool -printcert -jarfile app-standard-universal-release.apk on your apk, and copy the listed SHA-1
  13. Expand advanced settings, and enable Custom URL scheme
  14. After that just download the json, name it to client_secrets.json and put it in app/src/main/assets/