{"id":18949828,"url":"https://github.com/appsoluut/jacococ-android-test","last_synced_at":"2026-03-28T03:30:19.242Z","repository":{"id":136718318,"uuid":"524388686","full_name":"appsoluut/jacococ-android-test","owner":"appsoluut","description":"test","archived":false,"fork":false,"pushed_at":"2022-08-13T12:10:35.000Z","size":166,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-15T09:35:54.809Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appsoluut.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-13T12:07:45.000Z","updated_at":"2022-08-13T12:07:49.000Z","dependencies_parsed_at":"2023-07-04T17:10:06.962Z","dependency_job_id":null,"html_url":"https://github.com/appsoluut/jacococ-android-test","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"cortinico/kotlin-android-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsoluut%2Fjacococ-android-test","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsoluut%2Fjacococ-android-test/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsoluut%2Fjacococ-android-test/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsoluut%2Fjacococ-android-test/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appsoluut","download_url":"https://codeload.github.com/appsoluut/jacococ-android-test/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239946915,"owners_count":19723018,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T13:19:01.911Z","updated_at":"2026-03-28T03:30:19.204Z","avatar_url":"https://github.com/appsoluut.png","language":"Kotlin","readme":"# jacococandroidtest\n\n![Build](https://github.com/appsoluut/jacococ-android-test/workflows/Pre%20Merge%20Checks/badge.svg)\n\nThis is your new Kotlin Android Project! Happy hacking!\n\n## Template ToDo list 👣\n\n- [x] Create a new template project.\n- [ ] Choose a [LICENSE](https://github.com/appsoluut/jacococ-android-test/community/license/new?branch=main).\n- [ ] Set your `ORG_GRADLE_PROJECT_NEXUS_USERNAME`, `ORG_GRADLE_PROJECT_NEXUS_PASSWORD`, `ORG_GRADLE_PROJECT_SIGNING_KEY` and `ORG_GRADLE_PROJECT_SIGNING_PWD` secrets in [Settings](https://github.com/appsoluut/jacococ-android-test/settings/secrets/actions).\n- [ ] Code some cool apps and libraries 🚀.\n\n## Features 🎨\n\n- **100% Kotlin-only template**.\n- 4 Sample modules (Android app, Android library, Kotlin library, Jetpack Compose Activity).\n- Jetpack Compose setup ready to use. \n- Sample Espresso, Instrumentation \u0026 JUnit tests.\n- 100% Gradle Kotlin DSL setup.\n- CI Setup with GitHub Actions.\n- Publish to **Maven Central** with Github Actions.\n- Dependency versions managed via `buildSrc`.\n- Kotlin Static Analysis via `detekt` and `ktlint`.\n- Issues Template (bug report + feature request).\n- Pull Request Template.\n\n## Gradle Setup 🐘\n\nThis template is using [**Gradle Kotlin DSL**](https://docs.gradle.org/current/userguide/kotlin_dsl.html) as well as the [Plugin DSL](https://docs.gradle.org/current/userguide/plugins.html#sec:plugins_block) to setup the build.\n\nDependencies are centralized inside the Gradle Version Catalog in the [libs.versions.toml](gradle/libs.versions.toml) file in the `gradle` folder.\n\n## Static Analysis 🔍\n\nThis template is using [**detekt**](https://github.com/detekt/detekt) to analyze the source code, with the configuration that is stored in the [detekt.yml](config/detekt/detekt.yml) file (the file has been generated with the `detektGenerateConfig` task). It also uses the **detekt-formatting** plugin which includes the ktlint rules (see https://detekt.dev/docs/rules/formatting/).\n\n## CI ⚙️\n\nThis template is using [**GitHub Actions**](https://github.com/cortinico/kotlin-android-template/actions) as CI. You don't need to setup any external service and you should have a running CI once you start using this template.\n\nThere are currently the following workflows available:\n- [Validate Gradle Wrapper](.github/workflows/gradle-wrapper-validation.yml) - Will check that the gradle wrapper has a valid checksum\n- [Pre Merge Checks](.github/workflows/pre-merge.yaml) - Will run the `build`, `check` and `publishToMavenLocal` tasks.\n- [Publish Snapshot](.github/workflows/publish-snapshot.yaml) - Will publish a `-SNAPSHOT` of the libraries to Sonatype.\n- [Publish Release](.github/workflows/publish-release.yaml) - Will publish a new release version of the libraries to Maven Central on tag pushes.\n\n## Publishing 🚀\n\nThe template is setup to be **ready to publish** a library/artifact on a Maven Repository.\n\nFor every module you want to publish you simply have to add the `publish` plugin:\n\n```\nplugins {\n    publish\n}\n```\n\n### To Maven Central\n\nIn order to use this template to publish on Maven Central, you need to configure some secrets on your repository:\n\n| Secret name | Value |\n| --- | --- | \n| `ORG_GRADLE_PROJECT_NEXUS_USERNAME` | The username you use to access Sonatype's services (such as [Nexus](https://oss.sonatype.org/) and [Jira](https://issues.sonatype.org/)) |\n| `ORG_GRADLE_PROJECT_NEXUS_PASSWORD` | The password you use to access Sonatype's services (such as [Nexus](https://oss.sonatype.org/) and [Jira](https://issues.sonatype.org/)) |\n| `ORG_GRADLE_PROJECT_SIGNING_KEY` | The GPG Private key to sign your artifacts. You can obtain it with `gpg --armor --export-secret-keys \u003cyour@email.here\u003e` or you can create one key online on [pgpkeygen.com](https://pgpkeygen.com). The key starts with a `-----BEGIN PGP PRIVATE KEY BLOCK-----`. |\n| `ORG_GRADLE_PROJECT_SIGNING_PWD` | The passphrase to unlock your private key (you picked it when creating the key). |\n\nThe template already sets up [Dokka](https://kotlin.github.io/dokka/) for project documentation and attaches `-sources.jar` to your publications,\nvia the new AGP publishing DSL.\n\nOnce set up, the following workflows will take care of publishing:\n\n- [Publish Snapshot](.github/workflows/publish-snapshot.yaml) - To publish `-SNAPSHOT` versions to Sonatype. The workflow is setup to run either manually (with `workflow_dispatch`) or on every merge.\n- [Publish Release](.github/workflows/publish-release.yaml) - Will publish a new release version of the libraries to Maven Central on tag pushes. You can trigger the workflow also manually if needed.\n\n### To Jitpack\n\nIf you're using [JitPack](https://jitpack.io/), you don't need any further configuration and you can just configure the repo on JitPack.\n\nYou probably want to disable the [Publish Snapshot] and [Publish Release](.github/workflows/publish-release.yaml) workflows (delete the files), as Jitpack will take care of that for you.\n\n## Project Structure\n\nThe project includes three sub-projects, each in their own subdirectories:\n\n- **`app`:** The source for the final Android application.\n- **`library-android`:** The source for an Android library including UI.\n- **`library-kotlin`:** The source for a UI-less Kotlin library.\n- **`library-compose`:** The source for a UI library with Jetpack Compose library.\n\nThe following additional top-level directories configure \u0026 support building the app \u0026 projects:\n\n- **`buildSrc`:** Contains shared Gradle logic as [precompiled script plugins](https://docs.gradle.org/current/userguide/custom_plugins.html#sec:precompiled_plugins)\n- **`config`:** Contains the [Detekt configuration file](https://detekt.dev/docs/introduction/configurations/).\n- **`gradle`:** Contains Gradle Configuration files such as the Gradle Version Catalog and the [Gradle Wrapper](https://docs.gradle.org/current/userguide/gradle_wrapper.html).\n\nFinally, the following hidden top-level directories provide functionality for specific development systems:\n\n- **`.github`:** Defines the [Github Actions](https://github.com/features/actions) CI tasks and templates for new pull requests, issues, etc.\n- **`.idea`:** Sets common initial project settings when the project is opened in [Android Studio](https://developer.android.com/studio) or [IntelliJ IDEA](https://www.jetbrains.com/idea/).\n\n## Contributing 🤝\n\nFeel free to open a issue or submit a pull request for any bugs/improvements.","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappsoluut%2Fjacococ-android-test","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappsoluut%2Fjacococ-android-test","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappsoluut%2Fjacococ-android-test/lists"}