{"id":18322460,"url":"https://github.com/sureshg/kotlin-starter","last_synced_at":"2025-04-05T23:31:01.465Z","repository":{"id":73497732,"uuid":"83650796","full_name":"sureshg/kotlin-starter","owner":"sureshg","description":"🐠 A starter template for kotlin projects using Gradle Kotlin DSL!","archived":false,"fork":false,"pushed_at":"2017-06-30T22:17:52.000Z","size":485,"stargazers_count":16,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-21T13:23:18.282Z","etag":null,"topics":["build-automation","build-tools","dokka","gradle","gradle-kotlin-dsl","gradle-script-kotlin","java","jvm","kotlin","starter-template"],"latest_commit_sha":null,"homepage":"https://sureshg.github.io/kotlin-starter/","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sureshg.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","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":"2017-03-02T07:57:52.000Z","updated_at":"2022-11-12T14:30:39.000Z","dependencies_parsed_at":null,"dependency_job_id":"257af869-2cfa-4e91-967d-5e590147bbb3","html_url":"https://github.com/sureshg/kotlin-starter","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sureshg%2Fkotlin-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sureshg%2Fkotlin-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sureshg%2Fkotlin-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sureshg%2Fkotlin-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sureshg","download_url":"https://codeload.github.com/sureshg/kotlin-starter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247415783,"owners_count":20935383,"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":["build-automation","build-tools","dokka","gradle","gradle-kotlin-dsl","gradle-script-kotlin","java","jvm","kotlin","starter-template"],"created_at":"2024-11-05T18:24:42.183Z","updated_at":"2025-04-05T23:31:01.460Z","avatar_url":"https://github.com/sureshg.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# \u003cimg src=\"docs/logos/kotlin-icon.png\" alt=\"Kotlin\" width=25 height=25\u003e Kotlin Starter \n\n [![version][release-svg]][release-url] [![changelog][cl-svg]][cl-url] [![build][travis-svg]][travis-url] [![api-doc][apidoc-svg]][apidoc-url] [![gitter][gitter-svg]][gitter-url] [![license][license-svg]][license-url] [![kotlin][kotlin-svg]][kotlin-url] \n\n A starter template for my [kotlin][kotlin-url] projects using [Gradle Kotlin DSL][kotlin-dsl]!\n \n\u003c/div\u003e\n\n### Download\n\n* Binary\n\n   [![Download][release-svg]][download-url]\n\n   \u003e After download, make sure to set the execute permission (`chmod +x kotlin-starter`). \n   \n   \u003e Windows users can run the `executable jar` - [![Download][execjar-svg]][execjar-url].\n\n### Build\n\n* Source\n\n    ```ruby\n     $ git clone https://github.com/sureshg/kotlin-starter\n     $ cd kotlin-starter\n     $ ./gradlew makeExecutable -q\n    ```\n    \u003e The binary would be located at `build/libs/kotlin-starter`\n    \n    Inorder to build a new version, change `appVersion` in the [gradle.properties](gradle.properties) or pass it to `./gradlew -q -PappVersion=2.0.0`\n\n* API Doc\n\n    \u003e The API docs would be generated under the [docs](docs), which can be published as [GitHub Pages][github-pages]\n    \n    ```ruby\n     $ cd kotlin-starter\n     $ ./gradlew dokka\n    ```\n    \n* Github Release\n\n    \u003e In order to publish the `kotlin-starter` binary to Github, generate [Github Access token][github-token] \n    \n    ```ruby\n     $ export GITHUB_TOKEN=\u003ctoken\u003e\n     $ cd kotlin-starter\n     $ ./gradlew prepareRelease\n     $ ./gradlew githubRelease -q\n    ```\n    \n    The latest release is [![version][release-svg]][release-url]\n    \n### Usage\n\n* Help\n\n    ```ruby\n    $ kotlin-starter --help\n    ```\n\n### Examples\n\n* Generating [AOT type-safe accessors][kotlin-dsl-aot-doc] in kotlin, \n\n    ```bash\n    $ ./gradlew kotlinDslAccessorsSnapshot\n    ```\n\n* Other Tasks\n\n    ```bash\n    # Run the main class.\n    $ ./gradlew clean :run\n    \n    # Display project dependency\n    $ ./gradlew dependencyInsight --dependency kotlin-stdlib  --configuration compile\n    $ ./gradlew dependencies\n    \n    # See task tree for build task\n    $ ./gradlew :build :taskTree\n    ```\n\n#### Kotlin Build Script Compilation \n\n[Script compilation][kotlin-slack-thread] happens in 4 steps:\n\n - Extract `buildscript` block, compile it against parent project \n   classpath (up to `buildSrc`), evaluate it against current project.\n - Extract `plugins` block,  compile it against the same classpath as \n   the previous step, evaluate it against current project.\n - MAGIC (generate Kotlin code based on information contributed by previous steps).\n - Compile whole script against classpath contributed by previous steps.\n\n-----------------\n\u003csup\u003e\u003cb\u003e**\u003c/b\u003e\u003c/sup\u003eRequire [Java 8 or later][java-download]\n\n\u003c!-- Badges --\u003e\n\n[apidoc-url]: https://sureshg.github.io/kotlin-starter/\n[apidoc-svg]: https://img.shields.io/badge/api--doc-latest-ff69b4.svg?style=flat-square\n\n[cl-url]: https://github.com/sureshg/kotlin-starter/blob/master/CHANGELOG.md#200---2017-06-29\n[cl-svg]: https://img.shields.io/badge/change--log-2.0.0-blue.svg?style=flat-square\n\n[release-url]: https://github.com/sureshg/kotlin-starter/releases/latest\n[download-url]: https://github.com/sureshg/kotlin-starter/releases/download/2.0.0/kotlin-starter\n[release-svg]: https://img.shields.io/github/release/sureshg/kotlin-starter.svg?style=flat-square\n\n[execjar-url]: https://github.com/sureshg/kotlin-starter/releases/download/2.0.0/kotlin-starter.jar\n[execjar-svg]: https://img.shields.io/badge/exec--jar-2.0.0-00BCD4.svg?style=flat-square\n\n[license-url]: https://github.com/sureshg/kotlin-starter/blob/master/LICENSE\n[license-svg]: https://img.shields.io/github/license/sureshg/kotlin-starter.svg?style=flat-square\n\n[travis-url]: https://travis-ci.org/sureshg/kotlin-starter/builds\n[travis-svg]: https://img.shields.io/travis/sureshg/kotlin-starter.svg?style=flat-square\n\n[codecov-url]: https://codecov.io/gh/sureshg/kotlin-starter\n[codecov-svg]: https://img.shields.io/codecov/c/github/sureshg/kotlin-starter.svg?style=flat-square\n\n[coverall-url]: https://coveralls.io/github/sureshg/kotlin-starter?branch=master\n[coverall-svg]: https://img.shields.io/coveralls/sureshg/kotlin-starter.svg?style=flat-square\n\n[total-dl-url]: https://github.com/sureshg/kotlin-starter/releases\n[total-dl-svg]: https://img.shields.io/github/downloads/sureshg/kotlin-starter/total.svg?style=flat-square\n\n[gitter-url]: https://gitter.im/sureshg/kotlin-starter\n[gitter-svg]: https://img.shields.io/gitter/room/sureshg/kotlin-starter.svg\n\n[kotlin-url]: https://kotlinlang.org/\n[kotlin-svg]: https://img.shields.io/badge/kotlin-1.2--M1-green.svg?style=flat-square\n\n[kotlin-dsl]: https://github.com/gradle/kotlin-dsl\n[kotlin-dsl-aot-doc]: https://github.com/gradle/kotlin-dsl/releases/tag/v0.8.0\n\n[kotlin-slack-thread]: https://kotlinlang.slack.com/archives/gradle/p1488489798002208\n[maven-google-mirror]: https://maven-central.storage.googleapis.com\n[java-download]: http://www.oracle.com/technetwork/java/javase/downloads/index.html\n\n[github-token]: https://github.com/settings/tokens\n[github-pages]: https://pages.github.com/\n[github-pages-pub]: https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsureshg%2Fkotlin-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsureshg%2Fkotlin-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsureshg%2Fkotlin-starter/lists"}