{"id":23609551,"url":"https://github.com/hanazuki/node-jsonnet","last_synced_at":"2025-12-24T15:36:45.520Z","repository":{"id":37956795,"uuid":"242342060","full_name":"hanazuki/node-jsonnet","owner":"hanazuki","description":"libjsonnet binding for Node.js","archived":false,"fork":false,"pushed_at":"2024-12-16T17:04:59.000Z","size":19981,"stargazers_count":33,"open_issues_count":6,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-12-26T22:21:35.027Z","etag":null,"topics":["jsonnet","node-addon"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@hanazuki/node-jsonnet","language":"C++","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/hanazuki.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":"2020-02-22T12:59:07.000Z","updated_at":"2024-11-26T17:46:42.000Z","dependencies_parsed_at":"2024-01-16T03:59:49.896Z","dependency_job_id":"fed70952-5f1b-48d7-8b6e-53e04e8bb664","html_url":"https://github.com/hanazuki/node-jsonnet","commit_stats":{"total_commits":422,"total_committers":2,"mean_commits":211.0,"dds":"0.37677725118483407","last_synced_commit":"8195e13144ae04d6aee0a7248f02624603a75064"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hanazuki%2Fnode-jsonnet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hanazuki%2Fnode-jsonnet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hanazuki%2Fnode-jsonnet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hanazuki%2Fnode-jsonnet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hanazuki","download_url":"https://codeload.github.com/hanazuki/node-jsonnet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231501618,"owners_count":18386288,"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":["jsonnet","node-addon"],"created_at":"2024-12-27T15:10:02.275Z","updated_at":"2025-12-24T15:36:45.479Z","avatar_url":"https://github.com/hanazuki.png","language":"C++","readme":"# node-jsonnet\n\n**@hanazuki/node-jsonnet** is a [libjsonnet](https://jsonnet.org) binding for [Node.js](https://nodejs.org) (native addon), which supports all the basic Jsonnet functionality including `import` and native callbacks (`std.native`). It also comes with TypeScript type definitions.\n\n## Synopsis\n\n```typescript\nimport { Jsonnet } from \"@hanazuki/node-jsonnet\";\nconst jsonnet = new Jsonnet();\n\n// Evaluates a simple Jsonnet program into a JSON value\njsonnet.evaluateSnippet(`{a: 1 + 2, b: self.a * 3}`)\n       .then(json =\u003e console.log(JSON.parse(json)));  // =\u003e { a: 3, b: 9 }\n\n// Jsonnet programs can use JavaScript values through external variables (std.extVar)\n// and native callbacks (std.native).\njsonnet.extCode(\"x\", \"4\")\n       .nativeCallback(\"add\", (a, b) =\u003e Number(a) + Number(b), \"a\", \"b\")\n       .evaluateSnippet(`std.extVar(\"x\") * std.native(\"add\")(1, 2)`)\n       .then(json =\u003e console.log(JSON.parse(json)));  // =\u003e 12\n```\n\nThe library is documented in the TypeScript type definitions at [`types/index.d.ts`](types/index.d.ts), and [HTML documentation](https://hanazuki.github.io/node-jsonnet/) is also available online.\n\n## Installation Requirements\n\n- [Node.js](https://nodejs.org/) v20 or later\n- [GCC](https://gcc.gnu.org/projects/cxx-status.html#cxx17) or [Clang](https://clang.llvm.org/cxx_status.html#cxx17) C++ compiler that supports C++17\n- CMake 3.10 or later\n\n## License\n**@hanazuki/node-jsonnet** is licensed under the MIT License (See [LICENSE](LICENSE) file for the terms). **libjsonnet**, whose source code is bundled in the distributed NPM packages of @hanazuki/node-jsonnet, is licensed under the Apache License, Version 2.0 (See [third_party/jsonnet/LICENSE in this package](third_party/jsonnet/LICENSE) or [LICENSE file in the original repository](https://github.com/google/jsonnet/blob/master/LICENSE)). libjsonnet also bundles third-party software that is subject to other OSS licenses.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhanazuki%2Fnode-jsonnet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhanazuki%2Fnode-jsonnet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhanazuki%2Fnode-jsonnet/lists"}