Home / File Formats

444 open-source File Formats projects built by reverse engineering

Open-source projects in File Formats that exist because someone reverse engineered a closed product. Most-starred: FFmpeg, ImHex, SheetJS, calibre, AssetStudio.

Search and filter this category →

Office & Documents76 all 76 →

  1. SheetJS★ 36,344 · slowing

    Spreadsheet toolkit reading XLS, XLSB, Lotus, Quattro Pro and many legacy formats

  2. LibreOffice★ 4,564 · active · C++

    Office suite with import filters for reverse-engineered MS Office and other formats

  3. oletools★ 3,439 · active · Python

    Python tools to analyze MS OLE2 files and Office documents

  4. Apache POI★ 2,283 · active · Java

    Java API for Microsoft binary and OOXML Office formats

  5. xlrd★ 2,206 · active · Python

    Python library for reading legacy Excel BIFF (.xls) files

  6. hwp.js★ 1,307 · slowing · TypeScript

    Open-source web viewer and parser for Hancom HWP documents

  7. MDB Tools★ 1,180 · active · C

    Read Microsoft Access databases on Unix

  8. KindleUnpack★ 1,102 · active · Python

    Unpacks Amazon Kindle/Kindlegen MOBI/AZW3 ebooks

  9. msg-extractor★ 855 · active · Python

    Extracts emails and attachments from Outlook .msg files

  10. MSGReader★ 555 · active · C#

    C# reader for Outlook .msg and .eml files without Outlook

Windows & Forensic Artifacts70 all 70 →

  1. plaso★ 2,180 · active · Python

    Super-timeline tool with parsers for hundreds of Windows, macOS and app artifacts

  2. Dissect★ 1,175 · active · Python

    Forensics framework with parsers for many proprietary disk, file system and artifact formats

  3. ALEAPP★ 1,022 · active · Python

    Android Logs, Events and Protobuf Parser for app databases and artifacts

  4. evtx (Rust)★ 969 · active · Rust

    Fast, safe Rust parser for the Windows XML Event Log (EVTX) format

  5. python-evtx★ 786 · active · Python

    Pure Python parser for Windows XML Event Log (.evtx) files

  6. srum-dump★ 766 · active · Python

    Converts the Windows SRUM (System Resource Usage Monitor) database to spreadsheets

  7. RegRipper 3.0★ 725 · active · Perl

    Plugin-based extraction of data from Windows registry hives

  8. rust-minidump★ 516 · active · Rust

    Rust parser and analyzer for the Microsoft minidump crash file format

  9. Python-dsstore★ 510 · dormant · Python

    Parses macOS .DS_Store files and extracts file names

  10. python-registry★ 448 · slowing · Python

    Pure Python parser for Windows Registry hive files

Graphics & CAD52 all 52 →

  1. AssetStudio★ 15,590 · archived · C#

    Explore and extract Unity assets and assetbundles

  2. Assimp★ 13,289 · active · C++

    Asset importer for 40+ 3D formats, including proprietary FBX, 3DS and Blender files

  3. FModel★ 3,294 · active · C#

    Unreal Engine archive (.pak/.utoc) explorer

  4. psd.rb★ 3,114 · dormant · Ruby

    Parse Photoshop PSD files in Ruby

  5. LibreDWG★ 1,644 · active · C

    GNU library to read and write Autodesk DWG CAD files

  6. psd-tools★ 1,484 · active · Python

    Python package for reading Adobe Photoshop PSD files

  7. ufbx★ 1,423 · active · C

    Single-file loader for Autodesk FBX files

  8. @webtoon/psd★ 1,352 · slowing · TypeScript

    Fast zero-dependency PSD parser for the web and Node.js

  9. OpenFBX★ 1,352 · active · C

    Lightweight open source FBX importer

  10. CUE4Parse★ 672 · active · C#

    C# parser for Unreal Engine 4/5 archives and assets

Filesystems & Archives50 all 50 →

  1. android-backup-extractor★ 2,606 · active · Java

    Unpacks and repacks Android adb backup (.ab) files

  2. apfs-fuse★ 2,165 · slowing · C++

    FUSE driver for reading Apple APFS volumes

  3. dislocker★ 1,951 · active · C

    FUSE driver to read/write BitLocker-encrypted volumes on Linux/macOS

  4. lessmsi★ 1,774 · active · C#

    Views and extracts the contents of Windows Installer (.msi) files

  5. NTFS-3G★ 1,529 · active · C

    Read/write NTFS driver for Linux/macOS

  6. innoextract★ 1,396 · slowing · C++

    Unpacks installers created by Inno Setup without running them

  7. exfat (relan)★ 888 · active · C

    Free FUSE exFAT implementation, written before Microsoft published the spec

  8. linux-apfs-rw★ 809 · active · C

    Linux kernel APFS module with experimental write support

  9. unshield★ 436 · active · C

    Extracts CAB files from InstallShield installers

  10. libfsapfs★ 430 · active · C

    Library and tools to access Apple File System (APFS)

Audio & Music Production41 all 41 →

  1. alphaTab★ 1,883 · active · TypeScript

    Music notation and tab rendering library that imports Guitar Pro 3-8 files

  2. TuxGuitar★ 1,591 · active · Java

    Open-source tablature editor with Guitar Pro and Power Tab importers

  3. Power Tab Editor★ 636 · active · C++

    Guitar tablature editor that imports Power Tab and Guitar Pro files

  4. PyGuitarPro★ 371 · active · Python

    Reads, writes and manipulates Guitar Pro GP3/GP4/GP5 tablature files

  5. Crate Digger★ 236 · active · Java

    Java library for parsing Pioneer rekordbox export databases and track analysis files

  6. dawtool★ 226 · slowing · Python

    Reverse engineered parsers for Ableton Live and FL Studio project files

  7. PyFLP★ 221 · active · Python

    Parser and editor for FL Studio project (.flp) files

  8. rekordcrate★ 218 · active · Rust

    Rust library for parsing Pioneer rekordbox device exports

  9. Ruxguitar★ 212 · active · Rust

    Guitar Pro tablature player written in Rust

  10. abletoolz★ 128 · active · Python

    Tools for editing and analyzing Ableton Live sets

Databases28 all 28 →

  1. innodb_ruby★ 1,793 · active · Ruby

    Ruby parser for MySQL InnoDB on-disk file formats

  2. pyreadstat★ 429 · active · C

    Python package to read/write SAS, SPSS and Stata files (wraps ReadStat)

  3. ReadStat★ 309 · active · C

    C library and CLI for reading SAS, Stata and SPSS data files, including reverse-engineered SAS7BDAT

  4. dbf (Ruby)★ 281 · active · Ruby

    Ruby library for reading dBase, xBase, Clipper and FoxPro DBF files

  5. dbfread★ 244 · slowing · Python

    Python library for reading dBase/FoxPro DBF files

  6. OrcaMDF★ 190 · dormant · C#

    C# parser that reads SQL Server MDF data files without SQL Server

  7. Jackcess★ 122 · active · Java

    Pure Java library for reading and writing Microsoft Access (.mdb/.accdb) databases

  8. fmptools★ 108 · active · C

    Converts FileMaker Pro databases (.fp5/.fp7/.fmp12) to open formats

  9. dbf (Python)★ 102 · slowing · Python

    Pure Python dBase/FoxPro DBF reader and writer

  10. access_parser★ 93 · slowing · Python

    Python parser for Microsoft Access database files

Camera RAW & Video Metadata25 all 25 →

  1. ExifTool★ 5,213 · active · Perl

    Metadata reader/writer with extensive reverse-engineered camera maker notes

  2. LibRaw★ 1,613 · active · C++

    Library for decoding RAW files from hundreds of digital camera models

  3. Exiv2★ 1,168 · active · C++

    C++ image metadata library including proprietary maker note decoding

  4. dnglab★ 704 · active · Rust

    Converts camera RAW files to DNG with its own reverse-engineered decoders (Rust)

  5. rawspeed★ 461 · active · C++

    Fast camera RAW decoding library used by darktable

  6. MLV-App★ 352 · active · C++

    Processing app for Magic Lantern MLV raw video files

  7. canon_cr3★ 330 · active · Python

    Reverse-engineered description of the Canon CR3 RAW file format

  8. gopro-utils★ 255 · slowing · Go

    Tools to parse GPMF metadata from GoPro cameras

  9. dji-log-parser★ 124 · slowing · Rust

    Rust library that parses records from DJI flight log .txt files

  10. thermal_parser★ 106 · slowing · Python

    Parser for FLIR and DJI infrared camera radiometric image data

Format Description Tools24 all 24 →

  1. ImHex★ 55,590 · active · C++

    Hex editor for reverse engineers with a pattern language for binary formats

  2. fq★ 10,621 · active · Go

    jq-like tool, language and decoders for inspecting binary formats

  3. Kaitai Struct★ 4,720 · active · Shell

    Declarative language to describe binary formats and generate parsers

  4. ImHex-Patterns★ 1,037 · active · ImHex Pattern Language

    Pattern files describing many binary file formats for ImHex

  5. Kaitai Struct Formats★ 795 · active · Kaitai Struct

    Library of .ksy descriptions of hundreds of binary file formats

  6. kaitai_struct_compiler★ 667 · active · Scala

    Compiler that turns Kaitai Struct .ksy format descriptions into parsers for many languages

  7. Deark★ 231 · active · C

    Extracts and decodes hundreds of legacy file, archive and image formats

  8. kbdasm★ 95 · dormant · Assembly

    Assembler/disassembler for Windows keyboard layout DLLs

  9. serum-preset-packager★ 70 · active · Python

    Reverse-engineered Serum 2 synth preset format; converts to/from JSON

  10. bitfiltrator★ 60 · dormant · Python

    General approach for reverse-engineering Xilinx FPGA bitstream formats

Design Tools (PSD, Sketch, Figma, Affinity)21 all 21 →

  1. psd.js★ 2,838 · slowing · CoffeeScript

    Photoshop PSD parser for Node.js and browsers

  2. ag-psd★ 735 · active · TypeScript

    JavaScript library for reading and writing Photoshop PSD files, including layers and effects

  3. acextract★ 435 · dormant · Swift

    Lists and extracts content from Apple Assets.car compiled asset catalogs

  4. psd (Rust)★ 284 · slowing · Rust

    Rust crate for parsing Photoshop PSD files and their layers

  5. fig2sketch★ 172 · active · Python

    Converts Figma .fig files into Sketch documents by parsing the undocumented .fig format

  6. PureRef-format★ 167 · active · Python

    Reverse engineered PureRef .pur file format library

  7. psd (Go)★ 160 · active · Go

    PSD/PSB Photoshop file reader for Go

  8. aftereffects-aep-parser★ 131 · dormant · Go

    Unofficial Go parser for Adobe After Effects .aep project files

  9. libsai★ 130 · active · C++

    Library for reading the encrypted PaintTool SAI .sai file format

  10. pytoshop★ 128 · dormant · Python

    Python library for reading and writing Photoshop PSD and PSB files

Maps & GIS19 all 19 →

  1. GDAL★ 6,120 · active · C++

    Geospatial format library including the reverse-engineered OpenFileGDB and MapInfo drivers

  2. GPXSee★ 1,253 · active · C++

    GPS log and map viewer that reads Garmin IMG, OziExplorer, TrekBuddy and many other formats

  3. GPSBabel★ 553 · active · C++

    Converts between many proprietary GPS formats (Garmin, Magellan, OziExplorer, TomTom)

  4. QMapShack★ 446 · active · C++

    GIS and trip-planning app that renders Garmin IMG vector maps and reads many GPS formats

  5. dump_gdbtable★ 153 · slowing · Python

    Script and reverse-engineered spec for Esri File Geodatabase .gdbtable files

  6. gimgtools★ 91 · dormant · C

    Tools to inspect, split, merge and unlock-free extract Garmin IMG map files

  7. Androzic★ 54 · dormant · Java

    Android navigation app that reads OziExplorer ozf2/ozfx3 raster maps

  8. mkgmap★ 49 · dormant · Java

    Compiler that writes Garmin .img maps from OpenStreetMap data (reverse-engineered format)

  9. qdc-converter★ 18 · dormant · Python

    Converter for Garmin QuickDraw Contours (QDC) files to CSV tables and GRD rasters

  10. python-sllib★ 16 · dormant · Python

    Python library for reading Lowrance SL2, SL3 and SLG sonar logs

EDA & PCB13 all 13 →

  1. OpenBoardView★ 1,907 · active · C

    Viewer for proprietary laptop/phone boardview files (.brd, .bdv, .fz and others)

  2. easyeda2kicad.py★ 1,725 · active · Python

    Converts EasyEDA/LCSC component symbols, footprints and 3D models to KiCad

  3. altium2kicad★ 957 · archived · Perl

    Converts Altium PCB and schematic files to KiCad

  4. easyeda2kicad★ 338 · slowing · TypeScript

    Converts EasyEDA schematics and PCB designs to KiCad

  5. altium.js★ 145 · slowing · JavaScript

    Browser-based parser and renderer for Altium SchDoc schematics

  6. OpenOrCadParser★ 69 · archived · C++

    FOSS parser for Cadence OrCAD Capture binary design files

  7. Altium-Schematic-Parser★ 52 · active · Python

    Converts Altium .SchDoc files to JSON

  8. BoardRipper★ 43 · active · TypeScript

    Web-based viewer for 14 boardview formats (BVR, BRD, BDV, FZ, GenCAD and more)

  9. altium-cli★ 17 · active · Rust

    Rust library and CLI that reads and writes Altium SchDoc, PcbDoc, SchLib, PcbLib and IntLib

  10. ExtractAltiumSTEPModels★ 14 · dormant · Python

    Extracts embedded 3D STEP models from Altium PCB files

E-books9

  1. calibre★ 26,264 · active · Python

    E-book manager with readers for many proprietary formats (MOBI, LIT, LRF, PDB, KFX via plugin)

  2. kepubify★ 899 · active · Go

    Standalone EPUB to Kobo KEPUB converter replicating Kobo's own conversion

  3. libmobi★ 487 · slowing · C

    C library for handling Kindle MOBI/AZW3/KF8 e-book formats

  4. fb2cng★ 84 · active · Go

    FB2 converter to EPUB, KEPUB and Kindle AZW8/KFX formats

  5. mobi★ 78 · slowing · Python

    Python library to unpack Kindle (kindlegen) e-books

  6. boko★ 69 · active · Rust

    Rust converter from EPUB to Kindle KFX, AZW3 and MOBI

  7. KFX Output (mirror)★ 29 · dormant · Python

    Mirror of jhowell's calibre plugin that writes Kindle KFX books

  8. kdegraphics-mobipocket★ 0

    Library for reading Mobipocket e-book files

  9. libe-book★ 0

    Document Liberation library for legacy e-book formats (eReader, Plucker, TealDoc, LRF and more)

Media Codecs & Containers9

  1. FFmpeg★ 65,871 · active · C

    Multimedia framework with many reverse-engineered proprietary codecs and containers

  2. OpenJOC★ 266 · active · Rust

    Independent clean-room E-AC-3 JOC decoder in Rust, with OAMD metadata and reconstruction-basis decoding.

  3. openaptx★ 165 · active · C

    Reverse engineered aptX and aptX HD audio codec

  4. MQA_identifier★ 139 · active · C++

    Tool to identify MQA encoded audio via codec reverse engineering

  5. samsung-ssc-reversed★ 10 · slowing · C

    Partial reverse engineering of the Samsung Seamless Codec (SSC) Bluetooth audio codec

  6. libbluray★ 0

    Library for Blu-ray disc navigation, playlists and menus

  7. libdvdnav★ 0

    Library for DVD-Video menu navigation

  8. libdvdread★ 0

    Library for reading DVD-Video discs and IFO structures

  9. libsmacker★ 0

    Library for decoding RAD Game Tools Smacker video files

Other7

  1. capcut-cli★ 963 · active · JavaScript

    Unofficial CLI to edit CapCut and JianYing project files

  2. pylabview★ 171 · active · Python

    Python reader of LabVIEW RSRC files (VI, CTL, LLB)

  3. pka2xml★ 78 · dormant · C++

    Converts Cisco Packet Tracer .pka/.pkt files to XML

  4. WinCCflexLogViewer★ 31 · dormant · C#

    Viewer and parser for WinCC Flexible and TIA Portal data log files

  5. SBU-Extractor★ 21 · dormant · C#

    Exports data from Samsung KIES backup (SBU) files

  6. KItinerary★ 0

    Extracts travel data from airline, rail and event tickets, including proprietary barcode formats

  7. perception-pnrf★ 0

    Reverse-engineered specification and parser for HBK Perception PNRF measurement files