{"id":19756865,"url":"https://github.com/rickclephas/kotlin-docc","last_synced_at":"2025-04-30T12:31:02.963Z","repository":{"id":201019105,"uuid":"703708135","full_name":"rickclephas/kotlin-docc","owner":"rickclephas","description":"Generate Swift DocC documentation for your Kotlin Multiplatform frameworks","archived":false,"fork":false,"pushed_at":"2023-10-18T15:23:23.000Z","size":86,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-10-18T16:35:05.004Z","etag":null,"topics":["api-reference","documentation","kotlin","swift"],"latest_commit_sha":null,"homepage":"","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/rickclephas.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}},"created_at":"2023-10-11T18:48:28.000Z","updated_at":"2023-10-18T16:35:07.558Z","dependencies_parsed_at":null,"dependency_job_id":"e8896f8e-5317-4c2a-aee3-ca820a541d22","html_url":"https://github.com/rickclephas/kotlin-docc","commit_stats":null,"previous_names":["rickclephas/kotlin-docc"],"tags_count":1,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rickclephas%2Fkotlin-docc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rickclephas%2Fkotlin-docc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rickclephas%2Fkotlin-docc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rickclephas%2Fkotlin-docc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rickclephas","download_url":"https://codeload.github.com/rickclephas/kotlin-docc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224207939,"owners_count":17273680,"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":["api-reference","documentation","kotlin","swift"],"created_at":"2024-11-12T03:17:17.609Z","updated_at":"2024-11-12T03:17:18.233Z","avatar_url":"https://github.com/rickclephas.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kotlin-DocC\n\nKotlin-DocC is a Gradle plugin that integrates the [`docc`](https://github.com/apple/swift-docc)\nCLI into your Kotlin Multiplatform projects.\n\nGenerating your first `.doccarchive` is as easy as applying the plugin:\n\n```kotlin\nplugins {\n    id(\"com.rickclephas.kmp.docc\") version \"0.1.0\"\n}\n```\n\nand running the `doccConvert` or `doccPreview` task for your target's framework.\n\nBoth the `doccConvert` and `doccPreview` tasks can be configured with the `docC` extension:\n\n```kotlin\nimport com.rickclephas.kmp.docc.dsl.docC\n\ngroup = \"com.example\"\nversion = \"1.0\"\n\nkotlin {\n    macosArm64 {\n        binaries.framework {\n            baseName = \"MyFramework\"\n            \n            docC {\n                // Configure the doccConvert and doccPreview tasks\n                common {\n                    // Configure the fallback values for the documentation bundle's Info.plist properties\n                    displayName.set(\"MyFramework\")\n                    bundleIdentifier.set(\"com.example.MyFramework\")\n                    bundleVersion.set(\"1.0\")\n\n                    // Use a custom Swift-DocC-Render template,\n                    // by default the Kotlin-DocC-Render template is used.\n                    // Setting this to `null` wil use the built-in Xcode template.\n                    renderDir.set(null as Directory?)\n                    \n                    // Adds additional arguments to the docc command\n                    additionalArgs.add(\"--warnings-as-errors\")\n                }\n                \n                // Configure the doccConvert task\n                convert {\n                    // Indicates if the `process-archive index` command should be run \n                    createIndex.set(false)\n                }\n                \n                // Configure the doccPreview task\n                preview {\n                    // The port number to use for the preview web server\n                    port.set(8080)\n                }\n            }\n        }\n    }\n}\n```\n\nTo further customize your documentation you can generate a `.docc` documentation bundle by adding files to\n`src/commonMain/docc`, or the `docc` folder of other source-sets.\n\nTake a look at the official DocC [documentation](https://www.swift.org/documentation/docc) to learn more about\n[formatting your documentation content](https://www.swift.org/documentation/docc/formatting-your-documentation-content)\nand [adding structure to your documentation pages](https://www.swift.org/documentation/docc/adding-structure-to-your-documentation-pages).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frickclephas%2Fkotlin-docc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frickclephas%2Fkotlin-docc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frickclephas%2Fkotlin-docc/lists"}