{"id":39498125,"url":"https://github.com/clarin-eric/discovery-service-frontend","last_synced_at":"2026-01-20T17:04:12.678Z","repository":{"id":29179450,"uuid":"120443463","full_name":"clarin-eric/discovery-service-frontend","owner":"clarin-eric","description":"SPF Central Discovery Service Backend","archived":false,"fork":false,"pushed_at":"2025-11-06T13:32:13.000Z","size":10088,"stargazers_count":0,"open_issues_count":7,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2026-01-18T15:19:31.264Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.clarin.eu/content/clarin-discovery-service","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clarin-eric.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-02-06T11:11:00.000Z","updated_at":"2025-11-06T13:29:32.000Z","dependencies_parsed_at":"2025-05-21T09:29:29.557Z","dependency_job_id":"c91b2e99-8cdb-44c4-a346-cd1f09236f38","html_url":"https://github.com/clarin-eric/discovery-service-frontend","commit_stats":null,"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"purl":"pkg:github/clarin-eric/discovery-service-frontend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarin-eric%2Fdiscovery-service-frontend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarin-eric%2Fdiscovery-service-frontend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarin-eric%2Fdiscovery-service-frontend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarin-eric%2Fdiscovery-service-frontend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clarin-eric","download_url":"https://codeload.github.com/clarin-eric/discovery-service-frontend/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clarin-eric%2Fdiscovery-service-frontend/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28607624,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T16:10:39.856Z","status":"ssl_error","status_checked_at":"2026-01-20T16:10:39.493Z","response_time":117,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2026-01-18T05:44:08.969Z","updated_at":"2026-01-20T17:04:12.660Z","avatar_url":"https://github.com/clarin-eric.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"* ![Build CI](https://github.com/clarin-eric/discovery-service-frontend/actions/workflows/node.js.yml/badge.svg)\n* [Known Vulnerabilities](https://app.snyk.io/org/clarin-eric/project/159a68ce-6273-4239-a94b-b7afd4da242d)\n\nThis project was bootstrapped with [Create React App](https://github.com/facebookincubator/create-react-app).\nYou can find the most recent version of this guide [here](https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md).\n\n# Usage\n\nThere are two flavors of the generic pattern to access the discovery service:\n\n1. Standard location with most common defaults\n```\nhttp(s)://\u003chostname\u003e/?\u003cquery_parameters\u003e \n```\n\n2. Or using a custom feed\n```\nhttp(s)://\u003chostname\u003e/feed/:idp_data_feed?\u003cquery_parameters\u003e\n```\n\n## Supported Parameters\n\n```\n/feed/:idp_data_feed   (optional) Specify which idp feed to use. Supported values: 'clarin' \n                        or 'edugain', where 'clarin' is the default value if not provided. \n                        These feeds can be defined in the config.js file.\n```\n\n## Supported Query Parameters\n\n```\nentityId  (required) The entityID of the SP that called the discovery service. Must be in \n            url encoded form.\nreturn    (required) The return URL to redirect the user to after selecting an IDP. \n            entityID=\u003cvalue\u003e will be appended to signal the user selected IDP. Must be in \n            url encoded form.\n                      \n            If a `uy_auto_login` query parameter is found the unity-idm auto login flow \n            is triggered and an extra query parameter (`uy_select_authn`) with the \n            entityID digest and index in unity-idm format is appended\ndebug     (optional) Used to override the configured debug setting. Accepts 'true' or \n            'false'. \n```\n\n## Example\n\n```\nhttps://discovery.clarin.eu/idps_edugain.json?\\\n  entityID=https%3A%2F%2Fsp.vcr.clarin.eu\u0026\\\n  return=https%3A%2F%2Fcollections.clarin.eu%2FShibboleth.sso%2FLogin%3FSAMLDS%3D1%26target%3Dss%253Amem%25123456789123456789\n```\n\n## Shibboleth SP Configuration\n\nExample:\n\n```\n\u003c!--\n\u003cSSO entityID=\"https://test-idp.clarin.eu\"\u003e\n  SAML2 SAML1\n\u003c/SSO\u003e\n--\u003e\n\u003cSSO discoveryProtocol=\"SAMLDS\" discoveryURL=\"http://localhost:3000/\"\u003e\n    SAML2 SAML1\n\u003c/SSO\u003e\n```\n\n# Configuration\n\n## config.js\n\n```shell\nvar config = {\n    \"debug\": false,                             //Show debug output in the browsers console\n    \"version\": \"{{VERSION}}\",                   //Version shown in the UI, automatically set\n    \"image_version\": \"{{DOCKER_IMAGE_VERSION}}\",//Version shown in the UI, automatically set\n    \"endpoints\": {                              //List of endpoints, one should be marked as default.\n        \"clarin\": { \"url\": \"http://localhost:8080/idps/idps_clarin_prod.json\", \"default\": false},\n        \"edugain\": { \"url\": \"http://localhost:8080/idps/idps_edugain.json\", \"default\": true}\n    },\n    \"user_registration_endpoint\": \"https://user.clarin.eu/user/register\",\n    \"support_contact\": \"spf@clarin.eu\",         //Email address used in the footer \"Contact\" link.\n    \"website\": \"https://www.clarin.eu\",         //Link address used for the service provided by label in the footer.\n    \"website_label\": \"CLARIN\",                  //Label shown with the \"Serivce provided by \u003clabel\u003e\"  in the footer.\n    \"piwik_id\": -1,                             //Piwik site id, use -1 to disable piwik integration\n    \"showMissingQueryParamWarning\": true,       //Show a warning when accessing the page directly, i.e. not via the SP\n    \"showMissingQueryParamWarningModal\": true,  //Show a modal warning when accessing the page directly, i.e. not via the SP.\n    \"headerUrl\": \"/\"                            //Optional Link address to use for the title in the page header. Omit to disable link.\n}\n```\n\nEach endpoint configured under \"endpoints\" is made available under `/feed/:endpoint`. So for the example above the following\nfeed paths would work and load their metadata from the respective urls:\n* `/feed/clarin`\n* `/feed/edugain`\n\n# References\n\n## Country flag icons\n\n* https://www.flaticon.com/packs/countrys-flags?style_id=141\u0026family_id=41\u0026group_id=1\u0026category_id=85\n* Browser svg support: https://caniuse.com/#feat=svg\n    \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclarin-eric%2Fdiscovery-service-frontend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclarin-eric%2Fdiscovery-service-frontend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclarin-eric%2Fdiscovery-service-frontend/lists"}