{"id":29458900,"url":"https://github.com/mistletoe5215/glide-ksp","last_synced_at":"2026-04-06T07:01:37.547Z","repository":{"id":57734168,"uuid":"470540838","full_name":"mistletoe5215/glide-ksp","owner":"mistletoe5215","description":"glide's kotlin annotation processor,use kotlin symbol processor(ksp)","archived":false,"fork":false,"pushed_at":"2022-07-08T02:26:55.000Z","size":260,"stargazers_count":26,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-11T17:38:45.608Z","etag":null,"topics":["android","annotation-processing","glide-ksp","kotlin","ksp"],"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/mistletoe5215.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}},"created_at":"2022-03-16T10:49:46.000Z","updated_at":"2024-06-27T09:27:39.000Z","dependencies_parsed_at":"2022-09-26T22:10:57.864Z","dependency_job_id":null,"html_url":"https://github.com/mistletoe5215/glide-ksp","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/mistletoe5215/glide-ksp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistletoe5215%2Fglide-ksp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistletoe5215%2Fglide-ksp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistletoe5215%2Fglide-ksp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistletoe5215%2Fglide-ksp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mistletoe5215","download_url":"https://codeload.github.com/mistletoe5215/glide-ksp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistletoe5215%2Fglide-ksp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31463015,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"online","status_checked_at":"2026-04-06T02:00:07.287Z","response_time":112,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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","annotation-processing","glide-ksp","kotlin","ksp"],"created_at":"2025-07-14T00:07:53.405Z","updated_at":"2026-04-06T07:01:37.518Z","avatar_url":"https://github.com/mistletoe5215.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# glide-ksp [![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.github.mistletoe5215/glide-ksp/badge.svg)](https://search.maven.org/search?q=g:io.github.mistletoe5215%20AND%20a:glide-ksp%20AND%20v:1.0.0)\n\n\u003e glide's kotlin annotation processor,use kotlin symbol processor(ksp)\n\n### requirements\n|library|version|\n|:----:|:----:|\n|kotlin| \u003e= `1.6.21`|\n|ksp| `1.6.21-1.0.5`|\n\n### usage\n\n- add mavenCentral repository to repositories\n\n```groovy\n//in root build.gradle\nallprojects {\n    repositories {\n        google()\n        jcenter()\n        mavenCentral()\n    }\n}\n\n```\n\n- declare kotlin symbol processor plugin and it's version without applying it  if u have any other usages of ksp\n\n```groovy\n    // in root build.gradle \n   plugins {\n    id 'com.google.devtools.ksp' version \"1.6.21-1.0.5\" apply false\n   }\n\n```\n - apply kotlin symbol processor plugin in your modules which needs glide's annotation processor\n\n```groovy\n   // for example,my demo's application module uses glide's annotation processor\n   plugins {\n       //...\n       //add version if u haven't specified the version \n       id 'com.google.devtools.ksp' version \"1.6.21-1.0.5\"\n   }\n   //add ksp generated class path into sourceSets\n   android {\n       //...\n       sourceSets {\n           main {\n               java.srcDirs += ['build/generated/ksp']\n           }\n       }\n   }\n   //add `glide-ksp` using ksp \n   dependencies {\n       ksp \"io.github.mistletoe5215:glide-ksp:1.0.0\"\n   }\n   \n\n```\n -  find classes  with `@GlideModule`/`@GlideExtension` in previous uploaded open source library module\n\n \u003e use ksp `options` to  mark the custom LibraryGlideModules; in java annotation processor/`kapt` these classes  can be found using `RoundEnvironment` to find class  with `@GlideModule` annotation;\n \u003e but now in ksp ,we can't find these classes with using ksp's `Resolver` or `SymbolProcessorEnvironment`.see [issue in ksp](https://github.com/google/ksp/issues/131)\n \u003e therefore,i can only put these class qualifiedNames into ksp compile args to solve it(so stupid ( :(,any one can help me plz push request)\n \u003e they're splited by \"|\" separator,use key named `GlideModule`\n \u003e the custom LibraryGlideExtensions,as well,use key named `GlideExtension`\n \n```groovy\n    //in application's build.gradle convention scope\n   ksp {\n       arg( \"GlideModule\",\"com.bumptech.glide.integration.okhttp3.OkHttpLibraryGlideModule\")\n   }\n\n```\n\n - find classes  with `@GlideModule`/`@GlideExtension` in new library module which has created `com.bumptech.glide.ksp` directory \n\n \u003e put the module's LibraryGlideModule Impl class under `com.bumptech.glide.ksp` directory ,it can be found and registered automatically\n \n\n### check whether Glide-KSP proceed successfully\n\n - make sure the necessary classes are generated ,they are `GeneratedAppGlideModuleImpl`,`GeneratedRequestManagerFactory`,`GlideApp`,`GlideOption`,`GlideRequest`,`GlideRequests`\n\n![](./snapshots/generated_classes.png)\n\n - then,call Glide's init in Application,set break points in `GeneratedAppGlideModuleImpl`,run app as  debug mode to see whether it will block in these break points\n   \n - finally,see whether it keeps functioning properly,load image successfully as usual\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmistletoe5215%2Fglide-ksp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmistletoe5215%2Fglide-ksp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmistletoe5215%2Fglide-ksp/lists"}