{"id":20572862,"url":"https://github.com/zlgopen/awtk-jerryscript","last_synced_at":"2026-02-26T20:41:28.213Z","repository":{"id":76747792,"uuid":"144074628","full_name":"zlgopen/awtk-jerryscript","owner":"zlgopen","description":"awtk javascript bindings.","archived":false,"fork":false,"pushed_at":"2024-10-28T02:59:59.000Z","size":35476,"stargazers_count":22,"open_issues_count":4,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T06:03:49.227Z","etag":null,"topics":["awtk","gui","jerryscript"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zlgopen.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":"2018-08-08T22:36:17.000Z","updated_at":"2024-10-28T03:00:04.000Z","dependencies_parsed_at":"2024-10-28T04:26:53.522Z","dependency_job_id":null,"html_url":"https://github.com/zlgopen/awtk-jerryscript","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/zlgopen%2Fawtk-jerryscript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zlgopen%2Fawtk-jerryscript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zlgopen%2Fawtk-jerryscript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zlgopen%2Fawtk-jerryscript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zlgopen","download_url":"https://codeload.github.com/zlgopen/awtk-jerryscript/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248924194,"owners_count":21184037,"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":["awtk","gui","jerryscript"],"created_at":"2024-11-16T05:24:19.617Z","updated_at":"2026-02-26T20:41:23.191Z","avatar_url":"https://github.com/zlgopen.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# awtk-jerryscript\n\nZLG 开源 GUI 引擎 [awtk](https://github.com/zlgopen/awtk) 针对三星开源 JS 引擎 [jerryscript](https://github.com/jerryscript-project/jerryscript) 的绑定。\n\n## 准备\n\n1. 获取 awtk 并编译\n\n```\ngit clone https://github.com/zlgopen/awtk.git\ncd awtk; scons; cd -\n```\n\u003e AWTK 的编译环境请参考 AWTK 的文档。\n\n2. 获取 awtk-jerryscript 并编译\n\n```\ngit clone https://github.com/zlgopen/awtk-jerryscript.git\ncd awtk-jerryscript\ngit clone https://github.com/jerryscript-project/jerryscript.git 3rd/jerryscript/jerryscript\ncd 3rd/jerryscript/jerryscript\ngit reset --hard 3737a28eafd580a2bee2794e4f5edd0c0471a0c6\n```\n\n\n* 生成资源\n\n```\npython ./scripts/update_res.py all\n```\n\n\u003e 或者通过 designer 生成资源\n\n\n* 编译PC版本\n\n```\nscons\n```\n\n* 编译LINUX FB版本\n\n```\nscons LINUX_FB=true\n```\n\n\u003e 完整编译选项请参考[编译选项](https://github.com/zlgopen/awtk-widget-generator/blob/master/docs/build_options.md)\n\n## 运行\n\n```\n./bin/awtkRun xxxx\n```\n\n\u003e 请把 xxxx 换成具体的 js 文件, xxxx对应的js文件需要放在assets/default/raw/scripts目录下。\n\n如：\n\n```\n./bin/awtkRun basic\n```\n\n## 更新绑定(由本项目的维护人员完成)\n\n```\n./sync.sh\n```\n\n\u003e 在非 bash 终端（如 Windows 平台的 cmd.exe)，需要根据 sync.sh 的内容手工执行相应的命令。\n\n## 文档\n\n* [AWTK JS API 文档](https://github.com/zlgopen/awtk-binding/tree/master/docs/js)\n\n* [AWTK 脚本绑定原理](https://github.com/zlgopen/awtk/blob/master/docs/script_binding.md)\n\n* [Javascript 绑定原理与示例](https://github.com/zlgopen/awtk-binding/blob/master/docs/binding_js.md)\n\n\u003e 本文以 Linux/MacOS 为例，Windows 可能会微妙差异，请酌情处理。\n\n# 注意事项\n\n如果希望自己的应用程序，同时支持 AWTK-JS 和 AWTK-WEB，还需要注意下列事项：\n\n* 避免直接调用 gc() 函数。\n\n* 避免使用模态对话框。\n\n* 避免使用动态 GIF 图片。\n\n* 避免直接使用 value\\_t/color\\_t/bitmap\\_t/object\\_t 等类。\n\n\n# 编译 awtk-iotjs 版本\n\n\u003e iotjs 用的 jerryscript 2.4, 而 awtk-jerryscript 用的jerryscrip 3.0。\n\u003e 编译 awtk-iotjs 版本需要 checkout jerryscript 2.4，再编译：\n\n```\ncd 3rd/jerryscript/jerryscript \u0026\u0026 git checkout 8ba0d1b6ee5a065a42f3b306771ad8e3c0d819bc \u0026\u0026 cd -\nscons IOTJS=true\n```\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzlgopen%2Fawtk-jerryscript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzlgopen%2Fawtk-jerryscript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzlgopen%2Fawtk-jerryscript/lists"}