Automic VaultAutomic Vault

brew

Install typeshare with Homebrew, Nix

Synchronize type definitions between Rust and other languages for seamless FFI. Version 1.13.4 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install typeshare

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#typeshare

nixpkgs package indexes · pkgs/by-name/ty/typeshare/package.nix · source: api.github.com

overview

Package summary

Synchronize type definitions between Rust and other languages for seamless FFI

Commands and aliases

  • typeshare

history

Project history and usage

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.

Project history

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.

Adoption history

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.

How it is used

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.

Why package nerds care

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.

Timeline

  • 2022: Public GitHub repository created under 1Password.
  • 2024: v1.11.0 and v1.12.0 releases published.
  • 2025: v1.13.4 published on GitHub releases.

Related projects

  • The README positions Typeshare around Rust, serde, and FFI/code-generation workflows rather than as a general serialization framework. It is related in practice to Rust procedural-macro crates and schema/codegen tools used to share types across language boundaries.

security posture

Risk level: blue

broad file, network, media, or database tool signal.

Risk classifier

blue risk · medium confidence · tool

Why

  • broad file, network, media, or database tool signal

Signals

  • text:sync

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
typesharecliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.13.4
manager updated
local dataok
upstreamcurrent
latest detectedv1.13.4

https://github.com/1Password/typeshare

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:typeshare
Version1.13.4
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/typeshare
Homepagehttps://github.com/1Password/typeshare
Repositoryhttps://github.com/1Password/typeshare
Upstream docshttps://1password.github.io/typeshare
LicenseApache-2.0 OR MIT
Source archivehttps://github.com/1Password/typeshare/archive/refs/tags/v1.13.4.tar.gz
Build dependenciesrust
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nametypeshare
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

typeshare

nix profile install nixpkgs#typeshare
  • normalized package name match
  • Matched by: Typeshare
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ty/typeshare/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment