Menu

Home

Lucas Guimarães

Welcome to the official Wiki for the G3 File Container (G3FC) project. Here you will find everything you need to use, understand, and implement the G3FC format.


Forged from Necessity: The G3FC Origin Story

It all started when G3Pix took on the mission of developing a sophisticated health data system. We needed a single, robust file format that could securely store everything about a patient: personal information, medical images, text reports, audio notes, and even videos.

The requirements were demanding. The archive had to be highly compact, resilient to data corruption, and securely encryptable. Crucially, it had to operate flawlessly across Mac, Windows, and Linux. Another vital need was a way to find files instantly without scanning multi-gigabyte archives. This led to the design of a dedicated footer for rapid indexing, a feature that sets it apart from older formats.

When no existing format met all these needs, we built one. That's how G3FC was born—a format engineered for resilience, security, and efficiency from day one.


Why G3FC? A Feature Comparison

G3FC was built to incorporate modern features directly into the format specification, offering advantages over legacy container formats.

Feature G3FC ZIP TAR (tar.gz)
Compression Modern (Zstd) Legacy (Deflate) Varies (Gzip)
Security Strong (AES-256-GCM) AES-256 (often weaker legacy) None (requires external tools)
Data Resilience Built-in (Forward Error Correction) None None
Archive Splitting Built-in & Advanced Basic (Zipx) Manual (via split command)
Fast Indexing Yes (Dedicated Footer) Yes (Central Directory) No (Sequential Read Required)
Granular Compression Yes (per-file or whole archive) Yes (per-file) No (compresses the whole archive)

Available Implementations

G3FC provides reference implementations in multiple languages, each with its own strengths:

  • Rust: The fastest and most memory-efficient implementation, ideal for high-performance servers, command-line tools, and systems programming where speed and safety are critical.
  • Go: The best choice for cross-platform portability. The Go implementation provides pre-compiled binaries for a wide range of operating systems and architectures, making distribution incredibly easy.
  • C#: Perfect for integration into the .NET ecosystem. Its primary strength lies in its easy integration with Windows systems and the rapid development of Graphical User Interfaces (GUIs) using Visual Studio.
  • Python: A flexible and easy-to-use implementation, perfect for scripting, data science workflows, and rapid application development where developer productivity is key.

Open Source License

This project is, and will always be, Open Source. All reference implementations are distributed under the terms of the GNU General Public License v2.0.

This license grants you the freedom to use, study, share, and modify the software. You can find the full license text here.



Auth0 Logo