{"id":17793238,"url":"https://github.com/jcbhmr/hello-world-rust-wasm-component-lib","last_synced_at":"2026-05-01T15:31:53.034Z","repository":{"id":214382946,"uuid":"734128908","full_name":"jcbhmr/hello-world-rust-wasm-component-lib","owner":"jcbhmr","description":"🟪 Rust library compiled to WASM and distributed as a WASM component","archived":false,"fork":false,"pushed_at":"2024-01-16T02:14:21.000Z","size":158,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-07T17:15:36.618Z","etag":null,"topics":["component-model","rust","wasm","wasm-component","webassembly"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"0bsd","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jcbhmr.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":"2023-12-21T00:06:36.000Z","updated_at":"2023-12-29T02:36:00.000Z","dependencies_parsed_at":"2024-01-03T04:36:30.204Z","dependency_job_id":"c979894a-2863-4458-bf54-3b63ce061c5f","html_url":"https://github.com/jcbhmr/hello-world-rust-wasm-component-lib","commit_stats":null,"previous_names":["jcbhmr/hello-world-wasm-component"],"tags_count":2,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcbhmr%2Fhello-world-rust-wasm-component-lib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcbhmr%2Fhello-world-rust-wasm-component-lib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcbhmr%2Fhello-world-rust-wasm-component-lib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcbhmr%2Fhello-world-rust-wasm-component-lib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jcbhmr","download_url":"https://codeload.github.com/jcbhmr/hello-world-rust-wasm-component-lib/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246741117,"owners_count":20826067,"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":["component-model","rust","wasm","wasm-component","webassembly"],"created_at":"2024-10-27T11:05:20.611Z","updated_at":"2026-05-01T15:31:52.987Z","avatar_url":"https://github.com/jcbhmr.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# \"Hello world!\" Rust WebAssembly component library\n\n🟪 Rust library compiled to WASM and distributed as a [WASM component]\n\n\u003cp align=center\u003e\n  \u003ca href=\"https://github.com/jcbhmr/hello-world-rust-wasm-component-lib/releases/latest/download/hello_world_rust_wasm_component_lib.wasm\"\u003eDownload WASM\u003c/a\u003e\n  | \u003ca href=\"https://github.com/jcbhmr/hello-world-rust-wasm-component-lib/tree/main/wit\"\u003eView WIT\u003c/a\u003e\n  | \u003ca href=\"https://github.com/jcbhmr/hello-world-rust-wasm-component-lib.js\"\u003eJavaScript bindings\u003c/a\u003e\n\u003c/p\u003e\n\n🦀 Written in Rust \\\n🟪 Modern WebAssembly Component example \\\n🌎 Runs on any [WebAssembly Component Runtime] \\\n📥 Imports some host functions \\\n📤 Exports some functions \\\n👩‍⚖️ [0BSD licensed](./LICENSE) template\n\n## Usage\n\n![WebAssembly](https://img.shields.io/static/v1?style=for-the-badge\u0026message=WebAssembly\u0026color=654FF0\u0026logo=WebAssembly\u0026logoColor=FFFFFF\u0026label=)\n\nTo get started just [download the latest WASM artifact] and use it in your\nfavorite [WebAssembly Component Runtime]! Make sure you provide any required\nimports! 😉\n\n## Development\n\n![Rust](https://img.shields.io/static/v1?style=for-the-badge\u0026message=Rust\u0026color=000000\u0026logo=Rust\u0026logoColor=FFFFFF\u0026label=)\n![WebAssembly](https://img.shields.io/static/v1?style=for-the-badge\u0026message=WebAssembly\u0026color=654FF0\u0026logo=WebAssembly\u0026logoColor=FFFFFF\u0026label=)\n\n```sh\n./just build\n```\n\nℹ You'll need [`wasm-tools`] installed which you can get via\n`cargo install wasm-tools`.\n\nYou can inspect the output component WASM using something like this:\n\n```sh\nwasm-tools component wit target/wasm32-wasi/debug/*.wasm\n#=\u003e world my-component {\n#  import print: func(msg: string)\n#  export run: func()\n# }\n```\n\nThe `wasi_snapshot_preview1.reactor.wasm` is the adapter module to shim the\ncomponent API over top of the existing WASI API. Keep it updated from\n[bytecodealliance/wasmtime releases]. Since this is a library we want the\n\"reactor\" version.\n\n🚚 To create a new release, don't use the GitHub UI directly; use the [draft\nrelease] GitHub Actions workflow to create the initial draft release with the\ncompiled WASM artifact. Then you can edit that release and publish it as normal.\nMake sure the `version` fields are correct before drafting the release; it's\nused to choose the `v${version}` tag name for the release and in publishing.\nAlso try not to change the artifacts attached to the draft release; they are\ngenerated by GitHub Actions.\n\n\u003c!-- prettier-ignore-start --\u003e\n[webassembly component runtime]: https://github.com/bytecodealliance/wit-bindgen#host-runtimes-for-components\n[wasm component]: https://github.com/WebAssembly/component-model\n[`wasm-tools`]: https://github.com/bytecodealliance/wasm-tools\n[bytecodealliance/wasmtime releases]: https://github.com/bytecodealliance/wasmtime/releases\n[draft release]: https://github.com/jcbhmr/hello-world-wasm-component/actions/workflows/draft-release.yml\n[download the latest WASM artifact]: https://github.com/jcbhmr/hello-world-rust-wasm-component-lib/releases/latest/download/hello_world_rust_wasm_component_lib.wasm\n\u003c!-- prettier-ignore-end --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcbhmr%2Fhello-world-rust-wasm-component-lib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjcbhmr%2Fhello-world-rust-wasm-component-lib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcbhmr%2Fhello-world-rust-wasm-component-lib/lists"}