{"id":22500571,"url":"https://github.com/walter-juan/compose-icon-collections","last_synced_at":"2026-01-27T09:39:00.327Z","repository":{"id":259515593,"uuid":"868046028","full_name":"walter-juan/compose-icon-collections","owner":"walter-juan","description":"Sets of Compose Multiplatform open source icons","archived":false,"fork":false,"pushed_at":"2025-08-15T14:04:43.000Z","size":17183,"stargazers_count":13,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-12T17:28:24.804Z","etag":null,"topics":["android","compose","compose-android","compose-desktop","compose-ios","compose-multiplatform","icons","jetbrains-compose","jetpack-compose","kotlin"],"latest_commit_sha":null,"homepage":"https://walter-juan.github.io/compose-icon-collections/","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/walter-juan.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":"2024-10-05T10:35:48.000Z","updated_at":"2025-07-12T02:31:30.000Z","dependencies_parsed_at":"2025-01-15T22:07:28.803Z","dependency_job_id":null,"html_url":"https://github.com/walter-juan/compose-icon-collections","commit_stats":null,"previous_names":["walter-juan/compose-icon-collections"],"tags_count":33,"template":false,"template_full_name":null,"purl":"pkg:github/walter-juan/compose-icon-collections","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/walter-juan%2Fcompose-icon-collections","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/walter-juan%2Fcompose-icon-collections/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/walter-juan%2Fcompose-icon-collections/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/walter-juan%2Fcompose-icon-collections/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/walter-juan","download_url":"https://codeload.github.com/walter-juan/compose-icon-collections/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/walter-juan%2Fcompose-icon-collections/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28810902,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T07:41:26.337Z","status":"ssl_error","status_checked_at":"2026-01-27T07:41:08.776Z","response_time":168,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["android","compose","compose-android","compose-desktop","compose-ios","compose-multiplatform","icons","jetbrains-compose","jetpack-compose","kotlin"],"created_at":"2024-12-06T23:01:24.607Z","updated_at":"2026-01-27T09:39:00.321Z","avatar_url":"https://github.com/walter-juan.png","language":"Kotlin","funding_links":[],"categories":["Kotlin"],"sub_categories":[],"readme":"# Compose icon collections\n\nOpen source icons sets for Compose Multiplatform — supporting Android, iOS, Desktop (JVM), and Web (Wasm).\n\n[![Platform](https://img.shields.io/badge/Platform-ComposeMultiplatform-brightgreen.svg)]()\n[![MIT License](https://img.shields.io/github/license/walter-juan/compose-icon-collections)](LICENSE)\n\n\u003ca target=\"_blank\" href=\"https://jetc.dev/issues/237.html\"\u003e\u003cimg src=\"https://img.shields.io/badge/As_Seen_In-jetc.dev_Newsletter_Issue_%23237-blue?logo=Jetpack+Compose\u0026amp;logoColor=white\" alt=\"As Seen In - jetc.dev Newsletter Issue #237\"\u003e\u003c/a\u003e\n\nAndroid | iOS | Desktop | Web\n:------:|:------:|:------:|:------:|\n\u003cimg width=\"125\" src=\"https://github.com/user-attachments/assets/0ab9703d-f9e9-45c7-8a63-36ec971fa4d1\"/\u003e|\u003cimg width=\"175\" src=\"https://github.com/user-attachments/assets/2bcbcfd9-c640-4f83-911f-940a11a11851\"/\u003e|\u003cimg width=\"250\" src=\"https://github.com/user-attachments/assets/68d3bd8b-cd0b-4869-97d1-536949421c4f\"/\u003e|\u003cimg width=\"250\" src=\"https://github.com/user-attachments/assets/4716b9ac-352c-41bc-b674-7f2e7abf9547\"/\u003e\n\n## How to use it\n\nAvailable in [Maven Central](https://central.sonatype.com/namespace/com.woowla.compose.icon.collections)\n\n```kotlin\nrepositories {\n    mavenCentral()\n}\n```\n\nAdd it to your project, see the table below for the corresponding version.\n\n```kotlin\nkotlin {\n   sourceSets {\n      commonMain {\n         dependencies {\n            implementation(\"com.woowla.compose.icon.collections:{artifact}:{version}\")\n         }\n      }\n   }\n}\n```\n\nIn your code, use the icons like this:\n\n```kotlin\nIcon(imageVector = Octicons.Home16, contentDescription = null)\nIcon(imageVector = Tabler.Filled.HospitalCircle, contentDescription = null)\nIcon(imageVector = Tabler.Outline.HospitalCircle, contentDescription = null)\n```\n\n## Icon packs\n\nSee all available icons on the [GitHub Pages](https://walter-juan.github.io/compose-icon-collections/), only the latest published version is available.\n\n\nThe same version numbers as the official icon packs have been followed\n\n| Icon Pack                                                    | Artifact    | Version                                                                                                                                                                                                                            | License                                                                                                                                                    |\n|--------------------------------------------------------------|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [Tabler](https://github.com/tabler/tabler-icons)             | tabler      | [![Tabler - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/tabler)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=tabler)                 | [![GitHub License](https://img.shields.io/github/license/tabler/tabler-icons)](https://github.com/tabler/tabler-icons/blob/main/LICENSE)                   |\n| [Octicons](https://github.com/primer/octicons)               | octicons    | [![Octicons - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/octicons)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=octicons)           | [![GitHub License](https://img.shields.io/github/license/primer/octicons)](https://github.com/primer/octicons/blob/main/LICENSE)                           |\n| [Remix Icon](https://github.com/Remix-Design/RemixIcon)      | remix       | [![Remix - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/remix)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=remix)                    | [![GitHub License](https://img.shields.io/github/license/Remix-Design/RemixIcon)](https://github.com/Remix-Design/RemixIcon/blob/master/License)           |\n| [Boxicons](https://github.com/atisawd/boxicons)              | boxicons    | [![Boxicons - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/boxicons)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=boxicons)           | [![GitHub License](https://img.shields.io/github/license/atisawd/boxicons)](https://github.com/atisawd/boxicons/blob/master/LICENSE)                       |\n| [Feather](https://github.com/feathericons/feather)           | feather     | [![Feather - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/feather)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=feather)              | [![GitHub License](https://img.shields.io/github/license/feathericons/feather)](https://github.com/feathericons/feather/blob/main/LICENSE)                 |\n| [Ionicons](https://github.com/ionic-team/ionicons)           | ionicons    | [![Ionicons - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/ionicons)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=ionicons)           | [![GitHub License](https://img.shields.io/github/license/ionic-team/ionicons)](https://github.com/ionic-team/ionicons/blob/main/LICENSE)                   |\n| [Font Awesome](https://github.com/FortAwesome/Font-Awesome)  | fontawesome | [![Font Awesome - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/fontawesome)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=fontawesome) | [![Static Badge](https://img.shields.io/badge/license-CC_BY_4.0-green)](https://github.com/FortAwesome/Font-Awesome/blob/6.x/LICENSE.txt)                  |\n| [Heroicons](https://github.com/tailwindlabs/heroicons)       | heroicons   | [![Heroicons - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/heroicons)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=heroicons)        | [![GitHub License](https://img.shields.io/github/license/tailwindlabs/heroicons)](https://github.com/tailwindlabs/heroicons/blob/master/LICENSE)           |                                                                                                                                        |\n| [Simple icons](https://github.com/simple-icons/simple-icons) | simpleicons | [![Simple icons - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/simpleicons)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=simpleicons) | [![GitHub License](https://img.shields.io/github/license/simple-icons/simple-icons)](https://github.com/simple-icons/simple-icons/blob/develop/LICENSE.md) |                                                                                                                                        |\n| [Bootstrap icons](https://github.com/twbs/icons)             | twbs        | [![Bootstrap icons - Maven Central Version](https://img.shields.io/maven-central/v/com.woowla.compose.icon.collections/twbs)](https://central.sonatype.com/search?namespace=com.woowla.compose.icon.collections\u0026q=twbs)            | [![GitHub License](https://img.shields.io/github/license/twbs/icons)](https://github.com/twbs/icons/blob/main/LICENSE)                                     |                                                                                                                                        |\n\n## How it works\n\n**Download task**\n\nDownload tasks are executed to update the icons, the process is as follows:\n1. The icons are downloaded from the official repositories\n2. The SVG files are converted to Compose using [SVG to compose](https://github.com/DevSrSouza/svg-to-compose) and saved in the corresponding module\n3. Documentation is generated and saved in the [docs](/docs) folder\n4. The version is updated in the `build.gradle` file\n5. (Optional) The changes are committed to the repository\n\n**Auto update**\n\nThe [Update icons workflow](.github/workflows/update-icons.yml) will update the icons automatically every 2 weeks. Right now, it only updates icons that have GitHub releases, so there are some icons that should be updated manually\n\n**Special cases**\n\nTypically, all icon download tasks retrieve icons from GitHub releases. However, there are a few exceptions:\n\n- **boxicons**: Downloads icons directly from the main branch for this reason this is not updated automatically, a manual update required.\n- **ionicons**: Uses a custom `afterDownload` and `gitHubUrlProvider` function to categorize icons. Additionally, there is an issue with the `Square` value from `StrokeCap` in the generated image vectors. This must be manually replaced with `StrokeCap.Square` to avoid conflicts with an icon named `Square` (see [#35](https://github.com/walter-juan/compose-icon-collections/pull/35)).\n- **fontawesome**: Implements a custom `iconNameTransformer` to handle conflicts between the `FontAwesome` icon and its accessor name.\n- **simpleicons**: Uses a custom `afterDownload` function to remove the `lerna.svg` icon because it throws `MethodTooLargeException` when compiling the project.\n\n## Development\n\n### Requirements\n\n- Android Studio\n- [Kotlin Multiplatform Plugin](https://plugins.jetbrains.com/plugin/14936-kotlin-multiplatform)\n- Java 17\n\n### Update the icons\n\n- Icon pack using GitHub releases: Run the icon download task, use the `-Pgitcommit` flag to commit the changes.\n- Icon pack using the main branch: Run the icon download task, manually update the version in the `build.gradle` file, and commit the changes.\n\n### Add new icons\n\n1. Add new module\n   - Create a new module by copying the `build.gradle` from an existing module. Copy `octicons` if the icon pack uses GitHub releases or `boxicons` if it uses the main branch.\n   - Update everything needed like the version, `download-icons` task, and others from the `build.gradle`\n2. Update workflows\n   - Add new input option in [deploy.yml](.github/workflows/publish.yml) \n   - If the icon pack uses GitHub releases, add the new task in [update-icons.yml](.github/workflows/update-icons.yml)\n3. Update readme\n   - Add a new entry in the *Icon packs* section\n   - If a special case has been added, add a note in the *Special cases* section\n\n### Test icons\n\nRight now the only way to test is by running the sample app, follow these steps:\n\n1. Replace the icons dependency you would like to test in [build.gradle.kts](sample/composeApp/build.gradle.kts) file\n2. Add `AllIcons` to the `icons` list in the [App.kt](sample/composeApp/src/commonMain/kotlin/com/woowla/compose/icon/collections/sample/App.kt) file\n3. Run the sample app and check the icons\n\n### Gradle tasks\n\n- The folder [.run](.run) contains all the necessary tasks to download the icons and run the sample apps (Android/iOS/Desktop/Web)\n- Download icons tasks with update docs and version:\n  - `./gradlew \u003cmodule\u003e:download-icons`\n  - `./gradlew \u003cmodule\u003e:download-icons -Pgitcommit` use the `-Pgitcommit` flag to commit the changes\n  - `./gradlew download-icons` to download all the icons, just in case **do not use with the `-Pgitcommit` flag**\n\n### GitHub actions\n\n- [Verification](.github/workflows/verification.yml): Verify the icons, it must be run manually before merge a pull request\n- [Deploy](.github/workflows/publish.yml): Deploy the main branch to Maven Central\n- [Update icons](.github/workflows/update-icons.yml): Update the icons automatically, not all icons can be updated automatically\n\n## Useful links\n\n- [How to run and create multiplatform project](https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-multiplatform-create-first-app.html)\n- Multiplatform library template, [from Kotlin](https://github.com/Kotlin/multiplatform-library-template)\n- Multiplatform library template, [from github.com/Tweener/kmplate-lib](https://github.com/Tweener/kmplate-lib)\n- [Multiplatform app template](https://kmp.jetbrains.com/)\n- [Publish Kotlin/Wasm to GitHub Pages](https://kotlinlang.org/docs/wasm-get-started.html#publish-on-github-pages)\n- [SVG to compose](https://github.com/DevSrSouza/svg-to-compose)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwalter-juan%2Fcompose-icon-collections","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwalter-juan%2Fcompose-icon-collections","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwalter-juan%2Fcompose-icon-collections/lists"}