{"id":16947886,"url":"https://github.com/dop251/goja_nodejs","last_synced_at":"2025-05-14T07:08:23.581Z","repository":{"id":37735578,"uuid":"73500647","full_name":"dop251/goja_nodejs","owner":"dop251","description":"Nodejs compatibility library for Goja","archived":false,"fork":false,"pushed_at":"2025-04-09T16:30:59.000Z","size":117,"stargazers_count":380,"open_issues_count":20,"forks_count":86,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-05-13T11:56:33.093Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","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/dop251.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,"zenodo":null}},"created_at":"2016-11-11T18:14:31.000Z","updated_at":"2025-05-13T02:53:14.000Z","dependencies_parsed_at":"2024-04-18T17:02:07.120Z","dependency_job_id":"22b4a712-60d4-4d99-8a68-58b6d3af6714","html_url":"https://github.com/dop251/goja_nodejs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dop251%2Fgoja_nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dop251%2Fgoja_nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dop251%2Fgoja_nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dop251%2Fgoja_nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dop251","download_url":"https://codeload.github.com/dop251/goja_nodejs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254092775,"owners_count":22013290,"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-10-13T21:48:48.286Z","updated_at":"2025-05-14T07:08:23.552Z","avatar_url":"https://github.com/dop251.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"Nodejs compatibility library for Goja\n====\n\nThis is a collection of [Goja](https://github.com/dop251/goja) modules that provide nodejs compatibility.\n\nExample:\n\n```go\npackage main\n\nimport (\n    \"github.com/dop251/goja\"\n    \"github.com/dop251/goja_nodejs/require\"\n)\n\nfunc main() {\n    registry := new(require.Registry) // this can be shared by multiple runtimes\n\n    runtime := goja.New()\n    req := registry.Enable(runtime)\n\n    runtime.RunString(`\n    var m = require(\"./m.js\");\n    m.test();\n    `)\n\n    m, err := req.Require(\"./m.js\")\n    _, _ = m, err\n}\n```\n\nType Definitions\n---\n\nType definitions are published to https://npmjs.com as @dop251/types-goja_nodejs-MODULE.\nThey only include what's been implemented so far.\n\nTo make use of them you need to install the appropriate modules and add `node_modules/@dop251` to `typeRoots` in `tsconfig.json`.\n\nI didn't want to add those to DefinitelyTyped partly because I don't think they really belong there,\nand partly because I'd like to fully control the release cycle, i.e. publish the modules by an automated CI job and\nexactly at the same time as the Go code is released.\n\nAnd the reason for splitting them into different packages is that the modules can be enabled or disabled individually, unlike in nodejs.\n\nMore modules will be added. Contributions welcome too.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdop251%2Fgoja_nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdop251%2Fgoja_nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdop251%2Fgoja_nodejs/lists"}