{"id":15500748,"url":"https://github.com/crazelu/steganograph","last_synced_at":"2025-10-15T02:15:07.217Z","repository":{"id":63466846,"uuid":"497183806","full_name":"Crazelu/steganograph","owner":"Crazelu","description":"A Dart library for hiding messages in images using Least Significant Bit steganography","archived":false,"fork":false,"pushed_at":"2024-08-30T22:58:07.000Z","size":787,"stargazers_count":12,"open_issues_count":1,"forks_count":4,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-22T21:51:40.566Z","etag":null,"topics":["dart","least-significant-bit-steganography","lsb","steganography"],"latest_commit_sha":null,"homepage":"","language":"Dart","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/Crazelu.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-05-28T01:38:56.000Z","updated_at":"2025-02-05T07:23:32.000Z","dependencies_parsed_at":"2024-11-08T19:01:20.206Z","dependency_job_id":"66cc189b-ef82-4f27-8b82-7fba97c35472","html_url":"https://github.com/Crazelu/steganograph","commit_stats":{"total_commits":28,"total_committers":2,"mean_commits":14.0,"dds":0.0714285714285714,"last_synced_commit":"1b50fbc78ec3f476f32a6622f5e840e95d042f60"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Crazelu/steganograph","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crazelu%2Fsteganograph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crazelu%2Fsteganograph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crazelu%2Fsteganograph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crazelu%2Fsteganograph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Crazelu","download_url":"https://codeload.github.com/Crazelu/steganograph/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crazelu%2Fsteganograph/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279034413,"owners_count":26089487,"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-10-15T02:00:07.814Z","response_time":56,"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":["dart","least-significant-bit-steganography","lsb","steganography"],"created_at":"2024-10-02T09:01:16.981Z","updated_at":"2025-10-15T02:15:07.190Z","avatar_url":"https://github.com/Crazelu.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Steganograph\n\n***\nSteganograph is a Dart library which supports hiding mesages in images using Least Significant Bit steganography.\n\n## Install 🚀\n\nIn the `pubspec.yaml` of your Flutter/Dart project, add the following dependency:\n\n```yaml \ndependencies:\n  steganograph: ^2.0.0\n```\n\n## Import the package in your project 📥\n\n```dart\nimport 'package:steganograph/steganograph.dart';\n```\n\n## Embed messages 🔏\n\n```dart\n// this returns an image file with the resulting image unaltered\n// except now it has some secret embedded message\nFile? stegoImageFile = await Steganograph.cloak(\n    image: File('sample_image.jpg'),\n    message: 'Some secret message',\n    outputFilePath: 'result.png',\n  );\n```\n\nOr\n\n```dart\nUint8List? stegoImageBytes = await Steganograph.cloakBytes(\n    imageBytes: Uint8List(...), // cover image byte array\n    message: 'Some secret message',\n    outputFilePath: 'result.png',\n  );\n```\n\n## Extract embedded messages 📨\n\n```dart\nString? message = await Steganograph.uncloak(File('result.png'));\n\n// Or\n\nString? message = await Steganograph.uncloakBytes(stegoImageBytes);\n```\n\n## Supported image formats 🗂\n\nCurrently, you can embed messages in:\n* PNG\n* JPEG\n* WebP\n* BMP\n* GIF\n* ICO\n* PNM\n* PSD\n\n## Contributions 🫱🏾‍🫲🏼\n\nFeel free to contribute to this project.\n\nIf you find a bug or want a feature, but don't know how to fix/implement it, please fill an [issue](https://github.com/Crazelu/steganograph/issues).  \nIf you fixed a bug or implemented a feature, please send a [pull request](https://github.com/Crazelu/steganograph/pulls).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrazelu%2Fsteganograph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcrazelu%2Fsteganograph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrazelu%2Fsteganograph/lists"}