{"id":15634930,"url":"https://github.com/mikepenz/hypnoticcanvas","last_synced_at":"2025-10-26T07:20:15.782Z","repository":{"id":226897892,"uuid":"769513931","full_name":"mikepenz/HypnoticCanvas","owner":"mikepenz","description":"A shader modifier for Compose Multiplatform / Jetpack Compose","archived":false,"fork":false,"pushed_at":"2025-02-07T10:42:27.000Z","size":18880,"stargazers_count":174,"open_issues_count":0,"forks_count":6,"subscribers_count":2,"default_branch":"dev","last_synced_at":"2025-03-28T21:02:27.347Z","etag":null,"topics":["android","animation","background","compose","glsl","kotlin","mesh-gradient","mesh-gradients","multiplatform","shader","shaders","sksl"],"latest_commit_sha":null,"homepage":"https://mikepenz.github.io/HypnoticCanvas/","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/mikepenz.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-03-09T09:44:58.000Z","updated_at":"2025-03-24T02:10:05.000Z","dependencies_parsed_at":"2024-12-22T11:08:00.023Z","dependency_job_id":"67d3c0ec-c2ae-45f1-85c8-d1fb7a1d33a0","html_url":"https://github.com/mikepenz/HypnoticCanvas","commit_stats":{"total_commits":46,"total_committers":2,"mean_commits":23.0,"dds":"0.021739130434782594","last_synced_commit":"30b71fb5c33ca6bc420b5c7d992c5662b2668a14"},"previous_names":["mikepenz/hypnoticcanvas"],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FHypnoticCanvas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FHypnoticCanvas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FHypnoticCanvas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FHypnoticCanvas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikepenz","download_url":"https://codeload.github.com/mikepenz/HypnoticCanvas/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247256105,"owners_count":20909240,"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","animation","background","compose","glsl","kotlin","mesh-gradient","mesh-gradients","multiplatform","shader","shaders","sksl"],"created_at":"2024-10-03T10:59:12.923Z","updated_at":"2025-10-26T07:20:15.776Z","avatar_url":"https://github.com/mikepenz.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Maven Central](https://img.shields.io/maven-central/v/com.mikepenz.hypnoticcanvas/hypnoticcanvas)](https://search.maven.org/search?q=g:com.mikepenz.hypnoticcanvas)\n\n# HypnoticCanvas\n\n\u003e [!NOTE]  \n\u003e This README is under construction.\n\nHypnoticCanvas is a library providing a convenient `Modifier` offering mesmerising shaders as\nbackground in your Compose based UI.\n\nhttps://github.com/mikepenz/HypnoticCanvas/assets/1476232/ee120f1c-d18a-43c4-a7bc-a2d245e01482\n\n## Setup\n\n### Core-module\n\n```gradle\nimplementation \"com.mikepenz.hypnoticcanvas:hypnoticcanvas:${version}\"\n```\n\n\u003e [!NOTE]  \n\u003e All shaders provided in the `core` module are licensed either under `MIT` or `Apache 2.0` license.\n\n### Shader-module\n\n```gradle\nimplementation \"com.mikepenz.hypnoticcanvas:hypnoticcanvas-shaders:${version}\"\n```\n\n\u003e [!IMPORTANT]  \n\u003e Shaders in this module have non permissive licenses. Ensure to read the\n\u003e [LICENSE](https://github.com/mikepenz/HypnoticCanvas?tab=readme-ov-file#shaders-module-license)\n\u003e section of the README.\n\n## Usage\n\n```kotlin\nBox(\n    modifier = Modifier\n        .fillMaxSize()\n        .shaderBackground(BlackCherryCosmos)\n)\n\n// Usage of Shader with configurations\nBox(\n    modifier = Modifier\n        .fillMaxSize()\n        .shaderBackground(\n            MeshGradient(\n                arrayOf(Color(0xFFFF15E5), Color(0xFFFAAEF7), Color(0xFF6903F9)),\n                scale = 1f\n            )\n        )\n)\n```\n\n## Compatiblity\n\nHypnoticCanvas is built\nwith [Compose Multiplatform](https://www.jetbrains.com/lp/compose-multiplatform/), meaning that it\nsupports different platforms:\n\n| Platform      | Supported | Link                                                 |\n|---------------|-----------|------------------------------------------------------|\n| Android       | ✅  (A13+) |                                                      |\n| Desktop (JVM) | ✅         |                                                      |\n| iOS           | ✅         |                                                      |\n| Wasm          | ✅         | [Sample](https://mikepenz.github.io/HypnoticCanvas/) |\n\n## Build \u0026 Run Sample App\n\n### Run Desktop App\n\n```bash\n./gradlew sample:run\n```\n\n### Run Web App\n\n```bash\n./gradlew sample:wasmJsRun\n```\n\n### Update aboutLibraries.json\n\n```bash\n ./gradlew sample:exportLibraryDefinitions -PaboutLibraries.exportPath=src/commonMain/composeResources/files/\n ```\n\n## Credit\n\nThe base project setup is strongly based on the [haze](https://github.com/chrisbanes/haze) project\nby [Chris Banes](https://github.com/chrisbanes/),\nLicensed under [Apache License 2.0](https://github.com/chrisbanes/haze/blob/main/LICENSE)\n\nThe individual shaders are based on the respective shaders licenses. More details below.\n\n### Shaders core-module\n\n| Name                                                     | Author                                                          | License     | Note                                                                         |\n|----------------------------------------------------------|-----------------------------------------------------------------|-------------|------------------------------------------------------------------------------|\n| MeshGradient                                             | Mike Penz                                                       | MIT License |                                                                              |\n| MesmerizingLens                                          | Mike Penz                                                       | MIT License |                                                                              |\n| [GlossyGradients](https://www.shadertoy.com/view/lX2GDR) | [Giorgi Azmaipharashvili](https://www.shadertoy.com/user/Peace) | MIT License | Rights bought for this shader on Fiverr, included in this project under MIT. |\n\n### Shaders shaders-module\n\n| Name                                                                                                                                                                                      | Author                                              | License              | Note                                                                                              |\n|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------|----------------------|---------------------------------------------------------------------------------------------------|\n| [BlackCherryCosmos2](https://editor.isf.video/shaders/612cb473f4fe08001a0a6281) [via](https://glslsandbox.com/e#28545.0) [via](https://editor.isf.video/shaders/5e7a7fcf7c113618206de4cc) | [axiomcrux](https://editor.isf.video/u/axiomcrux)   | CC BY-NC-SA 3.0 DEED | Shader does not specifically include license, however found the shader it appears to be based on. |\n| [GoldenMagma](https://www.shadertoy.com/view/tdBBRV)                                                                                                                                      | [TAKUSAKU](https://www.shadertoy.com/user/TAKUSAKU) | CC BY-NC-SA 3.0 DEED |                                                                                                   |\n| [IceReflection](https://www.shadertoy.com/view/3djfzy)                                                                                                                                    | [TAKUSAKU](https://www.shadertoy.com/user/TAKUSAKU) | CC BY-NC-SA 3.0 DEED |                                                                                                   |\n| [InkFlow](https://www.shadertoy.com/view/WdjBWD)                                                                                                                                          | [TAKUSAKU](https://www.shadertoy.com/user/TAKUSAKU) | CC BY-NC-SA 3.0 DEED |                                                                                                   |\n| [OilFlow](https://www.shadertoy.com/view/Wd2fDW)                                                                                                                                          | [TAKUSAKU](https://www.shadertoy.com/user/TAKUSAKU) | CC BY-NC-SA 3.0 DEED |                                                                                                   |\n| [PurpleLiquid](https://www.shadertoy.com/view/dsXyzf)                                                                                                                                     | [fouad](https://www.shadertoy.com/user/fouad)       | CC BY-NC-SA 3.0 DEED |                                                                                                   |\n| [RainbowWater](https://www.shadertoy.com/view/dtySRR)                                                                                                                                     | [flylo](https://www.shadertoy.com/user/flylo)       | CC BY-NC-SA 3.0 DEED |                                                                                                   |\n| [Stage](https://www.shadertoy.com/view/wtfcDj)                                                                                                                                            | [TAKUSAKU](https://www.shadertoy.com/user/TAKUSAKU) | CC BY-NC-SA 3.0 DEED |                                                                                                   |\n\n## License\n\nThe core project code in this repository is licensed as under Apache\n2.0. `SPDX-License-Identifier: Apache-2.0`.\n\nAll Shaders are provided under their respective Authors license.\n\nShaders in the `hypnoticcanvas` module are licensed either as `MIT, or Apache 2.0`.\nShaders in the `hypnoticcanvas-shaders` module are licensed\nas `SPDX-License-Identifier: CC-BY-NC-SA-3.0`.\n\n### Core module License\n\nThe source code for the core module is licensed under Apache 2.0, with the shaders provided in the\ncore module as MIT License.\n\n```\nCopyright 2025 Mike Penz\n \nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    https://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n\n### Shaders module License\n\nShaders in this module are most from [ShaderToy.com](https://www.shadertoy.com/) and are\nlicensed [Attribution-NonCommercial-ShareAlike 3.0 Unported](https://creativecommons.org/licenses/by-nc-sa/3.0/).\nWhich is the default license as outlined by [ShaderToy.com](https://www.shadertoy.com/terms)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikepenz%2Fhypnoticcanvas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikepenz%2Fhypnoticcanvas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikepenz%2Fhypnoticcanvas/lists"}