macOS
brew install typesharelocal Homebrew formula metadata
安装
brew install typesharelocal Homebrew formula metadata
nix profile install nixpkgs#typesharenixpkgs package indexes · pkgs/by-name/ty/typeshare/package.nix · 来源: api.github.com
概览
Synchronize type definitions between Rust and other languages for seamless FFI
历史
Typeshare is a Rust-based developer tool from 1Password for generating matching type definitions in other languages from Rust source types. In package-manager catalogs it occupies the code-generation and FFI niche: a small command-line utility installed as `typeshare` for teams that want Rust-owned schemas to drive Swift, Kotlin, Scala, TypeScript, Go, or Python bindings.
The public GitHub repository was created in September 2022 under the 1Password organization. Its README describes the project as a way to remove the manual work of keeping FFI-facing Rust types synchronized with equivalent forms in other languages, using serde-oriented Rust definitions and a `#[typeshare]` annotation model.
By the 1.x series the project was organized as several Rust crates, including `typeshare`, `typeshare-core`, `typeshare-annotation`, and `typeshare-cli`. The README points users to a dedicated Typeshare book and documents command-line generation into Kotlin, Swift, Scala, and TypeScript files, with Go and Python marked as experimental in the official README.
Official public adoption evidence is mostly packaging and registry based rather than a broad ecosystem narrative. The input package facts list Homebrew and Nix packaging, while the upstream README advertises crates.io crates and the `cargo install typeshare-cli` path.
The project remained active after its initial publication: GitHub release metadata shows 2024 and 2025 1.x releases, including v1.13.4 published in December 2025.
A typical use is to mark Rust structs and enums with `#[typeshare]`, then run `typeshare ./my_rust_project --lang=typescript --output-file=...` or an equivalent target-language command. The generated files become the foreign-language side of a Rust-centered serialization or FFI boundary.
Typeshare matters to package nerds because it turns a cross-language type-sync problem into an installable CLI workflow. It is especially relevant in Rust-heavy shops where package recipes, CI jobs, and generated artifacts need to keep mobile, web, and backend type definitions aligned without maintaining separate schema sources.
安全态势
broad file, network, media, or database tool signal.
blue 风险 · 中 置信度 · tool
在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。
可执行文件
| 命令 | 类型 | 暴露范围 | 备注 |
|---|---|---|---|
typeshare | 可执行文件 | 已索引可执行文件 | 从本地可执行文件索引发现。 |
新鲜度
这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。
安装元数据
| 软件包键 | brew:typeshare |
|---|---|
| 版本 | 1.13.4 |
| 软件包管理器 | Homebrew |
| 主页 | https://github.com/1Password/typeshare |
| 仓库 | https://github.com/1Password/typeshare |
| Bottle | 未记录 |
| 服务 | 未声明 |
源数据库匹配
匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。
typeshare
nix profile install nixpkgs#typeshare来源线索
此页面由 av-web 从 scripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。
View the package source record on GitHub.