Open-source, multi-layer build cache infrastructure for modern build tools.
Fabrik is a technology to build transparent, high-performance caching infrastructure for any build tool with remote caching capabilities. It provides a three-tier caching hierarchy (hot, warm, cold) that transparently accelerates builds across local development, CI/CD, and team environments.
Think of it as: The narrow waist between build tools and cache infrastructure—a minimal, universal interface that any build tool can plug into, and any storage backend can support.
Using Mise (recommended):
mise use -g ubi:tuist/fabrikOr download from GitHub Releases
Bash:
echo 'eval "$(fabrik activate bash)"' >> ~/.bashrc
source ~/.bashrcZsh:
echo 'eval "$(fabrik activate zsh)"' >> ~/.zshrc
source ~/.zshrcFish:
echo 'fabrik activate fish | source' >> ~/.config/fish/config.fish
source ~/.config/fish/config.fishcd ~/your-project
fabrik initThat's it! Your builds will now use the cache automatically.
Full documentation is available at: https://fabrik.tuist.dev
Or read locally:
- 🔥 Transparent Caching: Three-tier hierarchy with automatic fallback
- 🔧 Universal Compatibility: Supports Gradle, Bazel, Nx, TurboRepo, sccache, BuildKit, and more
- ⚡ High Performance: Built in Rust with RocksDB for ultra-low latency (<10ms p99)
- 🎯 Zero Configuration: Automatically detects CI environments
- 🌍 Multi-Region: Deploy dedicated instances in your preferred regions
- 🔒 Secure: JWT-based authentication
- 💎 Open Source: MPL-2.0 licensed
Fabrik implements a three-tier caching strategy:
- 🔥 Hot Cache - Local/CI, ultra-fast (<5ms)
- 🌡️ Warm Cache - Shared team cache (~20ms)
- ❄️ Cold Cache - S3-backed permanent storage (~100ms)
Cache misses automatically fall back to the next layer. Writes propagate through all layers.
See CONTRIBUTING.md for development setup and guidelines.
MPL-2.0 - See LICENSE.md for details.
- Tuist - Managed Fabrik infrastructure as a service