{"id":13610265,"url":"https://github.com/jisungbin/ComposeInvestigator","last_synced_at":"2025-04-12T22:33:16.019Z","repository":{"id":200552375,"uuid":"703660716","full_name":"jisungbin/ComposeInvestigator","owner":"jisungbin","description":"Trace the recomposition of a Composable with its cause without boilerplate code 😎.","archived":false,"fork":false,"pushed_at":"2025-03-19T12:56:41.000Z","size":1170,"stargazers_count":299,"open_issues_count":8,"forks_count":8,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-19T13:42:05.344Z","etag":null,"topics":["compose-compiler-plugin","compose-runtime","kotlin-compiler-plugin"],"latest_commit_sha":null,"homepage":"https://jisungbin.github.io/ComposeInvestigator/","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/jisungbin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["jisungbin"]}},"created_at":"2023-10-11T16:52:30.000Z","updated_at":"2025-03-18T07:24:49.000Z","dependencies_parsed_at":"2023-11-22T14:35:45.189Z","dependency_job_id":"2aa8351d-f1e5-40c5-8fa8-be5bc98af262","html_url":"https://github.com/jisungbin/ComposeInvestigator","commit_stats":null,"previous_names":["jisungbin/composeinvalidator"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jisungbin%2FComposeInvestigator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jisungbin%2FComposeInvestigator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jisungbin%2FComposeInvestigator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jisungbin%2FComposeInvestigator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jisungbin","download_url":"https://codeload.github.com/jisungbin/ComposeInvestigator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248641716,"owners_count":21138254,"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":["compose-compiler-plugin","compose-runtime","kotlin-compiler-plugin"],"created_at":"2024-08-01T19:01:43.057Z","updated_at":"2025-04-12T22:33:16.012Z","avatar_url":"https://github.com/jisungbin.png","language":"Kotlin","funding_links":["https://github.com/sponsors/jisungbin"],"categories":["Kotlin"],"sub_categories":[],"readme":"\u003e [!WARNING]\n\u003e\n\u003e ### This tool has many issues and is not recommended for use.\n\u003e\n\u003e I'm currently redeveloping this tool from the ground up. It will take a long time\n\u003e to reach a stable stage.\n\u003e\n\u003e Please see [rework](https://github.com/jisungbin/ComposeInvestigator/tree/rework) branch.\n\n## ComposeInvestigator\n\nTrace the recomposition of a Composable with its cause without boilerplate code 😎.\n\nThis tool was started for personal learning and has not been proven necessary for production.\nHowever, it can perform the following tasks:\n\n- **Reports if a Composable is skipped during recomposition.**\n- **Reports if the arguments of a Composable have changed and been recomposed.** It can also compare the\n  values before and after the change.\n- **Reports if the state values inside a Composable have been modified.** It can also compare the values\n  before and after the change. *(via ComposeInvestigator's runtime plugin)*\n\n---\n\n### Getting Started ![gradle-plugin-version](https://img.shields.io/maven-central/v/in.sungb.composeinvestigator/composeinvestigator-gradle-plugin?style=flat-square)\n\nJust add the plugin to your module-level Gradle like this:\n\n```groovy\nplugins {\n  id 'in.sungb.composeinvestigator' version '\u003cversion\u003e'\n}\n```\n\n\u003e [!IMPORTANT]\n\u003e\n\u003e ComposeInvestigator is heavily dependent on the Kotlin version. So the version of \n\u003e ComposeInvestigator follows the format `[Kotlin Version - ComposeInvestigator Version]`.\n\nYou don't need to use any APIs to get started. But if you're looking for a fancier experience,\nconsider using the runtime API.\n\nComprehensive documentation for ComposeInvestigator is available\non [project website](https://jisungbin.github.io/ComposeInvestigator).\n\n### Preview\n\n![image](https://github.com/jisungbin/ComposeInvestigator/assets/40740128/98991bd9-97f2-47a7-9cc9-6f9cd1cda0e3)\n\n### License\n\n```\nCopyright 2024 Ji Sungbin\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","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjisungbin%2FComposeInvestigator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjisungbin%2FComposeInvestigator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjisungbin%2FComposeInvestigator/lists"}