{"id":18430340,"url":"https://github.com/avan1235/compose-extensions","last_synced_at":"2025-04-07T17:33:33.773Z","repository":{"id":202797311,"uuid":"705304457","full_name":"avan1235/compose-extensions","owner":"avan1235","description":"Compose Extensions bring some useful extensions to Compose Multiplatform, making it easier to provide certain functionalities","archived":false,"fork":false,"pushed_at":"2024-04-14T04:48:07.000Z","size":317,"stargazers_count":4,"open_issues_count":2,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-04-14T10:57:16.359Z","etag":null,"topics":["android","camera","camera-permission","camera-qr","compose","compose-multiplatform","compose-util","desktop","ios","ios-simulator","jvm","linux","macos","multiplatform","util","windows"],"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/avan1235.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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}},"created_at":"2023-10-15T16:38:30.000Z","updated_at":"2024-04-18T05:31:33.859Z","dependencies_parsed_at":null,"dependency_job_id":"2ec67e40-42a2-4e72-8a90-264de59e9b9e","html_url":"https://github.com/avan1235/compose-extensions","commit_stats":{"total_commits":22,"total_committers":2,"mean_commits":11.0,"dds":"0.045454545454545414","last_synced_commit":"63060a66297792cb0dd07db57c7ec69473697811"},"previous_names":["avan1235/compose-extensions"],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avan1235%2Fcompose-extensions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avan1235%2Fcompose-extensions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avan1235%2Fcompose-extensions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avan1235%2Fcompose-extensions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avan1235","download_url":"https://codeload.github.com/avan1235/compose-extensions/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247698110,"owners_count":20981299,"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":["android","camera","camera-permission","camera-qr","compose","compose-multiplatform","compose-util","desktop","ios","ios-simulator","jvm","linux","macos","multiplatform","util","windows"],"created_at":"2024-11-06T05:20:20.534Z","updated_at":"2025-04-07T17:33:33.050Z","avatar_url":"https://github.com/avan1235.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Platforms](https://img.shields.io/badge/mobile-Android%20%7C%20iOS-blue)](https://github.com/avan1235/compose-extensions/releases)\n[![Platforms](https://img.shields.io/badge/desktop-Windows%20%7C%20macOS%20%7C%20Linux-blue)](https://github.com/avan1235/compose-extensions/releases)\n\n[![Kotlin](https://img.shields.io/badge/Kotlin-2.0.0-RC2-green.svg?logo=kotlin)](https://github.com/JetBrains/kotlin)\n[![Compose](https://img.shields.io/badge/Compose%20Multiplatform-1.6.10-green.svg?logo=jetpack-compose)](https://github.com/JetBrains/compose-multiplatform)\n[![Maven Central](https://img.shields.io/maven-central/v/in.procyk.compose/camera-qr?label=Maven%20Central\u0026color=green)](https://central.sonatype.com/namespace/in.procyk.compose)\n[![Latest Release](https://img.shields.io/github/v/release/avan1235/compose-extensions?label=Release\u0026color=green)](https://github.com/avan1235/compose-extensions/releases)\n[![Build](https://img.shields.io/github/actions/workflow/status/avan1235/compose-extensions/release.yml?label=Build\u0026color=green)](https://github.com/avan1235/compose-extensions/actions/workflows/release.yml)\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-red.svg)](./LICENSE.md)\n[![GitHub Repo stars](https://img.shields.io/github/stars/avan1235/compose-extensions?style=social)](https://github.com/avan1235/compose-extensions/stargazers)\n[![Fork OpenOTP](https://img.shields.io/github/forks/avan1235/compose-extensions?logo=github\u0026style=social)](https://github.com/avan1235/compose-extensions/fork)\n\n# Compose Multiplatform Extensions\n\nThis repository aims to bring some useful extensions for compose-multiplatform projects, which\nare self-contained and allow to deploy compose applications to Android, iOS and Desktop platforms.\n\n## How to use?\n\nSelect the extension that you find useful in your project and put\n\n```kotlin\nimplementation(\"in.procyk.compose:extension-name:1.6.10.1\")\n```\n\ninto your `commonMain` source set's dependencies block, where `extension-name` should be replaced with the\nproper name from the list of available extensions.\n\nSee some example in [examples](./examples) project, where every extension is added in [build.gradle.kts](./examples/build.gradle.kts).\n\n## Extensions\n\n- `calendar` - calendar compose implementation migrated to Kotlin Multiplatform from [ComposeCalendar](https://github.com/boguszpawlowski/ComposeCalendar). See sample usage [here](./examples/src/commonMain/kotlin/in/procyk/compose/examples/Calendars.kt). \n    ```kotlin\n    implementation(\"in.procyk.compose:calendar:1.6.10.1\")\n    ```\n\n- `camera-qr` - detecting QR codes camera view. See sample usage [here](./examples/src/commonMain/kotlin/in/procyk/compose/examples/CameraQR.kt).\n    ```kotlin\n    implementation(\"in.procyk.compose:camera-qr:1.6.10.1\")\n    ```\n    - for Android Application add to [AndroidManifest.xml](./examples/src/androidMain/AndroidManifest.xml)\n      ```xml\n      \u003cuses-permission android:name=\"android.permission.CAMERA\"/\u003e\n      \u003cuses-feature\n          android:name=\"android.hardware.camera\"\n          android:required=\"false\"/\u003e\n      ```\n\n    - for iOS Application add `Privacy - Camera Usage Description` entry to [Info.plist](./examples/xcode/iosApp/Info.plist)\n      ```xml\n      \u003ckey\u003eNSCameraUsageDescription\u003c/key\u003e\n      \u003cstring\u003e\u003c/string\u003e\n      ```\n   \n    - for Desktop Application add to [build.gradle.kts](./examples/build.gradle.kts)\n      ```kotlin\n      runtimeEntitlementsFile.set(project.file(\"runtime-entitlements.plist\"))\n      infoPlist {\n          extraKeysRawXml = \"\"\"\n              \u003ckey\u003eNSCameraUsageDescription\u003c/key\u003e\n              \u003cstring\u003e\u003c/string\u003e\n          \"\"\".trimIndent()\n      }\n      ```\n      to your `macOS { ... }` block  and include \n      [runtime-entitlements.plist](./examples/runtime-entitlements.plist) in your project source files\n\n- `camera-permission` - ask for camera permission. See sample usage [here](./examples/src/commonMain/kotlin/in/procyk/compose/examples/CameraPermission.kt).\n    ```kotlin\n    implementation(\"in.procyk.compose:camera-permission:1.6.10.1\")\n    ```\n\n- `util` - handy functions to work with compose. Explore the [directory](./util/src/commonMain/kotlin/in/procyk/compose/util) to see what cool features are available.\n    ```kotlin\n    implementation(\"in.procyk.compose:util:1.6.10.1\")\n    ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favan1235%2Fcompose-extensions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favan1235%2Fcompose-extensions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favan1235%2Fcompose-extensions/lists"}