We encourage you to participate in this open source project. We love Pull Requests, Bug Reports, ideas, (security) code reviews or any kind of positive contribution. Please read the Community Participation Guidelines.
- Clone the repository:
git clone https://github.com/mozilla-tw/FirefoxLite
- Since we're using submodule, run:
git submodule init
git submodule update
- Open Android Studio and select File->Open and select FirefoxLite to open the project. Make sure to select the right build variant in Android Studio: focusWebkitDebug
We're leveraging Firebase to offer some extra functionalities. However, Firebase is optional so normally you should be able to just develop on focusWebkitDebug.
To mimimize the chance you are blocked by our build checks, you can self check these locally:
- (build) run
./gradlew clean checkstyle assembleFocusWebkitDebug lint findbugs assembleAndroidTest ktlint
- (size check) run
python tools/metrics/apk_size.py focus webkit
- (Unit test) run
./gradlew testFocusWebkitDebugUnitTest
- (UI test) run
./gradlew connectedAndroidTest
Run ktlint --install-git-pre-commit-hook
or ktlint --install-git-pre-push-hook
for hooks
Run ./gradlew ktlint
or ktlint
to run check
Run ./gradlew ktlintformat -F
or ktlint -F
to fix format
Run ktlint applyToIDEAProject
to make your IDE align with ktlint
If you want to go extreme,run ktlint -a -F
. This will use Android rule and gives you a lot of complains about max length, but we are not using right now.
See https://ktlint.github.io/ for details.
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/