{"id":18016638,"url":"https://github.com/wasmvision/go-wasmcv","last_synced_at":"2025-03-26T18:32:26.346Z","repository":{"id":257429375,"uuid":"858209964","full_name":"wasmvision/go-wasmcv","owner":"wasmvision","description":"Go bindings for wasmCV computer vision interfaces using WebAssembly. This package is generated.","archived":false,"fork":false,"pushed_at":"2025-01-31T17:14:31.000Z","size":118,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-22T07:22:57.699Z","etag":null,"topics":["computer-vision","golang","opencv","tinygo","wasi","wasm","wasmcv"],"latest_commit_sha":null,"homepage":"http://wasmcv.org","language":"Assembly","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wasmvision.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}},"created_at":"2024-09-16T13:58:31.000Z","updated_at":"2025-01-31T17:14:34.000Z","dependencies_parsed_at":"2024-09-16T17:57:52.807Z","dependency_job_id":"ea7e8e16-f1f8-4862-b3ce-5758306f9c96","html_url":"https://github.com/wasmvision/go-wasmcv","commit_stats":null,"previous_names":["wasmvision/go-wasmcv"],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasmvision%2Fgo-wasmcv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasmvision%2Fgo-wasmcv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasmvision%2Fgo-wasmcv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wasmvision%2Fgo-wasmcv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wasmvision","download_url":"https://codeload.github.com/wasmvision/go-wasmcv/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245713105,"owners_count":20660344,"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":["computer-vision","golang","opencv","tinygo","wasi","wasm","wasmcv"],"created_at":"2024-10-30T04:18:44.409Z","updated_at":"2025-03-26T18:32:26.334Z","avatar_url":"https://github.com/wasmvision.png","language":"Assembly","funding_links":[],"categories":["WebAssembly"],"sub_categories":["WASI and WASM Unknown"],"readme":"# wasmCV\n\nGenerated Go bindings for wasmCV WebAssembly interfaces to computer vision systems.\n\nSee https://github.com/wasmvision/wasmcv for information about wasmCV.\n\n## How to use\n\nThis example Go module exports a `process()` function to the WASM host application. When the host calls the processor, it passes in the wasmCV image `Mat` to be processed. The wasmCV module then calls functions on that `Mat` which are handled by the host application, by calling OpenCV to actually perform the operations.\n\n```go\npackage main\n\nimport (\n\t\"github.com/hybridgroup/mechanoid/convert\"\n\t\"wasmcv.org/wasm/cv/mat\"\n)\n\n//go:wasmimport hosted println\nfunc println(ptr, size uint32)\n\n//export process\nfunc process(image mat.Mat) mat.Mat {\n\tprintln(convert.StringToWasmPtr(\"Cols: \" +\n\t\tconvert.IntToString(int(image.Cols())) +\n\t\t\" Rows: \" +\n\t\tconvert.IntToString(int(image.Rows())) +\n\t\t\" Type: \" +\n\t\tconvert.IntToString(int(image.Mattype()))))\n\n\treturn image\n}\n```\n\nInstall the `wasmcv` package into your Go package:\n\n```shell\ngo get wasmcv.org/wasm/cv\n```\n\nYou can then compile this module using the TinyGo compiler.\n\n```shell\ntinygo build -o processor.wasm -target=wasm-unknown processor.go\n```\n\nNote that the `wasm-unknown` target can be used with wasmCV to produce very lightweight guest modules. The example above compiles to around 31k, including debug information.\n\n```shell\n-rwxrwxr-x 1 ron ron 31248 sep 11 11:00 processor.wasm\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwasmvision%2Fgo-wasmcv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwasmvision%2Fgo-wasmcv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwasmvision%2Fgo-wasmcv/lists"}