{"id":19986086,"url":"https://github.com/eansearch/rust-eansearch","last_synced_at":"2025-06-12T20:04:14.764Z","repository":{"id":185316368,"uuid":"673349005","full_name":"eansearch/rust-eansearch","owner":"eansearch","description":"Rust library to search the EAN barcode database at EAN-Search.org","archived":false,"fork":false,"pushed_at":"2025-02-23T11:47:04.000Z","size":184080,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-04T07:33:59.932Z","etag":null,"topics":["barcode","ean","ean13","gtin","gtin-codes","isbn","isbn-13","rust","upc"],"latest_commit_sha":null,"homepage":"https://www.ean-search.org/ean-database-api.html","language":"Rust","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/eansearch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","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}},"created_at":"2023-08-01T12:34:05.000Z","updated_at":"2025-02-23T11:24:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"913d4063-0d26-4e52-b100-60268dd27fa4","html_url":"https://github.com/eansearch/rust-eansearch","commit_stats":{"total_commits":10,"total_committers":2,"mean_commits":5.0,"dds":"0.19999999999999996","last_synced_commit":"af06ca157d50bcfdc205bdbb28aa1beb8a55a02b"},"previous_names":["eansearch/rust-eansearch"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/eansearch/rust-eansearch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eansearch%2Frust-eansearch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eansearch%2Frust-eansearch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eansearch%2Frust-eansearch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eansearch%2Frust-eansearch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eansearch","download_url":"https://codeload.github.com/eansearch/rust-eansearch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eansearch%2Frust-eansearch/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259521514,"owners_count":22870446,"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":["barcode","ean","ean13","gtin","gtin-codes","isbn","isbn-13","rust","upc"],"created_at":"2024-11-13T04:27:46.497Z","updated_at":"2025-06-12T20:04:14.743Z","avatar_url":"https://github.com/eansearch.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EANSearch\n\nSearch for products by EAN barcode or product name / keywords\n\n## Features\n\n* Search by EAN code\n* Lookup by ISBN code (ISBN-10 or ISBN-13)\n* Search by name or keyords\n* restrict search by product category\n* get the issuing country for the barcode\n* verify barcode checksum\n* get PNG image for the EAN barcode\n\n## How to use\n```rust\n// search by EAN barcode, product name in English\nlet eansearch = EANSearch::new(\u0026token);\nlet product = eansearch.barcode_lookup(5099750442227, Some(1));\nlet product = product.unwrap(); // unwrap result\nlet product = product.unwrap();\nprintln!(\"EAN {} is {}\", product.ean, product.name);\n\n// search by ISBN code\nlet eansearch = EANSearch::new(\u0026token);\nlet book = eansearch.isbn_lookup(1119578884);\nlet book = book.unwrap(); // unwrap result\nlet book = book.unwrap();\nprintln!(\"ISBN-13 {} is {}\", book.ean, book.name);\n\n// find all products with the keyword 'bananaboat'\nlet product_list = eansearch.product_search(\"bananaboat\", Some(1), None);\nfor p in \u0026product_list.unwrap() {\n\tprintln!(\"EAN {:0\u003e13} is {} ({})\", p.ean, p.name, p.category_name);\n}\n\n// find products matching some keywords, but maybe not all\nlet product_list = eansearch.similar_product_search(\"bananaboat WordNever2BFound\", Some(1), None);\nfor p in \u0026product_list.unwrap() {\n\tprintln!(\"EAN {:0\u003e13} is {} ({})\", p.ean, p.name, p.category_name);\n}\n\n// only find 'bananaboat' products from the 'Music' category\nlet product_list = eansearch.category_search(45, Some(\"bananaboat\"), Some(1), None);\n\n// download a EANs that start with 509975044xxx\nlet product_list = eansearch.barcode_prefix_search(509975044, Some(1), None);\n\n// find the country where a barcode was issued\nlet country_lookup = eansearch.issuing_country(5099750442227);\n\n// check if this is really a valid barcode\nlet checksum_ok = eansearch.verify_checksum(5099750442227);\n\n// get A PNG image of the barcode to display eg. on a website\nlet img = eansearch.barcode_image(5099750442227, None, None);\n\n```\n\nTo use the library, you need an account and obtain an API token.\n\nSee [https://www.ean-search.org/ean-database-api.html](https://www.ean-search.org/ean-database-api.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feansearch%2Frust-eansearch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feansearch%2Frust-eansearch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feansearch%2Frust-eansearch/lists"}