{"id":13832703,"url":"https://github.com/sebdeveloper6952/amberflutter","last_synced_at":"2025-05-07T04:24:08.002Z","repository":{"id":210177869,"uuid":"725938228","full_name":"sebdeveloper6952/amberflutter","owner":"sebdeveloper6952","description":"Flutter wrapper for Amber (Nostr Signer)","archived":false,"fork":false,"pushed_at":"2024-01-01T16:11:50.000Z","size":136,"stargazers_count":4,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-28T04:41:24.824Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/sebdeveloper6952.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}},"created_at":"2023-12-01T07:25:49.000Z","updated_at":"2024-03-23T05:26:47.000Z","dependencies_parsed_at":"2024-01-01T17:20:30.700Z","dependency_job_id":"1dd555c9-950e-4c0b-b2e8-7aafa6847314","html_url":"https://github.com/sebdeveloper6952/amberflutter","commit_stats":null,"previous_names":["sebdeveloper6952/amberflutter"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebdeveloper6952%2Famberflutter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebdeveloper6952%2Famberflutter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebdeveloper6952%2Famberflutter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebdeveloper6952%2Famberflutter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sebdeveloper6952","download_url":"https://codeload.github.com/sebdeveloper6952/amberflutter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252811396,"owners_count":21807932,"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":[],"created_at":"2024-08-04T11:00:28.309Z","updated_at":"2025-05-07T04:24:07.979Z","avatar_url":"https://github.com/sebdeveloper6952.png","language":"Dart","funding_links":[],"categories":["Libraries"],"sub_categories":["Client reviews and/or comparisons"],"readme":"# amberflutter\n\nA Flutter wrapper for [Amber](https://github.com/greenart7c3/Amber/tree/master) (Nostr Signer).\n\n## Rationale\n\nProvide a bridge between your app and Amber, to enable app developers to easily use the functionality provided by Amber.\n\n## Installation\n\nWith flutter:\n\n```\nflutter pub add amberflutter\n```\n\nOr add to your `pubspec.yaml`:\n\n```\ndependencies:\n  amberflutter: ^0.0.1\n```\n\n## Usage\n\nDocumentation is taken from [Amber Docs](https://github.com/greenart7c3/Amber/blob/master/README.md). Please refer to them if you have any question about how to use Amber.\n\n_Import in your code_\n\n```\nimport 'package:amberflutter/amberflutter.dart';\n```\n\n_Get Public Key_\n\nGet the current user public key (npub). This request also allows to send permissions so the user can approve them forever. See the [Amber Docs](https://github.com/greenart7c3/Amber/blob/master/README.md) for the list of available permissions.\n\n```\nfinal amber = Amberflutter();\n\namber.getPublicKey(\n  permissions: [\n    Permission(\n      type: \"sign_event\",\n    ),\n  ],\n).then((value) {\n  print(\"npub: ${value['signature']}\");\n});\n```\n\n_Sign Event_\n\n```\nfinal amber = Amberflutter();\nfinal eventJson = jsonEncode({\n  'id': '',\n  'pubkey': Nip19.decodePubkey(_npub),\n  'kind': 1,\n  'content': 'Hello from Amber Flutter!',\n  'created_at':\n      (DateTime.now().millisecondsSinceEpoch / 1000).round(),\n  'tags': [],\n  'sig': '',\n});\n\namber.signEvent(\n  currentUser: \"\u003cyour_npub_here\u003e\",\n  eventJson: eventJson,\n).then((value) {\n  print(\"signed event: ${value['event']}\");\n});\n```\n\n_Nip 04 Encrypt_\n\n```\nfinal amber = Amberflutter();\n\namber.nip04Encrypt(\n  plaintext: \"Hello from Amber Flutter, Nip 04!\",\n  currentUser: \"\u003cyour_npub_here\u003e\",\n  pubKey: \"\u003chex_pubkey_to_encrypt\u003e\",\n).then((value) {\n  print(\"ciphertext: ${value['signature']}\")\n});\n```\n\n_Nip 44 Encrypt_\n\n```\namber.nip44Encrypt(\n  plaintext: \"Hello from Amber Flutter, Nip 44!\",\n  currentUser: \"\u003cyour_npub_here\u003e\",\n  pubKey: \"\u003chex_pubkey_to_encrypt\u003e\",\n).then((value) {\n  print(\"ciphertext: ${value['signature']}\")\n});\n```\n\n_Nip 04 Decrypt_\n\n```\nfinal amber = Amberflutter();\n\namber.nip04Decrypt(\n  ciphertext: \"\u003cmessage_encrypted_with_nip04_here\u003e\",\n  currentUser: \"\u003cyour_npub_here\u003e\",\n  pubKey: \"\u003chex_pubkey_to_decrypt\u003e\",\n).then((value) {\n  print(\"plaintext: ${value['signature']}\")\n});\n```\n\n_Nip 44 Decrypt_\n\n```\nfinal amber = Amberflutter();\n\namber.nip44Decrypt(\n  ciphertext: \"\u003cmessage_encrypted_with_nip44_here\u003e\",\n  currentUser: \"\u003cyour_npub_here\u003e\",\n  pubKey: \"\u003chex_pubkey_to_decrypt\u003e\",\n).then((value) {\n  print(\"plaintext: ${value['signature']}\")\n});\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebdeveloper6952%2Famberflutter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsebdeveloper6952%2Famberflutter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebdeveloper6952%2Famberflutter/lists"}