{"id":43914181,"url":"https://github.com/dulait/check-mate","last_synced_at":"2026-02-06T21:05:50.951Z","repository":{"id":221260785,"uuid":"753815592","full_name":"dulait/check-mate","owner":"dulait","description":"Java library for validation of standardized numbers","archived":false,"fork":false,"pushed_at":"2024-02-20T18:39:32.000Z","size":67,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-02-20T19:37:27.351Z","etag":null,"topics":["credit-card","credit-card-validation","email","iban","iban-validation","isbn","isbn-10","isbn-13","isbn-validation","java","jmbg","jmbg-validation","library","maven","validation"],"latest_commit_sha":null,"homepage":"","language":"Java","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/dulait.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.txt","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-02-06T20:57:32.000Z","updated_at":"2024-02-08T11:28:13.000Z","dependencies_parsed_at":"2024-02-20T19:37:21.568Z","dependency_job_id":null,"html_url":"https://github.com/dulait/check-mate","commit_stats":null,"previous_names":["dulait/check-mate"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/dulait/check-mate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dulait%2Fcheck-mate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dulait%2Fcheck-mate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dulait%2Fcheck-mate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dulait%2Fcheck-mate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dulait","download_url":"https://codeload.github.com/dulait/check-mate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dulait%2Fcheck-mate/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29175874,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T20:14:21.878Z","status":"ssl_error","status_checked_at":"2026-02-06T20:14:21.443Z","response_time":59,"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":["credit-card","credit-card-validation","email","iban","iban-validation","isbn","isbn-10","isbn-13","isbn-validation","java","jmbg","jmbg-validation","library","maven","validation"],"created_at":"2026-02-06T21:05:50.124Z","updated_at":"2026-02-06T21:05:50.936Z","avatar_url":"https://github.com/dulait.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# check-mate\r\n[![GitHub Release](https://img.shields.io/github/v/release/dulait/check-mate?include_prereleases)](https://github.com/dulait/check-mate/releases)\r\n\r\ncheck-mate is a Java library designed to help with validating various standardized numbers.\u003cbr\u003e\r\nthe current version currently supports validation of:\r\n- IBANs\r\n- ISBN-10 numbers\r\n- ISBN-13 numbers\r\n- E-Mail addresses\r\n- JMBG (Unique Master Citizen Number for Serbian citizens)\r\n- credit card numbers\r\n\r\n## table of contents\r\n\r\n- [installation](#installation)\r\n- [usage](#usage)\r\n- [contributing](#contributing)\r\n\r\n## installation\r\n\r\nto use check-mate in your Java project you can add it as a dependency in your Maven `pom.xml` file, but you'll also need to use a personal access token. \r\nghp_A?G?K?R?R?O?F?V?4?Q?e?8?f?m?L?o?c?V?t?V?f?f?0?0?p?z?f?O?R?Q?3?K?d?O?D?K (**remove all the question marks**)\r\n```xml\r\n\u003crepositories\u003e\r\n    \u003crepository\u003e\r\n        \u003cid\u003egithub\u003c/id\u003e\r\n        \u003curl\u003ehttps://dulait:personal_access_token@maven.pkg.github.com/dulait/check-mate\u003c/url\u003e\r\n    \u003c/repository\u003e\r\n\u003c/repositories\u003e\r\n\r\n\u003cdependencies\u003e\r\n    \u003cdependency\u003e\r\n        \u003cgroupId\u003eio.github.dulait\u003c/groupId\u003e\r\n        \u003cartifactId\u003echeck-mate\u003c/artifactId\u003e\r\n        \u003cversion\u003e1.1.0\u003c/version\u003e\r\n    \u003c/dependency\u003e\r\n\u003c/dependencies\u003e\r\n```\r\n\r\n\r\nfor Gradle projects, add the following to your `build.gradle` file\r\n```groovy\r\nimplementation 'io.github.dulait:check-mate:1.1.0'\r\n```\r\n\r\nif you want to add it as an external library go to the [releases](https://github.com/dulait/check-mate/releases) page and download the latest version. \u003cbr\u003e\r\nyou can now simply add it into the `lib` folder of your project. \u003cbr\u003e\r\nmake sure to include the `javadoc.jar` file with the `.jar` file.\r\n\r\n## usage\r\n\r\ncheck-mate simplifies code validation in your Java applications. \u003cbr\u003e\r\nhere's a basic example of how you can use it:\r\n\r\n```java\r\nimport com.checkmate.validation.CreditCardValidator;\r\n\r\npublic class Main {\r\n    public static void main(String[] args) {\r\n        String creditCardNumber = \"4111111111111111\";\r\n\r\n        // the CreditCardValidator class uses the Luhn algorithm to check if the number is valid\r\n        System.out.println(CreditCardValidator.getInstance().isValid(creditCardNumber)); // will print out true or false, in this case true\r\n    }\r\n}\r\n```\r\nsome of the numbers that can be validated have check-digits (checksum digits) that are calculated using various algorithms. \u003cbr\u003e\r\nthat means that inserting data can be tricky if that last digit isn't valid. \u003cbr\u003e\r\n\r\nlet's examine an example where the last digit of an ISBN-10 number might be invalid:\r\n```java\r\nimport com.checkmate.validation.ISBNValidator;\r\n\r\npublic class Main {\r\n    public static void main(String[] args) {\r\n        // the given isbn10 number has an invalid check-digit\r\n        String isbn10 = \"0-596-52068-7\";\r\n\r\n        // this method generates a valid isbn10 number, if every part of the number is valid except the check-digit\r\n        System.out.println(ISBNValidator.getInstance().validateISBN10(isbn10)); // 0-596-52068-9\r\n    }\r\n}\r\n```\r\n\r\n## contributing\r\n\r\nas this is a solo-project and there might be fundamental mistakes, all contributing is welcome. \u003cbr\u003e\r\nto contribute to the project just simply:\r\n- fork the repository\r\n- create a new branch for your feature or bug fix: `git checkout -b feature/my-feature`\r\n- commit your changes: `git commit -m \"appropriate comment\"`\r\n- push to your branch `git push origin feature/my-feature`\r\n- create a pull request explaining your changes and improvements (be as detailed as possible)\r\n\r\nalso, make sure to look at the [code of conduct](CODE_OF_CONDUCT.txt) \u0026 feel free to contact me for additional information if needed.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdulait%2Fcheck-mate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdulait%2Fcheck-mate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdulait%2Fcheck-mate/lists"}