{"id":20774036,"url":"https://github.com/indoorvivants/sn-bindgen","last_synced_at":"2026-06-15T12:01:32.051Z","repository":{"id":38380527,"uuid":"441906145","full_name":"indoorvivants/sn-bindgen","owner":"indoorvivants","description":"Scala 3 native binding generator + libclang facade","archived":false,"fork":false,"pushed_at":"2026-06-15T11:15:35.000Z","size":3603,"stargazers_count":98,"open_issues_count":58,"forks_count":15,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-06-15T11:40:13.216Z","etag":null,"topics":["bindings","c","generator","sbt","scala","scala-native"],"latest_commit_sha":null,"homepage":"https://sn-bindgen.indoorvivants.com","language":"Scala","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/indoorvivants.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-12-26T14:09:46.000Z","updated_at":"2026-06-15T09:46:22.000Z","dependencies_parsed_at":"2026-03-10T12:05:19.710Z","dependency_job_id":null,"html_url":"https://github.com/indoorvivants/sn-bindgen","commit_stats":null,"previous_names":[],"tags_count":44,"template":false,"template_full_name":null,"purl":"pkg:github/indoorvivants/sn-bindgen","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indoorvivants%2Fsn-bindgen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indoorvivants%2Fsn-bindgen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indoorvivants%2Fsn-bindgen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indoorvivants%2Fsn-bindgen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/indoorvivants","download_url":"https://codeload.github.com/indoorvivants/sn-bindgen/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indoorvivants%2Fsn-bindgen/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34361403,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-15T02:00:07.085Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["bindings","c","generator","sbt","scala","scala-native"],"created_at":"2024-11-17T12:28:10.869Z","updated_at":"2026-06-15T12:01:32.043Z","avatar_url":"https://github.com/indoorvivants.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bindings generator for Scala 3 Native\n\n[![bindgen-interface Scala version support](https://index.scala-lang.org/indoorvivants/sn-bindgen/bindgen-interface/latest.svg)](https://index.scala-lang.org/indoorvivants/sn-bindgen/bindgen-interface)\n\nDistributed as a SBT plugin and a CLI program, this project generates idiomatic\nScala 3 Native bindings to C libraries using libclang.\n\n- [Documentation](https://sn-bindgen.indoorvivants.com/index.html)\n- [Template](https://github.com/keynmol/sn-bindgen-template)\n- [Sample bindings and usage examples](https://github.com/keynmol/sn-bindgen-examples) - Postgres, Sqlite, Tree Sitter, cJSON, Git, Lua, Redis, RocksDB, DuckDB, libuv, Cmark, s2, OpenSSL, etc.\n\n**Status (March 2026)**: project it actively maintained, and is used in several applications\n\n- Generates glue C code to work around Scala Native's missing interop features\n- Strongly typed (where possible) interfaces to structs, unions, and functions\n- Supports named enums\n- Collects unnamed enums into a single location\n- Extra flags to work around compiler deficiencies\n- Supports some `#define` macro definitions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findoorvivants%2Fsn-bindgen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Findoorvivants%2Fsn-bindgen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findoorvivants%2Fsn-bindgen/lists"}