{"id":13880637,"url":"https://github.com/ssoready/ssoready","last_synced_at":"2025-04-13T01:55:46.359Z","repository":{"id":241644091,"uuid":"782596366","full_name":"ssoready/ssoready","owner":"ssoready","description":"Open-source dev tools for enterprise SSO. Ship SAML + SCIM support this afternoon.","archived":false,"fork":false,"pushed_at":"2025-03-31T17:08:43.000Z","size":179413,"stargazers_count":1441,"open_issues_count":10,"forks_count":50,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-04-13T01:55:12.690Z","etag":null,"topics":["auth","authentication","authentication-middleware","directory-sync","saml","saml-authentication","saml-service-provider","saml-sp-single-sign-on","saml2","scim","single-sign-on","single-signin-api","sso","sso-api","sso-authentication","sso-login","sso-solution"],"latest_commit_sha":null,"homepage":"https://ssoready.com","language":"TypeScript","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/ssoready.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-04-05T16:10:12.000Z","updated_at":"2025-04-09T21:57:54.000Z","dependencies_parsed_at":"2024-06-02T21:14:48.780Z","dependency_job_id":"11e61a64-8081-4254-94a6-11398eb93db2","html_url":"https://github.com/ssoready/ssoready","commit_stats":null,"previous_names":["ssoready/ssoready"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssoready%2Fssoready","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssoready%2Fssoready/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssoready%2Fssoready/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssoready%2Fssoready/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ssoready","download_url":"https://codeload.github.com/ssoready/ssoready/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654051,"owners_count":21140235,"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":["auth","authentication","authentication-middleware","directory-sync","saml","saml-authentication","saml-service-provider","saml-sp-single-sign-on","saml2","scim","single-sign-on","single-signin-api","sso","sso-api","sso-authentication","sso-login","sso-solution"],"created_at":"2024-08-06T08:03:20.394Z","updated_at":"2025-04-13T01:55:41.349Z","avatar_url":"https://github.com/ssoready.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/ucarion/documentation/blob/main/Frame%2024%20(2).png?raw=true#gh-light-mode-only\"\u003e\n\u003cimg src=\"https://github.com/ucarion/documentation/blob/main/Frame%2025%20(2).png?raw=true#gh-dark-mode-only\"\u003e\n\u003c/p\u003e\n\n# SSOReady\n\nWe're building dev tools for implementing Enterprise SSO. You can use SSOReady to add SAML support to your product this\nafternoon, for free, forever. You can think of us as an open source alternative to products like Auth0 or WorkOS.\n\n* MIT-Licensed\n* Self-hosted, or free at [app.ssoready.com](https://app.ssoready.com)\n* Keeps you in control of your users database\n* [Well-documented](https://ssoready.com/docs), straightforward implementation\n* [Python](https://github.com/ssoready/ssoready-python) and\n  [TypeScript/Node.js](https://github.com/ssoready/ssoready-typescript) SDKs, more in development\n\n## Documentation\n\nFor full documentation, check out https://ssoready.com/docs.\n\nAt a super high level, all it takes to add SAML to your product is to:\n\n1. Sign up on [app.ssoready.com](https://app.ssoready.com) for free\n2. From your login page, call the `getRedirectUrl` endpoint when you want a user to sign in with SAML\n3. Your user gets redirected back to a callback page you choose, e.g. `your-app.com/ssoready-callback?saml_access_code=...`. You\n   call `redeemSamlAccessCode` with the `saml_access_code` and log them in.\n\nCalling the `getRedirectUrl` endpoint looks like this in TypeScript:\n\n```typescript\n// this is how you implement a \"Sign in with SSO\" button\nconst { redirectUrl } = await ssoready.saml.getSamlRedirectUrl({\n  // the ID of the organization/workspace/team (whatever you call it)\n  // you want to log the user into\n  organizationExternalId: \"...\"\n});\n\n// redirect the user to `redirectUrl`...\n```\n\nAnd `redeemSamlAccessCode` looks like this:\n\n```typescript\n// this goes in your handler for POST /ssoready-callback\nconst { email, organizationExternalId } = await ssoready.saml.redeemSamlAccessCode({\n    samlAccessCode: \"saml_access_code_...\"\n});\n\n// log the user in as `email` inside `organizationExternalId`...\n```\n\nCheck out [the quickstart](https://ssoready.com/docs) for the details spelled out more concretely. The whole point of\nthis project is to make enterprise SSO super obvious and easy.\n\n## Philosophy\n\nWe believe everyone that sells software to businesses should support enterprise\nSSO. It's a huge security win for your customers.\n\nThe biggest problem with enterprise SSO is that it's way too confusing. Most\nopen-source SAML libraries are underdocumented messes. Every time I've tried to\nimplement SAML, I was constantly looking for someone to just tell me what in the\n_world_ I was supposed to concretely do.\n\nWe believe that more people will implement enterprise SSO if you make it obvious\nand secure by default. We are obsessed with giving every developer clarity and\nsecurity here.\n\nAlso, we believe randomly pumping up prices on security software like this is\ntotally unacceptable. MIT-licensing the software gives you insurance against us\never doing that. Do whatever you want with the code. Fork us if we ever\nmisbehave.\n\n## Reporting problems\n\nPlease feel welcome to use [GitHub issues](https://github.com/ssoready/ssoready/issues) or reach out directly at founders@ssoready.com. We want to know about any bugs you encounter, any features you'd like to request, or any questions you need answered. \n\nWe take security *extremely* seriously. If you become aware of any potential vulnerabilities, **please contact us immediately using security-contact@ssoready.com**. You will receive a response laying out next steps within 24 hours; in most cases, you should expect an immediate response. Do not open a GitHub issue. Do not post on any forums. If you feel unsure about whether something matters, know that we will be very grateful even for a false alarm. \n","funding_links":[],"categories":["TypeScript","\u003ca name=\"TypeScript\"\u003e\u003c/a\u003eTypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fssoready%2Fssoready","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fssoready%2Fssoready","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fssoready%2Fssoready/lists"}