Project Story
Inspiration
Renting a home often requires tenants to reveal sensitive personal information—income, employment details, background-check results, and other documents—just to prove they are qualified. We wanted to challenge the assumption that proving eligibility should require revealing the underlying data.
That led us to build ZkRent, a privacy-first rental platform powered by Midnight Network. Instead of sending sensitive documents to landlords, tenants can prove that they satisfy specific rental requirements without exposing the private information itself.
How We Built It
ZkRent combines a familiar rental experience with privacy-preserving Zero-Knowledge technology.
A tenant can discover properties, inspect their requirements, and submit an application. The eligibility requirements are converted into conditions that can be verified using Zero-Knowledge proofs. The proof is generated on the user's side, allowing the landlord to verify the result without learning the tenant's underlying private data.
We built the application around Midnight's Compact smart-contract platform and TypeScript client tooling, integrating the privacy layer directly into the rental application flow. The rest of the application provides the property discovery and landlord-management experience needed to make the concept practical rather than just a standalone ZK demonstration.
What We Learned
The biggest lesson was that building with Zero-Knowledge technology is not simply about adding a proof to an existing application. The entire data flow has to be designed around what information actually needs to be revealed.
We learned how to work with Compact, Midnight's local development environment, wallet infrastructure, contract deployment, and client-side proof generation. We also gained a much deeper understanding of the trade-offs between blockchain state, private state, application databases, and what should remain on the user's device.
Challenges
One of our biggest challenges was getting the Midnight development stack working reliably end-to-end. Wallet initialization, DUST registration, local network configuration, synchronization, and contract deployment required significant debugging.
We also had to rethink the architecture several times to make sure that sensitive tenant information was never unnecessarily exposed while still keeping the application usable.
Ultimately, ZkRent became more than a rental marketplace prototype—it became an exploration of how Zero-Knowledge proofs can turn sensitive personal information into verifiable claims instead of data that users have to surrender.
Built With
- compact
- nextjs
- postgresql
- prisma
- stripe
Log in or sign up for Devpost to join the conversation.