{"id":27962344,"url":"https://github.com/thoughtworks/inspac","last_synced_at":"2026-03-16T23:36:28.839Z","repository":{"id":41784763,"uuid":"362434892","full_name":"thoughtworks/inSpac","owner":"thoughtworks","description":"An SDK and a Keycloak plugin for fast integrating with Singpass Single Sign-on auth scheme (modified OpenID-Connect 1.0)","archived":false,"fork":false,"pushed_at":"2023-03-02T23:26:11.000Z","size":2116,"stargazers_count":10,"open_issues_count":2,"forks_count":4,"subscribers_count":15,"default_branch":"main","last_synced_at":"2024-04-16T07:16:42.089Z","etag":null,"topics":["govtech","openid-connect","sso","sso-authentication"],"latest_commit_sha":null,"homepage":"","language":"Java","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/thoughtworks.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":"2021-04-28T10:56:58.000Z","updated_at":"2024-03-22T03:39:16.000Z","dependencies_parsed_at":"2023-02-09T14:01:24.855Z","dependency_job_id":null,"html_url":"https://github.com/thoughtworks/inSpac","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoughtworks%2FinSpac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoughtworks%2FinSpac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoughtworks%2FinSpac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoughtworks%2FinSpac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thoughtworks","download_url":"https://codeload.github.com/thoughtworks/inSpac/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252941357,"owners_count":21828860,"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":["govtech","openid-connect","sso","sso-authentication"],"created_at":"2025-05-07T19:20:53.744Z","updated_at":"2026-03-16T23:36:28.791Z","avatar_url":"https://github.com/thoughtworks.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n      inSpac\n\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n      \u003cimg  src=\"assets/images/inSpac-logo.png\"\n      height=10%\n      width=10%\u003e\n\u003cbr\u003e\u003cbr\u003e\n\u003csup\u003e\n     Developed by Thoughtworks, Inc.\n\u003c/sup\u003e\n\u003cbr\u003e\n\u003c/p\u003e\n\n## About\n\n**inSpac** is the abbreviation for **in Singpass Authentication Components**, developed and maintained by _Thoughtworks, Inc_.\n\n**inSpac** offers an SDK and a Keycloak plugin that can help developers fast integrate *OpenID-Connect 1.0* auth scheme into project to interact with Singapore government digital platform -- *Singpass*.\n\ninSpac is implemented based on the official public documents: [For Developers {Login} / Overview](https://api.singpass.gov.sg/library/login/developers/overview-at-a-glance)\n\n## Artifacts \u0026 Usage\n### SDK\n[![SDK test](https://github.com/thoughtworks/inSpac/actions/workflows/sdk-test.yaml/badge.svg)](https://github.com/thoughtworks/inSpac/actions/workflows/sdk-test.yaml)\n\nThe SDK is for helping developers fast integrate with authentication scheme of Singpass platform.\n\nTo use the SDK, you have to import the SDK jar as a gradle dependency. For example, `build.gradle.kts` is configured as below.\n\n``` groovy\ndependencies {\n    implementation(fileTree(mapOf(\"dir\" to \"lib\", \"include\" to listOf(\"*.jar\"))))\n    // All [.jar] files under [lib] folder are going to be imported as gradle dependencies\n    \n    // Other dependencies\n    }\n```\n\n1. Download the latest version of SDK artifact (`com.thoughtworks.inspac.sdk.jar`) at [GitHub Releases](https://github.com/thoughtworks/inSpac/releases/latest)\n2. Create `lib` folder under the root directory of project (base on the above gradle configuration), put the SDK under `lib` folder.\n\n📖 We also offer detailed **API documentations** for developers' reference: https://thoughtworks.github.io/inSpac/\n\n📦 If you would like to check SDK documents / sources codes, please check [`sdk` folder](https://github.com/thoughtworks/inSpac/tree/main/sdk) to get more information.\n\n### Keycloak Plugin\n[![Keycloak plugin test](https://github.com/thoughtworks/inSpac/actions/workflows/keycloak-plugin-test.yaml/badge.svg)](https://github.com/thoughtworks/inSpac/actions/workflows/keycloak-plugin-test.yaml)\n\nThe Keycloak plugin only works on Keycloak. If you would like to use Keycloak as service provider and finish Singpass authentication with it, then this component is helpful.\n\n📦 If you would like to check Keycloak plugin documents / sources codes, please check [`keycloak-plugin` folder](https://github.com/thoughtworks/inSpac/tree/main/keycloak-plugin) to get more information.\n\n\n### Integration Sample\n[![Integration sample test](https://github.com/thoughtworks/inSpac/actions/workflows/sample-test.yaml/badge.svg)](https://github.com/thoughtworks/inSpac/actions/workflows/sample-test.yaml)\n\nThis is a demo project for demonstrating how to use SDK / Keycloak plugin. If you feel confused about using inSpac, please check the [`sample` folder](https://github.com/thoughtworks/inSpac/tree/main/sample).\n\n\n## Credits\nThe project is licensed under [`MIT`](https://github.com/thoughtworks/inSpac/blob/main/LICENSE).\n\n* [Singpass](https://www.singpass.gov.sg/) logo, brand, shape and all related services are owned by _Government of Singapore_.\n* All Singpass spellings strictly follow the official guidelines: [_Logo download \u0026 Brand guidelines - Naming Usage session_](https://api.singpass.gov.sg/library/myinfo/business/implementation-display-guidelines).\n* [Keycloak](https://www.keycloak.org) is an open source project, owned by _Red hat_.\n* [MockPass](https://github.com/opengovsg/mockpass) is an open-source project, owned by _GovTech_.\n* [Dokka](https://github.com/Kotlin/dokka) is used to generate API documents. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoughtworks%2Finspac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthoughtworks%2Finspac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoughtworks%2Finspac/lists"}