Implementations of BSON exist for many different programming languages. Some implementations are currently embedded within official MongoDB drivers, since MongoDB was the first large project to make use of BSON. Over time those libraries will be made more stand-alone, but they should be usable independently of MongoDB in their current state.
Most of these libraries use the Apache 2 license, but check individual project details to confirm.
AssemblyScript
assemblyscript-bson - A BSON encoder / decoder library written in AssemblyScript, compiles to WebAssembly. Can be used to enable transfer of complex objects between JavaScript and WebAssembly. Originally written to support smart contract development in WebAssembly.
C
libbson - A library providing useful routines related to building, parsing, and iterating BSON documents. Used by the cross-platform libmongoc client library that provides a base for MongoDB drivers in higher-level languages such as PHP.
C#/.NET
Json.NET - Adds support for reading and writing BSON to the popular Json.NET library.
MongoDB.Bson - The BSON library included with the official MongoDB C#/.NET driver.
Metsys.Bson - A BSON serializer/deserializer for .NET.
C++
The MongoDB C++ Driver Library - The official MongoDB C++ driver includes a robust and well tested BSON implementation. You can use just the BSON portion of the driver library if desired.
github.com/jbenet/bson-cpp - A standalone C++ BSON implementation forked from the MongoDB C++ driver, with the non-BSON code pruned away.
github.com/dwight/bson-cxx - Another C++ BSON implementation originating from the MongoDB C++ driver. Non-BSON code was eliminated, Endian-awareness was added, and some attempts were made to simplify the interface.
JSON for Modern C++ - A library to make JSON a first-class data type in C++ which can read and write a subset of BSON that can map to JSON.
oatpp-mongo - BSON object-mapper plus MongoDB driver for Oat++ applications.
JSONCONS - A C++ header-only library for constructing JSON and JSON-like data formats including BSON, supports encode/decode of BSON byte string.
reflect-cpp - A C++-20 library that provides a unified reflection-based interface for various serialization formats, including BSON.
D
vibe.data.bson - BSON serialization and value handling.
Dart
bson_codec - A flexible serializer and deserializer for BSON documents.
Delphi
DynamicDataObjects - Supports JSON, MessagePack, CBOR, CSV, BinaryJData, ICS, Smile, ION, UBJSON, and DDO. It includes tools for command-line conversion between formats, a windows app for editing and diffing these file types, and an explorer previewer plugin.
TMongoWire - A Delphi driver to access a MongoDB server. The driver includes jsonDoc.pas and bsonTools.pas to store and process documents.
kxBSON - Class for reading and writing a stream in BSON format.
Elixir
cyanide - BSON implementation for Elixir.
elixir-cbson - BSON NIF for Elixir/Erlang.
Factor
Fantom
afBson - Implementation created to support the development of the afMongo driver for MongoDB.
Go
mongo-go-driver - The official MongoDB Go driver.
bson - BSON library implemented within the official MongoDB Go driver. See the documentation to learn more.
Haskell
bson package - BSON implementation for Haskell.
Java
The BSON library (org.mongodb.bson) - A standalone BSON library, with a new Codec infrastructure that you can use to build high-performance encoders and decoders without requiring an intermediate Map instance.
bson4jackson - A pluggable BSON generator and parser for Jackson JSON processor.
ebson - Extensible BSON encoder/decoder library written in Java with pluggable Java-to-BSON type mappings.
Jongo (org.jongo.bson) - Included in the Jongo driver for MongoDB.
CookJson - Contains JSON and BSON parsers/generators for JSON API for Java (JSR 353).
Julia
BSON.jl - A Julia package for working with the Binary JSON serialization format.
Lisp
cl-mongo - Common Lisp interface for MongoDB.
Lua
Nim
bson (nimble package) - A BSON library in pure Nim.
Node.js
bson - BSON serialization and deserialization library used by the official MongoDB Node.js driver.
OCaml
Bson.ml - A BSON encoder / decoder in OCaml, built for MongoDB.
Perl
Mango::BSON - Included with Mango, a Pure-Perl non-blocking I/O MongoDB driver.
PHP
BSON - Interface included with the official MongoDB PHP driver. Builds on the libbson C library. To learn more about working with BSON in the PHP library, see the BSON documentation.
Prolog
prolog-bson - BSON encoder/decoder for Prolog. Used by the Prolog MongoDB community driver prolongo.
Python
PyMongo - The official MongoDB Python driver. PyMongo also includes an asynchronous API.
bson - Independent BSON codec for Python that doesn't depend on MongoDB.
py-bson-rpc - A Python library for JSON-RPC 2.0 and BSON-RPC on sockets (TCP and TCP+TLS). This library was archived in December 2024.
Ruby
bson (with optional C extension) - A fully featured BSON specification implementation used by the official MongoDB Ruby driver.
Rust
bson - Official encoding and decoding support for BSON built using the Serde framework.
Scala
MongoDB Scala driver - Official MongoDB driver for Scala.
ReactiveMongo - Reactive Scala Driver for MongoDB.
Smalltalk
Mongo-BSON - Part of the MongoTalk driver for MongoDB.
Standard ML (SML)
mlmongo - Standard ML driver for MongoDB.
Swift
BSONSerialization - BSON Serialization in native Swift 4.
BSON - Native Swift library for BSON.
bsontools - Command line utilities for manipulating BSON files and for translating them to and from other formats such as CSV, JSON, and XML.
Kaitai Struct: BSON - Machine-readable description for generating a BSON parser automatically (C#, Java, JavaScript, Perl, PHP, Python, Ruby, and more).
MongoDB - A distributed document-oriented database using BSON as both the network and on-disk representation of documents.
ModeShape - A hierarchical JCR data store using BSON to serialize the data.
bsonsearch - BSON matching engine to perform offline document comparisons without a MongoDB server. This project uses a C dynamic library with Python wrapper.
If you know of other BSON implementations or projects that use BSON, please create a documentation (DOCS) ticket in the MongoDB JIRA server.