{"id":28168923,"url":"https://github.com/osprogramadores/op-validator","last_synced_at":"2025-08-21T03:11:04.020Z","repository":{"id":86329821,"uuid":"163065814","full_name":"OsProgramadores/op-validator","owner":"OsProgramadores","description":"Validate challenges from osprogramadores.com","archived":false,"fork":false,"pushed_at":"2020-08-22T04:09:39.000Z","size":39,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-15T15:14:44.297Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","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/OsProgramadores.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":"2018-12-25T08:58:19.000Z","updated_at":"2020-08-22T04:09:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"20b3ec6b-0f96-42a3-8c28-02c0f0c27963","html_url":"https://github.com/OsProgramadores/op-validator","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/OsProgramadores/op-validator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OsProgramadores%2Fop-validator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OsProgramadores%2Fop-validator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OsProgramadores%2Fop-validator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OsProgramadores%2Fop-validator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OsProgramadores","download_url":"https://codeload.github.com/OsProgramadores/op-validator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OsProgramadores%2Fop-validator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271420146,"owners_count":24756490,"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","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"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":[],"created_at":"2025-05-15T15:14:39.275Z","updated_at":"2025-08-21T03:11:03.960Z","avatar_url":"https://github.com/OsProgramadores.png","language":"Go","readme":"# op-validator\n\n## Synopsis\n\nA challenge/exercise validator for the programming challenges in\n[osprogramadores.com](https://osprogramadores.com).\n\n## Usage\n\nThis program has three main handlers:\n\n* The root handler (/), which serves a simple web page where where users can\n  choose the desired challenge and type their github usernames and their\n  program's output. On submit, the page makes an XMLHttpRequest to the\n  check handler to verify the validity of the user's input.\n\n* The check handler (/check) take the challenge, username and user's solution\n  and attempts to match the solution to the canonical solution set in the\n  config file.  If the user's input is valid, the program generates a token\n  from the input data + a secret and instructs the user to add this token to a\n  file called `.valid` in their repository before submitting a pull request.\n\n* The verify token handler (/verify-token) takes the challenge, username, and a\n  token, and verifies the validity of this token. The program returns an HTTP\n  200 if the token is OK or HTTP 400 otherwise. The purpose of this handler is\n  to allow remote token verification.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fosprogramadores%2Fop-validator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fosprogramadores%2Fop-validator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fosprogramadores%2Fop-validator/lists"}