Lore | Next-Generation Open Source Version Control - Lore
Lore: next-generation open source version control
Maintained by Epic Games, Lore is designed for unprecedented scalability of both data and teams. It’s optimized for projects—including games and entertainment—that combine code with large binary assets, and caters for the needs of developers and artists alike.
Download Lore<br>GitHub repo
Get started with Lore
Find us on GitHub
Access and contribute to Lore on the Epic Games GitHub.
Read the docs
Delve into Lore’s ethos and architecture.
Join the conversation
Chat with us and our community on Discord.
Overview
Easy setup, on-demand scalability<br>Get started in local mode in minutes. Then, scale up as far and as fast as you need.
Fast and efficient processes<br>Scale without slowdowns, thanks to shared, reusable data and as-needed downloads.
Free branching<br>Quickly and easily create, manage, and sync branches to freely experiment, iterate, and release.
History you can trust<br>Confidently track and manage revisions with Lore's verifiable tamper-evident source of truth.
Intuitive interface<br>Enjoy complete one-to-one access to the full Lore functionality via the CLI.
Full-surface API<br>Extend, customize, and integrate Lore via C/C++, C#, Rust, Go, Python, or JavaScript.
Lore’s architecture
Lore is a centralized, content-addressed version control system that represents repository state as Merkle trees and an immutable revision chain, optimized for binary-first storage, deduplication, and sparse/on-demand data hydration at scale.
Read the docsView system design doc
Content-addressed storage<br>Repository data is stored and referenced by content hash in a Merkle tree, enabling fast comparisons, integrity checks, and reuse across history and branches.
Immutable revision chain<br>A revision's hash signature is derived from its revision state, including parent revision hashes and contained data hashes, forming an immutable chain with cryptographic integrity.
Chunked storage for large files<br>Files are stored as reusable chunks with indexed lookup, reducing duplication and enabling efficient updates and transfer for large binary assets.
On-demand hydration and sparse workspaces<br>Workspaces can stay lightweight by fetching file data only when needed, so you don't have to download everything up front.
Centralized service with caching<br>A service-backed architecture uses caching in front of durable storage to scale throughput for large teams and repositories.
Lightweight branches and fast switching<br>Branches are lightweight mutable references, so creating and switching branches is low-overhead without duplication of underlying data.
Lore’s repositories
Explore the full collection of Lore repositories on the Epic Games GitHub.
_.cosmos-card__thumbnail-overlay)]:bdr_var(--cosmos-card-radius) [&:has(>_.cosmos-card__thumbnail-overlay)]:[&_.cosmos-card__thumbnail-overlay]:bdr_var(--cosmos-card-radius) [&_img,_&_video]:h_100% [&_img,_&_video]:inset_0 [&_img,_&_video]:obj-f_cover [&_img,_&_video]:obj-p_center [&_img,_&_video]:pos_absolute [&_img,_&_video]:trs_transform_token(animations.eds.duration.200)_token(animations.eds.easing.easeInOutQuad) [&_img,_&_video]:w_100% [&_img,_&_video]:z_0 h_auto min-h_fit-content w_100%"><br>_p:first-child:last-child]:d_contents [&&_em]:font-style_italic" style="--color:#ffffff">Lore Library, Server & CLI
View on GitHub
_.cosmos-card__thumbnail-overlay)]:bdr_var(--cosmos-card-radius) [&:has(>_.cosmos-card__thumbnail-overlay)]:[&_.cosmos-card__thumbnail-overlay]:bdr_var(--cosmos-card-radius) [&_img,_&_video]:h_100% [&_img,_&_video]:inset_0 [&_img,_&_video]:obj-f_cover [&_img,_&_video]:obj-p_center [&_img,_&_video]:pos_absolute [&_img,_&_video]:trs_transform_token(animations.eds.duration.200)_token(animations.eds.easing.easeInOutQuad) [&_img,_&_video]:w_100% [&_img,_&_video]:z_0 h_auto min-h_fit-content w_100%"><br>_p:first-child:last-child]:d_contents [&&_em]:font-style_italic" style="--color:#ffffff">Javascript SDK
View on GitHub
_.cosmos-card__thumbnail-overlay)]:bdr_var(--cosmos-card-radius) [&:has(>_.cosmos-card__thumbnail-overlay)]:[&_.cosmos-card__thumbnail-overlay]:bdr_var(--cosmos-card-radius) [&_img,_&_video]:h_100% [&_img,_&_video]:inset_0 [&_img,_&_video]:obj-f_cover [&_img,_&_video]:obj-p_center [&_img,_&_video]:pos_absolute [&_img,_&_video]:trs_transform_token(animations.eds.duration.200)_token(animations.eds.easing.easeInOutQuad) [&_img,_&_video]:w_100% [&_img,_&_video]:z_0 h_auto min-h_fit-content w_100%"><br>_p:first-child:last-child]:d_contents [&&_em]:font-style_italic" style="--color:#ffffff">Python SDK
View on GitHub
_.cosmos-card__thumbnail-overlay)]:bdr_var(--cosmos-card-radius) [&:has(>_.cosmos-card__thumbnail-overlay)]:[&_.cosmos-card__thumbnail-overlay]:bdr_var(--cosmos-card-radius) [&_img,_&_video]:h_100% [&_img,_&_video]:inset_0 [&_img,_&_video]:obj-f_cover [&_img,_&_video]:obj-p_center [&_img,_&_video]:pos_absolute...