Add your BSON file
Drop one or more .bson files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Converting a .bson font to .yml repackages the same glyphs and metrics for a different delivery target. Free, private, and validated — the file never leaves your browser.
Batch files can each use a different output. Nothing uploads for local conversions.
Working inputs include camera RAW, browser-local audio/video, PDF, CBZ/CBR comics, office documents, ebooks, markup, 3D models, structured text, images, and archives.Converting a .bson font to .yml repackages the same glyphs and metrics for a different delivery target. A .bson file holds BSON: the binary document format MongoDB stores and transmits. It looks like JSON with types added — every field is length-prefixed and carries a type byte — which makes documents skippable during a scan and gives them an ObjectId, a real date type, and 32- and 64-bit integers distinct from doubles.
.yml is simply the three-letter spelling of the YAML extension — the contents are ordinary YAML in every respect. It became entrenched because early adopters favored terse extensions, and flagship filenames like docker-compose.yml and .travis.yml cemented the habit. For this route the practical draw is fully interchangeable with .yaml — a rename is the whole migration and matches the default filenames that many popular tools generate — balanced against mixed extensions across one codebase complicate tooling and glob rules, which is worth knowing before you commit a large batch.
The practical trigger for this conversion is usually a mismatch: with .bson, often larger than the equivalent JSON, because of length prefixes and field names repeated per document. Switching to .yml buys you fully interchangeable with .yaml — a rename is the whole migration, which is why it is the better fit for docker-compose.yml service definitions. Because the conversion runs locally, trying it costs nothing but a few seconds of compute on your own machine.
| Aspect | BSON (.bson) | YAML data (.yml) |
|---|---|---|
| Format type | Lossless — every pixel or sample is preserved exactly | Text-based — characters and structure, so there is no visual quality loss |
| How it stores data | a document is a little-endian int32 total length, a sequence of typed elements, and a terminating null byte | there is no format difference from .yaml whatsoever; parsers never inspect the extension |
| Strongest at | inspecting a mongodump export without restoring it to a database | docker-compose.yml service definitions |
| Weak spot | often larger than the equivalent JSON, because of length prefixes and field names repeated per document | mixed extensions across one codebase complicate tooling and glob rules |
Drop one or more .bson files onto the converter above, or browse for them. They load into browser memory only — nothing is uploaded, so there is no size-based pricing and no server queue.
Select .yml in the output menu next to each file. The menu only offers targets this engine can genuinely produce, so if YML is selectable, the route is real and validated.
Press Convert. The font tables are parsed and rewritten locally with fonteditor-core; glyph outlines, hinting, and kerning survive the trip.
Each result is signature-checked before the download unlocks, so a failed encode can never masquerade as a valid YML file. Outputs keep the original filename with the .yml extension.
There is no visual quality to lose — bson is lossless-oriented and yml is text-oriented, so the question is structural fidelity. Text, ordering, and basic structure are preserved; complex layout, embedded objects, and styling beyond the target's model are simplified.
Yes — the .bson file is processed inside your browser tab and never uploaded. The font tables are parsed and rewritten locally with fonteditor-core; glyph outlines, hinting, and kerning survive the trip. Close the tab and the file is gone from memory.
Anything that reads .yaml reads .yml identically, from language libraries to editor plugins. The only compatibility question is which spelling a given tool looks for by default when discovering config files.
It depends on the content: there is no format difference from .yaml whatsoever; parsers never inspect the extension. Convert one representative file first and compare before batch-processing a large set.
In .bson, type information is preserved through the conversion summary; JSON, CSV and spreadsheet targets record BSON-specific types as their documented string representations. Re-encoding through the browser pipeline does not carry embedded metadata into the output, which doubles as a privacy scrub — check the exported file if you specifically need tags preserved.