💡 Inspiration

azadi (meaning "freedom") is inspired by the "Zan, Zendegi, Azadi" (Woman, Life, Freedom) movement originating in Iran. 🕊️

Today's social media blends fleeting memes with serious global crises, causing empathy fatigue and endless doom scrolling. We wanted to build a dedicated space that breaks this cycle—turning digital awareness into real-world, verifiable impact. Because, as our tagline states, knowledge is power. ✊🏽

⚙️ What it does

azadi is a grassroots organizing app that bridges the gap between learning and doing.

📚 Educate: Scroll a distraction-free feed of a maximum of 10 short-form videos focused on human rights and mutual aid.

🤝 Connect: Dive deeper through per-topic community forums and AI-curated articles.

🗺️ Localize: Users can pull up an interactive, free map to find the location of the place mentioned in the video.

🏅 Act & Verify: Earn immutable Proof-of-Action Badges. When you RSVP to a protest or engage in forums, the app mints an XLS-20 NFT directly to your XRP Ledger wallet as a verifiable credential of your civic participation.

How we built it

💻 Frontend: Vanilla HTML/CSS/JS for a lightning-fast, custom snap-scrolling experience, featuring Leaflet.js and OpenStreetMap for interactive mapping.

🧠 Backend: Node.js and Express handle user data, alongside the Gemini API for dynamically suggesting relevant articles and charities based on the video content.

🔗 Web3 (XRPL): Our server uses the xrpl SDK to connect to the XRPL Testnet. It programmatically mints XLS-20 NFTs and sends zero-cost token offers (NFTokenCreateOffer) directly to users' wallets.

🚧 Challenges we ran into

Seamlessly blending a smooth Web2 interface with complex Web3 infrastructure was our biggest hurdle. 🧩 Managing server-side wallets, formatting exact XRPL transaction blobs for zero-cost NFT offers, and syncing this with async backend tasks (like the Gemini API calls) required incredibly tight state management so the UI never felt sluggish.

🏆 Accomplishments that we're proud of

We built a fully functional MVP, not just a UI mockup. 🎉 Users can actually link their Testnet XRP address, RSVP to an event, and instantly receive a real on-chain asset that they can view on the Testnet explorer. We are also incredibly proud of the frontend polish, specifically the "Learn-to-Earn" progress bar and a hidden Persian rug dark-mode toggle that adds cultural depth to the app.

📖 What we learned

Building azadi exposed us to the XRP Ledger's tokenization capabilities. 🎓 We learned how to leverage the XLS-20 NFT standard and zero-cost token offers to solve a highly human problem: creating a permanent, verifiable resume of civic duty and community organizing.

🚀 What's next for azadi: knowledge is power

🔒 Self-Custodial Logins: Integrating Crossmark or Xaman directly so users can sign transactions natively with their own wallets.

✅ Verified Attendance: Connecting Eventbrite or Action Network APIs via webhooks to mint badges only after a user physically checks in to an event.

🤖 Enhanced AI Fact-Checking: Upgrading our Gemini API integration to include a rigorous, automated fact-checking layer. To ensure the highest standard of accuracy and combat misinformation, we plan to implement a mathematical confidence threshold.

🌐 User-Generated Content (Create): A dynamic 'Create' portal empowering community members to upload and amplify their own educational videos and grassroots stories.

Built With

Share this project:

Updates