Skip to main content
Archived

This project has been archived by its maintainers, and is no longer receiving any updates.

fixie-proto

This repository contains protocol buffer definitions for working with the Fixie platform. The intention is for this to define our public-facing APIs. Tooling in this repository should then make it easy to use the already compiled protos in various languages.

Usage

Buf Schema Registry (BSR)

For languages supported by the Buf Schema Registry, instructions for adding these protos like a normal dependency can be found here. For example, to add a TypeScript dependency using yarn:

yarn config set npmScopes.buf.npmRegistryServer https://buf.build/gen/npm/v1/
yarn add @buf/fixie-ai_fixie.bufbuild_connect-es@latest

As of July 2023, BSR has support for JavaScript/Typscript, Go, JVM-based languages like Java and Kotlin, and Swift.

Directly supported languages

We also support additional languages (albeit with fewer options) directly. In particular, Python is available via pip: PyPI.

pip install fixie-proto

Inclusion in a proto library

The easiest way to depend on Fixie protos for your own proto library is by building with Buf and adding buf.build/fixie-ai/fixie as a dependency in your buf.yaml.

If you're using protoc instead, consider including this repository as a submodule in your own repository.

Other languages

Buf can be used to easily compile our protos in other languages too, including: Ruby, Objective-C, PHP, C#, Scala, C++, Dart, and Rust. You'll need to create a buf.gen.yaml file that uses the relevant protoc plugin for your language. You can also define language-specific proto options without modifying the proto files themselves using managed mode. You can then compile the protos in your language of choice by running:

buf generate --template buf.gen.yaml buf.build/fixie-ai/fixie

If you'd prefer to use protoc, see the advice above about including Fixie protos in your own proto library.

Using JSON instead

If you'd prefer not to deal with protos, we've got you covered! All of our APIs can accept and return JSON instead. Just set your Content-Type header to application/json instead of application/proto.

Our OpenAPI spec matches the proto API. You can view it here.

Contributing

Tools

To work in this repository, you'll need to install Buf and Just. If you are using homebrew:

brew install bufbuild/buf/buf
brew install just

Otherwise see the Buf docs and the Just docs for other installation options.

Presubmit

Please run "just" before sending PRs. This will format and lint your proto files in addition to identifying breaking changes. (These will also be run for you any time a PR is created.)

Releases

New versions are pushed to BSR whenever a PR is merged into main. These events will also cause a push to PyPI as long as the version in pyproject.toml was incremented.

Metadata

Release files for fixie-proto 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fixie-proto 0.1.3
File Size Uploaded
fixie_proto-0.1.3.tar.gz 4.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fixie-proto 0.1.3
File Interpreter ABI Platform
fixie_proto-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 11.6 kB

Release files / fixie_proto-0.1.3.tar.gz

Download URL fixie_proto-0.1.3.tar.gz
Size 4.7 kB
Tags Source
SHA-256 checksum
How to use checksums
ff6040a3b006cee5b8b7e6d28726a82d8186401bc726b463a85a61a1dda85611
BLAKE2b-256 checksum
How to use checksums
09d9d31eb7eda62982f1c667d4d0e4dc182a084f43a7c655d23564d781681ef2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.5.1 CPython/3.9.17 Linux/5.15.0-1041-azure

Release files / fixie_proto-0.1.3-py3-none-any.whl

Download URL fixie_proto-0.1.3-py3-none-any.whl
Size 7.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dce6e6b17ef3c2a33e61e662e0c746b9b1921ab6faeef4936d22a3eb580b3dab
BLAKE2b-256 checksum
How to use checksums
d040ff37448947c5443bd155de313c647c18cc91432bc8483401b62f71f1dd17
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.5.1 CPython/3.9.17 Linux/5.15.0-1041-azure

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page