{"id":18951691,"url":"https://github.com/openkraken/node-qjsc","last_synced_at":"2025-04-16T00:32:05.243Z","repository":{"id":40373967,"uuid":"404656014","full_name":"openkraken/node-qjsc","owner":"openkraken","description":"Node.js addon for the QuickJS compiler","archived":false,"fork":false,"pushed_at":"2022-09-29T01:54:22.000Z","size":4694,"stargazers_count":25,"open_issues_count":1,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-03T17:43:18.653Z","etag":null,"topics":["compiler","quickjs"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openkraken.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}},"created_at":"2021-09-09T09:07:53.000Z","updated_at":"2024-08-05T06:59:23.000Z","dependencies_parsed_at":"2022-08-09T18:42:29.362Z","dependency_job_id":null,"html_url":"https://github.com/openkraken/node-qjsc","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openkraken%2Fnode-qjsc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openkraken%2Fnode-qjsc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openkraken%2Fnode-qjsc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openkraken%2Fnode-qjsc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openkraken","download_url":"https://codeload.github.com/openkraken/node-qjsc/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223691254,"owners_count":17186774,"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":["compiler","quickjs"],"created_at":"2024-11-08T13:29:03.222Z","updated_at":"2024-11-08T13:29:03.938Z","avatar_url":"https://github.com/openkraken.png","language":"C","readme":"# node-qjsc\n\u003e Node.js addon for the [QuickJS](https://github.com/bellard/quickjs) compiler.\n\nCurrent supported version:\n+ 20210327\n\n## Install\n\n```\nnpm install qjsc --save\n```\n\n## Usage\n\n```javascript\nconst Qjsc = require('qjsc');\nconst qjsc = new Qjsc();\n\n// Dump bytecode from javascript source;\nqjsc.compile('function hello() { return 1 + 1};'); // \u003cBuffer ...\u003e\n\n// Use specified quickjs version\nqjsc = new Qjsc({version: '20210327'});\n\n// Get all supported versions.\nqjsc.getSupportedVersions();\n```\n\n## Contribute\n\n**Generate compile_commands.json**\n\n```\nnode-gyp configure -- -f gyp.generator.compile_commands_json.py\n```\n\n**Prebuild linux binary**\n\n1. Install docker\n2. Build local image with Dockerfile\n  ```\n  docker build -t qjsc .\n  ```\n3. Enter into images\n  ```\n  docker run --rm -it -v $(pwd):/project qjsc\n  ```\n4. Set up env in docker container\n  ```\n  cd project\n  scl enable rh-nodejs12 bash\n  scl enable devtoolset-7 bash\n  ```\n5. Build your binary\n  ```\n  npm install\n  npm run prebuild\n  ```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenkraken%2Fnode-qjsc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenkraken%2Fnode-qjsc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenkraken%2Fnode-qjsc/lists"}