{"id":28633843,"url":"https://github.com/brimdata/superdb-wasm","last_synced_at":"2025-06-12T15:39:28.134Z","repository":{"id":264905607,"uuid":"894639195","full_name":"brimdata/superdb-wasm","owner":"brimdata","description":"The Wasm Library for SuperDB","archived":false,"fork":false,"pushed_at":"2025-06-11T23:27:15.000Z","size":240,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-12T00:32:20.992Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brimdata.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-11-26T17:58:21.000Z","updated_at":"2025-06-11T23:27:18.000Z","dependencies_parsed_at":"2025-01-20T18:29:04.077Z","dependency_job_id":"4448319c-c177-49de-a864-466618cfd1b9","html_url":"https://github.com/brimdata/superdb-wasm","commit_stats":null,"previous_names":["brimdata/superdb-wasm"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/brimdata/superdb-wasm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brimdata%2Fsuperdb-wasm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brimdata%2Fsuperdb-wasm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brimdata%2Fsuperdb-wasm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brimdata%2Fsuperdb-wasm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brimdata","download_url":"https://codeload.github.com/brimdata/superdb-wasm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brimdata%2Fsuperdb-wasm/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259372795,"owners_count":22847796,"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":"2025-06-12T15:39:18.723Z","updated_at":"2025-06-12T15:39:28.101Z","avatar_url":"https://github.com/brimdata.png","language":"Go","readme":"# SuperDB Wasm\n\nSuperDB Wasm is a JavaScript module that runs in a browser and exposes a JS version of the `super` command.\n\n## Installation\n\nThis is an ESM module for the browser. To use it, import it from the local file system, a CDN, or an import map. Here’s an example of importing from jsdelivr.\n\n```js\nimport { SuperDB } from \"https://cdn.jsdelivr.net/npm/superdb-wasm/index.js\";\n```\n\n## Usage Example\n\nCall `.instantiate(url)` on the SuperDB class and pass in the URL of of the wasm file. The wasm file is named \"superdb.wasm\" at the root of the package.\n\n```js\nconst superdb = await SuperDB.instantiate(\n  \"https://cdn.jsdelivr.net/npm/superdb-wasm/superdb.wasm\"\n);\n```\n\nThis will fetch, decompress, and run the wasm code returning an instance of the SuperDB class.\n\nOnce you have an instance, call the `run({input, query})` method to start querying data.\n\n```js\nconst result = await superdb.run({\n  query: \"yield this + 100\",\n  input: \"1 2 3\",\n});\n\nconsole.log(result);\n// Prints:\n// 100\n// 200\n// 300\n```\n\n## Contributing\n\nThe only purpose of this library is to wrap the superdb.wasm file. To test the code, simply open the index.html file served from a static file server and ensure that the code runs with no errors in the console. There are no automated tests and the code should remain simple enough not to require them.\n\n```\nnpx serve .\n```\n\nThen open http://localhost:3000\n\nEnsure the numbers \"101 102 103\" appear on the page. This means the wasm file was successfully used to add 100 to the numbers 1, 2, and 3.\n\n## Publishing\n\nThere is a GitHub Action workflow that will publish the package to NPM when a tag is pushed to the repo that starts with \"v\". So to publish a new version, run these commands on your local computer using the version you wish to publish.\n\n```\nnpm version 0.0.1\ngit push --tags\n```\n\nThat should do it. Check that the GitHub Actions workflow starts and completes successfully. Then you should see it on NPM.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrimdata%2Fsuperdb-wasm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrimdata%2Fsuperdb-wasm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrimdata%2Fsuperdb-wasm/lists"}