{"id":13610943,"url":"https://github.com/fabioarnold/nfd-zig","last_synced_at":"2026-04-08T09:00:31.098Z","repository":{"id":82638987,"uuid":"324831021","full_name":"fabioarnold/nfd-zig","owner":"fabioarnold","description":"OS-native file dialogs on Linux, macOS and Windows ","archived":false,"fork":false,"pushed_at":"2025-08-26T07:47:42.000Z","size":186,"stargazers_count":63,"open_issues_count":1,"forks_count":17,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-04-06T14:50:33.393Z","etag":null,"topics":["file-dialog","native","zig","zig-package"],"latest_commit_sha":null,"homepage":"","language":"Makefile","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/fabioarnold.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2020-12-27T19:12:22.000Z","updated_at":"2026-02-09T11:31:30.000Z","dependencies_parsed_at":"2023-07-20T01:00:20.540Z","dependency_job_id":"21c55b53-a9c4-4a36-9baf-3ec81ee91014","html_url":"https://github.com/fabioarnold/nfd-zig","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fabioarnold/nfd-zig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabioarnold%2Fnfd-zig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabioarnold%2Fnfd-zig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabioarnold%2Fnfd-zig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabioarnold%2Fnfd-zig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fabioarnold","download_url":"https://codeload.github.com/fabioarnold/nfd-zig/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabioarnold%2Fnfd-zig/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31547845,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"online","status_checked_at":"2026-04-08T02:00:06.127Z","response_time":54,"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":["file-dialog","native","zig","zig-package"],"created_at":"2024-08-01T19:01:49.718Z","updated_at":"2026-04-08T09:00:31.083Z","avatar_url":"https://github.com/fabioarnold.png","language":"Makefile","funding_links":[],"categories":["Makefile","Libraries"],"sub_categories":[],"readme":"# nfd-zig\n\n`nfd-zig` is a Zig binding to the library [nativefiledialog](https://github.com/mlabbe/nativefiledialog)\nwhich provides a convenient cross-platform interface to opening file dialogs in\nLinux, macOS and Windows.\n\nThis library has been tested on Windows 10, macOS 11.1 and Linux.\n\n## Usage\n\nYou can run the demo with `zig build run`. The demo's source is in `src/demo.zig`.\n\nIf you want to add the library to your own project:\n\n- Fetch the `nfd` dependency:\n\n```bash\nzig fetch --save git+https://github.com/fabioarnold/nfd-zig.git\n```\n\nThis will add the `nfd` dependency to your `build.zig.zon`. e.g.,\n\n```zig\n.nfd = .{\n    .url = \"git+https://github.com/fabioarnold/nfd-zig.git#0ad2a0c092ffba0c98613d619b82100c991f5ad6\",\n    .hash = \"nfd-0.1.0-11fxvN6IBgD5rvvfjrw1wPqibMsbUJ-h2ZcGR6FOEvrm\",\n},\n```\n\n- Add the module in your `build.zig`:\n\n```zig\nconst nfd = b.dependency(\"nfd\", .{ .target = target, .optimize = optimize });\nconst nfd_mod = nfd.module(\"nfd\");\nexe.root_module.addImport(\"nfd\", nfd_mod);\n```\n\n- Import and use it your code, e.g., `main.zig`:\n\n```zig\nconst nfd = @import(\"nfd\");\n\npub fn main() !void {\n    const filter = \"txt\";\n    const default_path: ?[]const u8 = null;\n    const path: ?[]const u8 = try nfd.openFileDialog(filter, default_path);\n}\n```\n\n## Screenshot\n\n![Open dialog on Windows 10](https://raw.githubusercontent.com/mlabbe/nativefiledialog/67345b80ebb429ecc2aeda94c478b3bcc5f7888e/screens/open_win.png)\n![Open dialog on Linux with GTK 3](https://raw.githubusercontent.com/mlabbe/nativefiledialog/67345b80ebb429ecc2aeda94c478b3bcc5f7888e/screens/open_gtk3.png)\n![Open dialog on MacOS with Cocoa](https://raw.githubusercontent.com/mlabbe/nativefiledialog/refs/heads/master/screens/open_cocoa.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffabioarnold%2Fnfd-zig","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffabioarnold%2Fnfd-zig","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffabioarnold%2Fnfd-zig/lists"}