back to posts

From Theory to Practice: The JAX Ecosystem and Product-First Development

How I built JAX as two complementary projects: JAX Availability (ETHDenver-winning protocol) and JAX Buckets (practical encrypted storage), demonstrating product-first development over protocol-first theorizing.

al millerOctober 13, 2025
From Theory to Practice: The JAX Ecosystem and Product-First Development

Learning from Protocol Labs' Mistakes

Six months ago at ETHDenver, my team and I built JAX - a trust-based system that won an EigenLayer bounty by proving availability could be the primary incentive in decentralized storage. The core insight was sound: reward peers for behaviors users actually value rather than complex proofs of replication or elaborate tokenomics. But it was a proof of concept, not something people could actually use.

The pattern was predictable: devs building unusable protocols without any product direction. Then wondering why adoption never came. I knew there had to be a better way - what if we flipped the script entirely?

The Two-Layer Strategy

That's when the JAX ecosystem was born - not as a single project, but as two complementary approaches that validate each other: JAX Availability (the protocol layer) and JAX Buckets (the product layer).

JAX Availability tackles the fundamental problem with existing decentralized storage: Filecoin and Arweave optimize for proving data is stored rather than proving it can be retrieved. They reward replication, not availability. That's backwards - users don't care if their file exists in a sealed sector somewhere; they care if they can get it when they need it.

JAX Buckets is the "product first" approach - an end-to-end encrypted P2P storage system that people can actually use today. No staking requirements. No complex tokenomics. Just encrypted files that sync between devices using content-addressing and cryptographic verification.

This isn't two separate projects - it's a strategic separation of concerns. JAX Buckets validates real user demand for better storage solutions while serving as a testbed for the availability concepts that power JAX Availability. Eventually, they'll work together: encrypted, local-first storage with economic incentives for actually serving files.

ETHDenver: Proving the Protocol Layer

At ETHDenver 2025, we put JAX Availability to the test. In three days, we built a working system with smart contracts, EigenLayer AVS operators, and file provider nodes. The core innovation was using the EigenTrust algorithm for distributed reputation - peers build trust scores based on actually serving files, not just storing them.

The technical stack was solid: Blake3 merkleized proofs for efficient chunk verification, Iroh's P2P networking for peer discovery, and EigenLayer's restaking for economic security. But most importantly, it worked - we won the EigenLayer Third Prize for "Best EigenLayer AVS."

Here's what we proved: you can build consensus around availability rather than storage. Instead of complex zero-knowledge proofs about sealed data, use simple challenge-response verification. Peer A asks Peer B for a merkleized proof of a random 1KB chunk. If B responds within time T, B gets credit. If not, B's reputation suffers. Do this continuously across the network and you get global trust scores that actually reflect who's making data available.

But winning the bounty wasn't the real victory - it was proving that availability-first thinking could work in practice, not just theory. The question became: how do we make this useful for actual people?

JAX Buckets: Building What I Want

Enter JAX Buckets - my answer to the "Protocol Labs problem." Instead of building an elaborate protocol first and hoping someone uses it, build something useful first and let the protocols emerge from real needs.

JAX Buckets is end-to-end encrypted storage with peer-to-peer synchronization. Think "Dropbox but decentralized and actually private." Every file gets encrypted with ChaCha20-Poly1305 before leaving your device. Content addressing via BLAKE3 hashes ensures integrity and deduplication. ECDH + AES Key Wrap handles secure access control. And it all runs local-first - you can work offline, sync when connected.

The architecture is deliberately modular: a three-crate design with common crypto, a service layer, and multiple interfaces (Web UI, CLI, REST API). It's built on Iroh's P2P networking stack - the same foundation we used for JAX Availability. That's not a coincidence.

Here's the key insight: JAX Buckets serves as the perfect testbed for JAX Availability concepts. Every time someone syncs a bucket across devices, we're learning about real-world availability patterns. When does P2P sync fail? What availability guarantees do users actually need? How do we balance immediate utility with long-term incentive alignment?

This is product-driven protocol development in action. Instead of theorizing about availability markets, we're building them from observed user behavior.

Why This Approach Works

Traditional decentralized storage has it backwards. Filecoin makes you prove you're storing data with complex cryptographic mechanisms. Arweave assumes storage costs will keep declining forever. Both optimize for replication rather than retrievability.

JAX flips this. No staking requirements. No capital barriers. No mining to secure network state. Just: can you serve files when people need them? If yes, you earn rewards. If no, you don't. The simplicity is the point.

But the real differentiator is stakeless participation. Your phone can be a storage provider. Your laptop's extra drive space can earn rewards. Take storage "out of the data center and onto your mobile device" - something impossible with current solutions that require specialized hardware and significant capital commitments.

What's Next

The endgame is obvious: merge the layers. JAX Buckets gives you encrypted, local-first storage you can use today. JAX Availability provides the economic incentives and trust mechanisms for sustainable, decentralized networks. Together, they create something neither existing solutions nor theoretical protocols achieve alone.

Imagine: you drag a file into your JAX Buckets folder. It gets encrypted with your keys and synced across your devices via P2P. But now there's also a bounty pool for that content. Storage providers see the incentive and start offering the file. The more reliable they are at serving it, the higher their trust scores, the more rewards they earn.

You get the privacy and control of self-hosted storage with the reliability and availability of a global network. Storage providers get rewarded for actual behavior users value rather than artificial scarcity or complex tokenomics. The incentives finally align.

Ready to see JAX Buckets in action? Check out our live demo and explore how product-first development is changing the landscape of decentralized storage: JAX Buckets Demo.