{"id":15353226,"url":"https://github.com/yardexx/qr_stringify","last_synced_at":"2026-02-25T23:05:07.293Z","repository":{"id":116210589,"uuid":"580124503","full_name":"yardexx/qr_stringify","owner":"yardexx","description":"String QR generator for Dart.","archived":false,"fork":false,"pushed_at":"2023-06-12T08:04:43.000Z","size":354,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-07T18:21:27.323Z","etag":null,"topics":["cli","code","dart","flutter","generator","package","qr"],"latest_commit_sha":null,"homepage":"","language":"Dart","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/yardexx.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2022-12-19T19:29:15.000Z","updated_at":"2023-01-31T21:19:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"601d0afb-8f0d-42b0-8cd8-0dfeef1f555c","html_url":"https://github.com/yardexx/qr_stringify","commit_stats":{"total_commits":3,"total_committers":3,"mean_commits":1.0,"dds":0.6666666666666667,"last_synced_commit":"20ece45ff1b08840820021703cfdcc4bdbc04765"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/yardexx/qr_stringify","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yardexx%2Fqr_stringify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yardexx%2Fqr_stringify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yardexx%2Fqr_stringify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yardexx%2Fqr_stringify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yardexx","download_url":"https://codeload.github.com/yardexx/qr_stringify/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yardexx%2Fqr_stringify/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29844845,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-25T22:37:40.667Z","status":"ssl_error","status_checked_at":"2026-02-25T22:37:25.960Z","response_time":61,"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":["cli","code","dart","flutter","generator","package","qr"],"created_at":"2024-10-01T12:13:28.664Z","updated_at":"2026-02-25T23:05:07.277Z","avatar_url":"https://github.com/yardexx.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eQR Stringify\u003c/h1\u003e\n\u003cp align=\"center\"\u003e  \n\u003ca href=\"https://github.com/yardexx/qr_stringify/actions/workflows/qr_drawer_workflow.yaml\"\u003e\u003cimg src=\"https://github.com/yardexx/qr_stringify/actions/workflows/qr_drawer_workflow.yaml/badge.svg\"/\u003e\u003c/a\u003e  \n\u003ca href=\"https://codecov.io/gh/yardexx/qr_stringify\"\u003e\u003cimg src=\"https://codecov.io/gh/yardexx/qr_stringify/branch/master/graph/badge.svg?token=6q00IsWQJG\"/\u003e\u003c/a\u003e  \n\u003ca href=\"https://pub.dev/packages/very_good_analysis\"\u003e\u003cimg src=\"https://img.shields.io/badge/style-very_good_analysis-B22C89.svg\" alt=\"style: very good analysis\"\u003e\u003c/a\u003e  \n\u003ca href=\"https://opensource.org/licenses/MIT\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-MIT-purple.svg\" alt=\"License: MIT\"\u003e\u003c/a\u003e  \n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e  Small package to generate QR codes that can be used in terminal output.\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e  💙 Powered by Very Good Tools 💙  \u003c/p\u003e\n\n\u003e 🚧 Public API of this package is **NOT STABLE**. 🚧\n\u003e\n\u003e [As version suggests](https://semver.org/#spec-item-4), QR Stringify shouldn't be used in production! More about semantic versioning [here](https://semver.org/).\n\n### Simple 🎈\n\nEasy to use. Simply create QR builder and provide data. Additionally, you can adjust padding and \ncorrection levels.\n\n### Flexible 💃\n\nYou can extend `QrDrawer` class and make custom implementation for drawing QR code.\n\n## Usage 🛠\n\n### Adding dependency 📦\nThis package is currently **not available** on [pub.dev](https://pub.dev/). \n\nTo add `qr_stringify` to your `pubspec.yaml` file, use git dependency:\n```yaml\ndependencies:\n  qr_stringify:\n    git:\n      url: 'https://github.com/yardexx/qr_stringify.git'\n```\n\n### Creating QR Code 👷‍♂️\nTo generate code, create instance of `QrBuilder` and provide `data` which you want to encode into QR\nCode. When you are satisfied with your settings, call `build()` to return QR code in form of `String`.\n\n```dart\nimport 'package:qr_stringify/qr_stringify.dart';\n\n// Creating builder\nfinal builder = QrBuilder(data: 'Hello World');\n\n// Building QR code\nfinal code = builder.build();\n```\n\n\u003e 💡 `QrBuilder` currently defaults to *utf8* drawer, which means, that QR code is generated using this charset. ASCII support is planned.\n\n### Adding padding 🔳\n\nIf you wish to add more space around code (also called [quiet zone](https://www.marson.com.tw/en/faq/show.php?num=41)), \nyou can do so by adding padding.\n\n```dart\nfinal builder = QrBuilder(data: 'Hello World')\n  ..padding = 1;\n\n// QR code with padding\nfinal code = builder.build();\n```\n\n### Error correction level 🔧\n\nQR code can be generated with different levels of error corrections levels. These determine how much\ndamage can QR code sustain before being unreadable.\n\nHigher level means higher percentage of code can be damaged. In `qr_stringify`, these value are \nrepresented as `ErrorCorrectionLevel` with respective values:\n- ErrorCorrectionLevel.L - up to 7% damage\n- ErrorCorrectionLevel.M - up to 15% damage\n- ErrorCorrectionLevel.Q - up to 25% damage\n- ErrorCorrectionLevel.H - up to 30% damage\n\n`QrBuilder` default value is `ErrorCorrectionLevel.L`.\nYou can choose other values by passing them in builder.\n\n```dart\nfinal builder = QrBuilder(data: 'Hello World')\n  ..correctionLevel = ErrorCorrectionLevel.L;\n```\n\n\u003e ❗ Be aware that higher level of correction will result in bigger code.\n\nMore about error correction in QR codes [here](https://blog.qrstuff.com/general/qr-code-error-correction).\n\n### A note about line spacing (line height) 📝\nWhile qr_stringify is designed to be used in terminal, not all terminals will display code correctly.\nSome terminals which have bigger line spacing (\u003e 1.0) will display a little bit of space between\neach line of code. \n\nIdeally, QR code should look like this:\n![Ideal QR code](./assets/qr_ideal.svg)\n\nIn most cases, you will end up with code that looks like this:\n![Common QR code](./assets/qr_common.svg)\n\nBut sometimes, you will get totally broken code:\n![Broken QR code](./assets/qr_broken.svg)\n\nMost of the time, first situation will occur which makes code still readable just **fine**. Second\ncase can be fixed by adjusting line spacing of terminal.\n\n\u003e ❗ Be aware of line spacing (line height) of terminal.\n\n## Planned features 🗺\n- ASCII support\n- Borders\n- Colors (ANSI)\n- Title texts with links\n\n## Contribution 🤝\nFor issues, bugs, or feature proposals feel free to [open issue](https://github.com/yardexx/qr_stringify/issues) \nor [create PR](https://github.com/yardexx/qr_stringify/pulls).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyardexx%2Fqr_stringify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyardexx%2Fqr_stringify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyardexx%2Fqr_stringify/lists"}