{"id":25019028,"url":"https://github.com/khoanguyen55/zage","last_synced_at":"2025-08-24T12:32:30.155Z","repository":{"id":274495619,"uuid":"923094841","full_name":"KhoaNguyen55/zage","owner":"KhoaNguyen55","description":"A zig implementation of age encryption","archived":false,"fork":false,"pushed_at":"2025-08-13T20:56:04.000Z","size":225,"stargazers_count":5,"open_issues_count":2,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-13T22:25:36.426Z","etag":null,"topics":["age-encryption","zig"],"latest_commit_sha":null,"homepage":"https://khoanguyen55.github.io/zage/","language":"Zig","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/KhoaNguyen55.png","metadata":{"files":{"readme":"README.md","changelog":"changelog","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,"zenodo":null}},"created_at":"2025-01-27T16:28:44.000Z","updated_at":"2025-08-13T20:59:10.000Z","dependencies_parsed_at":"2025-01-27T17:38:04.415Z","dependency_job_id":"22c01812-c941-4651-9189-19e696c7eb3d","html_url":"https://github.com/KhoaNguyen55/zage","commit_stats":null,"previous_names":["khoanguyen55/zage"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/KhoaNguyen55/zage","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhoaNguyen55%2Fzage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhoaNguyen55%2Fzage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhoaNguyen55%2Fzage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhoaNguyen55%2Fzage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KhoaNguyen55","download_url":"https://codeload.github.com/KhoaNguyen55/zage/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhoaNguyen55%2Fzage/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271863588,"owners_count":24835824,"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-08-24T02:00:11.135Z","response_time":111,"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":["age-encryption","zig"],"created_at":"2025-02-05T11:19:47.373Z","updated_at":"2025-08-24T12:32:30.145Z","avatar_url":"https://github.com/KhoaNguyen55.png","language":"Zig","funding_links":[],"categories":[],"sub_categories":[],"readme":"# zage: zig implementation of age\n\nThe format specification is at [age-encryption.org/v1](https://age-encryption.org/v1). age was designed by [@Benjojo](https://benjojo.co.uk/) and [@FiloSottile](https://bsky.app/profile/did:plc:x2nsupeeo52oznrmplwapppl).\n\n# Installation\n\nDownload executable from [here](https://github.com/KhoaNguyen55/zage/releases).\n\n## Build from source\n\nClone the repo: `git clone https://github.com/KhoaNguyen55/zage.git`\n\nUse zig build system: `zig build -Dbuild-cli --release=fast`\n\n# Usage\n\nThere is 3 command: `keygen`, `encrypt`, and `decrypt`\n\nFor complete usage run `zage \u003ccommand\u003e --help`\n\n## Generate key\n\n### Example:\n- `zage keygen`\n- `zage keygen my_key`\n- `zage keygen \u003e my_key`\n\n## Encrypt\n\nWith passphrase: `zage encrypt -p -o \u003coutput_file\u003e \u003cinput_file\u003e`\n\nWith recipient: `zage -r \u003cpublic_key\u003e -o \u003coutput_file\u003e \u003cinput_file\u003e`\n\n### Example:\n- with public key: `zage encrypt -r age1fmm3lmxh7rtzf7g6829tlr6a9mljq9xt4hd3yw7ffx9vgaywfeaqhg7dd3 text.txt`\n- with identity file: `zage encrypt -i my_key -o msg.age text.txt`\n- with stdin: `echo 'hello world!' | zage encrypt -i my_key -o msg.age --stdin`\n\n## Decrypt \n\nWith passphrase: `zage decrypt \u003cinput_file\u003e`\n\nWith recipient: `zage decrypt -i \u003cprivate_key_file\u003e \u003cinput_file\u003e`\n\n### Example:\n- text file: `zage decrypt -i my_key msg.age`\n- with stdin: `cat msg.age | zage decrypt -i my_key --stdin`\n\n# Zig library\n\n[Documentation](https://khoanguyen55.github.io/zage/)\n\nThe library is for `zig v0.14.1` for now.\n\nTo install as a zig library you can run the `zig fetch` command:\n\n```\nzig fetch --save https://github.com/KhoaNguyen55/zage/archive/refs/tags/\u003ctag\u003e.tar.gz\n```\n\nThen add the following to `build.zig`:\n\n```\nconst age = b.dependency(\"age\", .{\n    .target = target,\n    .optimize = optimize,\n});\nexe_mod.addImport(\"age\", age.module(\"age\"));\n// exe_mod.addImport(\"age_plugin\", age.module(\"age_plugin\")); // uncomment if you're developing a plugin\n```\n\n# Contribute\n\nReport bugs at https://github.com/KhoaNguyen55/zage/issues\n\nContributing: TODO\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhoanguyen55%2Fzage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhoanguyen55%2Fzage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhoanguyen55%2Fzage/lists"}