diff --git a/docs/GUIDELINES.md b/docs/GUIDELINES.md index 69abfaeaa..0658f4147 100644 --- a/docs/GUIDELINES.md +++ b/docs/GUIDELINES.md @@ -14,13 +14,14 @@ Please see `docs/BUILD.md` and `docs/TEST.md` ## Directory Layout -* `android` Source code for the Android version of the app. -* `core` Experimental Kotlin multiplatform code that will eventually be shared between all versions of the app (Android, iOS and web). Not currently used in production. * `docs` Documentation for developers. * `landing` Source code for our [landing page](http://loophabits.org/). -* `ios` Experimental iOS port of Loop, based on Kotlin Multiplatform. Not currently used in production. -* `server` Source code for any server-side components the app (for example, device sync). -* `web` Experimental web port of Loop, based on Kotlin Multiplatform. Not currently used in production. +* `uhabits-android` Android-specific code. +* `uhabits-core` Common code used by all platforms (Android, iOS). +* `uhabits-core-legacy` Proof-of-concept module, developed to evaluate the feasibility of using Kotlin multiplatform for the app; not currently used, and it will be removed soon, once all useful code is ported to the other modules. +* `uhabits-ios` Experimental iOS port of Loop. Not currently used in production. +* `uhabits-server` Source code for any server-side components the app (for example, device sync). +* `uhabits-web` Experimental web port of Loop. Not currently used in production. ## Branching Policy @@ -48,7 +49,7 @@ Further resources: ## Code Style -For Kotlin, we follow [ktlint](https://ktlint.github.io/) style with default settings. This code style is enforced by our automated build pipeline. To make sure that Android Studio is configured according to ktlint, navigate to `android` and run `./gradlew ktlintApplyToIdea`. To check that all code is properly formatted, run `./gradlew ktlintCheck`. See more details in [ktlint-gradle](https://github.com/jlleitschuh/ktlint-gradle). +For Kotlin, we follow [ktlint](https://ktlint.github.io/) style with default settings. This code style is enforced by our automated build pipeline. To make sure that IntelliJ and Android Studio are configured according to ktlint, run `./gradlew ktlintApplyToIdea`. To check that all code is properly formatted, run `./gradlew ktlintCheck`. See more details in [ktlint-gradle](https://github.com/jlleitschuh/ktlint-gradle). For legacy Java code, we don't have strict guidelines. Please follow a code style similar to the file you are modifying. Note that new classes should be written in Kotlin. Pull requests converting existing Java code to Kotlin are also welcome.