# AR.IO Foundation Open Grant Proposal **Project Name:** Rewind: A Visual ArNS History Explorer **Team/Individual Name:** RaidGuild **Contact Information:** Emil: mehrdad999mms@gmail.com Telegram: https://t.me/mehrdad_mms **ARIO Payment Address:** hJLX69jaTj5cRjOfQH9ahy1lWc2VdyZcl7pIpFriSVI **Total Funding Amount Requested:** $25,000 **Focus Area(s):** - Developer Experience - Integrations - Search and Discovery - Gateway Infrastructure and specialized implementations ## Project Description ### Summary Rewind is an open-source visual explorer that unlocks the full historical depth of the Arweave Name System (ArNS), transforming immutable data into a human-readable timeline. While ArNS records every ownership transfer, content update, and metadata change, no intuitive tool currently exists to explore this rich history — leaving critical transparency, auditability, and recovery potential untapped. Rewind addresses this gap by making domain provenance not only accessible but actionable, empowering users to trace, verify, and restore any past state of a name with confidence. Designed with developers, researchers, and everyday users in mind, Rewind integrates directly with the ArNS API and AO message architecture to reconstruct historical states with technical precision. Its modular interface supports embeddable components, programmatic access, and integration into AR.IO gateways, making it a core utility for the evolving permaweb. RaidGuild brings deep experience in protocol-level infrastructure, smart contract systems, and historical data visualization, having delivered high-performance explorers, cross-chain tooling, and audit-grade interfaces for mission-critical Web3 ecosystems making us a prime candidate for delivering this project. ### Mission / Vision Alignment The AR.IO Network exists to build a decentralized, permanent, and user-empowered web. But permanence without visibility leaves power unused. While ArNS immutably logs every change to names, records, and ownership, users today have no way to see that history. Developers cannot audit it. Researchers cannot analyze it. Users cannot verify or restore what came before. The data exists, but the story is missing. Rewind solves this by unlocking the full historical potential of ArNS. - Why: To turn Arweave’s permanence into transparency, trust, and accountability - What: A visual explorer that reconstructs and displays every past state of any ArNS name including ownership, content, metadata, and lifecycle changes - How: By integrating directly with the ArNS API and AO message architecture, Rewind transforms raw historical data into an interactive timeline that can be navigated, compared, verified, and embedded This directly supports AR.IO’s mission. Rewind transforms immutable history into a usable public good. It strengthens transparency, improves developer experience, and makes historical resolution part of everyday tooling across the AR.IO ecosystem. ### Impact Positive Impact: - Enhances transparency by exposing full historical records of ArNS names - Boosts developer experience with embeddable components and clean APIs - Increases trust and usability for domain owners and end users - Enables auditing and recovery for researchers, security teams, and power users - Drives ecosystem adoption through modular integration with AR.IO gateways - Showcases permanence as a live, verifiable, and interactive experience Target Audience: - Developers building applications on ArNS or using AR.IO gateways - Auditors and researchers needing verifiable state histories - Power users and domain owners wanting visibility, control, and recovery tools - Gateway operators seeking embeddable, verifiable UX enhancements Rewind will engage these groups through: - A live permaweb deployment via ArNS with a dedicated domain - Embeddable timeline and history components for integration into other tools - Open APIs for developers to integrate historical data access - Clear documentation, example integrations, and public launch demos - Outreach to gateway operators and tooling projects for native adoption ### Innovation Rewind brings true innovation to the AR.IO ecosystem by combining AO-level state reconstruction with a modular, embeddable architecture that transforms ArNS history into a set of reusable tools. Beyond just visualizing changes, Rewind enables side-by-side state comparisons, timestamp-based lookups, and a novel snapshot pinning feature that lets users save and share specific points in a domain's lifecycle. Built for integration, not isolation, every part of Rewind from its diff engine to its timeline UI is designed to plug into gateways, explorers, or developer tools, making ArNS history not just visible but usable infrastructure. ## Team Experience & Background #### EC - Backend Full-stack engineer with over 7 years of experience with backends and infra, and over 5 years as a full-time independent contractor. Past work includes acting as a full-stack engineer for dozens of protocols--such as Arweave, Superfluid, and Espresso Systems--and Head of Product at Rigor Inc. Specializes in designing for the whole breadth of a project's goals and technical stack, while implementing with a detail-oriented approach for all pushed code. Github: https://github.com/ECWireless #### Vika - Design Vika is an interdisciplinary researcher and UI/UX designer. She specializes in user-centric design with a focus on intuitive interfaces and brand consistency. As a founder, she has received European funding for two projects bridging Web2 and Web3: a decentralized identity management solution and a grants distribution platform. X: https://x.com/vicosvv?s=21 #### Shawky - Frontend Full-stack developer specializing in React and TypeScript, with 3+ years of experience in web development and prior expertise in embedded systems. Actively involved in the Web3 ecosystem, contributing to open-source projects such as: Coordinape, Smart Invoice and Dungeon Master. Github: https://github.com/sshmm #### Mehrdad - PM Founder and web3 technical product manager, leading Pattern, a lean decentralized dev shop focused on AIxCrypto. RaidGuild Member. Ex Governance at Pocket Network. Former CTO at CBI centralized crypto exchange, with deep experience translating complex technical systems into clear business value — bridging teams, code, and communities to ship fast and with purpose. Linkedin: https://www.linkedin.com/in/mehrdad-mms/ ## Timeline & Milestones <!-- Break down your project into clear milestones with deliverables and estimated completion dates --> <!-- We encourage you to include docs and diagrams to help us understand your archicture and proposed solution --> <!-- For Medium and Large grants, payment will be made upon completion of each milestone --> <!-- Please copy and paste the sections below and complete for each milestone --> ### Milestone 1 -- Setup & UX Discovery #### Deliverables - Short UX audit of comparable tools to identify best practices - Mid-fidelity wireframes for the timeline, diff viewer and state viewer components in Figma - Conduct 3-5 user interviews and refine wireframes based on usability feedback - Minimal branding package including logo, colours, and visual identity elements for UI consistency - Project baseline structure setup, CI/CD and repository initialization - Core ArNS API integration for contract state, interactions, and records #### Funding Amount $7,500 #### Estimated Completion Timeline Weeks 1–3 ### Milestone 2 -- Timeline, State Viewer, and Diff Engine #### Deliverables - Interactive timeline with scroll, zoom, and event markers - Historical state reconstruction from AO messages - State diff engine for comparing two timestamps - API layer for timestamp-based state access and diff queries - IndexedDB caching for queried states and AO message history - Integration of /contract/{txId}, /interactions, /state/{path} - Snapshot view showing ownership, content pointer, metadata, and ANT status - Unit tests for AO processing and state comparison modules #### Funding Amount $6,500 #### Estimated Completion Timeline Weeks 4–5 ### Milestone 3 -- Embeddable Components and API Layer #### Deliverables - Standalone embeddable timeline widget (React module) - Snapshot pinning feature with shareable permalink support - Side-by-side comparison view for any two states - Public documentation for API usage and third-party integration - Public browser API for developers - Dev playground page for ecosystem frontend devs to test and build with - Client-side permaweb API exposed for external use - Initial developer outreach: share docs and repo with ecosystem teams #### Funding Amount $6,500 #### Estimated Completion Timeline Weeks 6–8 ### Milestone 4 -- Testing, Launch, and Ecosystem Integration #### Deliverables - End-to-end test suite for user flows and timeline rendering - Performance benchmarks and progressive loading improvements - Accessibility compliance review and fixes - Final deployment to Arweave with ArNS registration - Launch-ready website with docs, walkthrough, and demo - Final project report and post-launch feedback form - Open GitHub repository with contribution guidelines and issue board #### Funding Amount $4,500 #### Estimated Completion Timeline Weeks 9–10 ## Additional Information ### Acceptance Criteria ### As a user, I can interact with and explore ArNS history - Search for any ArNS name and view its full historical record - Filter events by type (e.g. ownership transfer, content update) - Select a specific point in time and view the corresponding ArNS state - Restore and view any previous state (read-only) - Copy metadata or state details for external use - Verify authenticity of each event using content hashes or transaction IDs - Use the explorer without logging in or connecting a wallet ### As a user, I see a visual, informative interface - A timeline view showing all changes related to an ArNS name, including ownership, content, metadata, and ANT events - A visual representation of current and historical states for any ArNS name - Timestamps and details for each change in chronological order - The complete lifecycle of an ArNS name, including registration, renewals, transfers, and expirations, with metadata - A clean, intuitive web interface compatible with all major browsers #### As a developer, I can: - Access all historical ArNS data via a documented API. - Embed the visual timeline module into external interfaces. - Contribute to or fork the open-source codebase. - Reference the Rewind tool as a canonical view of ArNS history. - Use Arweave transaction IDs for external verification or integrations. - Extend Rewind’s functionality via plug-ins or export modules. #### As an admin/maintainer, I can: - Deploy the tool to the permaweb with an ArNS name. - Monitor performance and usage metrics. - Update branding and theming for AR.IO or partner-specific deployments. #### System will: - Work permissionlessly across all AR.IO gateways. - Operate fully client-side with Arweave as the data layer. - Index all relevant ArNS events, including ANT and AO interactions. - Display and document full lifecycle states of ArNS names. - Be open-source and modular for reuse across the ecosystem. - Include test coverage and developer documentation. - Support future ArNS and ANT upgrades with minimal changes. ### Technical Approach #### TL;DR Rewind reconstructs ArNS name history using the [ArNS API](https://api.arns.app/api-docs) and AO message logs. It sequences interactions, computes state diffs, verifies transitions, and renders them in a client-side React app with D3 timelines—no backend or intermediaries needed. #### Architecture Overview Rewind will be a fully decentralized web app with a modular architecture consisting of: - Data Layer: Retrieves, indexes, and caches ArNS/AO data using ArNS API and local caching. - Processing Layer: Transforms raw data into structured, time-indexed states using AO messages. - Presentation Layer: Interactive UI for timeline navigation, state visualization, and comparisons. - Integration Layer: Provides APIs and embeddable components for third-party applications. - Performance Optimizations: Applied across all layers to ensure fast, efficient interaction. #### Data Layer – ArNS & AO Data Retrieval Rewind uses the ArNS API to access ANT and AO contract data efficiently and reliably: - Current State: /contract/{contractTxId} for real-time state snapshots. - Interaction History: /contract/{contractTxId}/interactions to reconstruct timelines. - Nested State Access: /contract/{contractTxId}/state/{nestedPath} to retrieve targeted state segments. - Record Data: /records/{name} provides ANT process ID, lease information, and undernames. - Wallet Interactions: /interactions/{walletAddress} exposes historical user actions. - API Reference: Full documentation available at api.arns.app/api-docs. #### Processing Layer – AO Message Handling Raw AO messages are processed to reconstruct deterministic, auditable contract states: - Sequencing: Orders AO messages for accurate chronological application. - State Transition Modeling: Detects key lifecycle events like ownership transfers, pointer updates, and lease changes. - Differential Analysis: Highlights differences between any two historical states. - Verification: Uses message-based proofs to validate state transitions. #### Presentation Layer – Frontend Implementation The UI stack is designed for performance, clarity, and interactivity: - Stack: Built with React and TypeScript. - Timeline UI: Implements zoomable, interactive visualizations using D3.js and custom components. - State Visualization: Displays key ANT elements such as ownership, content pointers, metadata, and undernames. - Comparative View: Allows users to compare historical states side-by-side. - Responsive Design: Mobile-first and accessibility-compliant for broad usability. #### Integration Layer – APIs & Embeds The client-side system exposes embeddable components and APIs for external applications: - ArNS API Client: Runs fully in-browser with retry logic and optimized fetch patterns. - GraphQL Access: Used client-side to pull Arweave transaction metadata not covered by ArNS API. - State Reconstruction: Includes message validation, ordering, transition application, conflict resolution, and checkpointing. - Local Caching: Uses IndexedDB to cache commonly accessed states, diffs, and history. #### Performance Optimizations (Cross-Layer) A series of optimization strategies ensure smooth user experience: - Progressive Loading: Loads essential data first to minimize time-to-interaction. - Data Aggregation: Aggregates high-frequency timelines into daily or weekly summaries. - Batch Fetching: Reduces redundant API calls to Arweave and ArNS, improving speed. - Lazy Rendering: Renders only visible UI elements to keep interface responsive. ## Checklist - [X] I have read and understand the AR.IO Foundation Grant Framework - [X] I understand this is an application and funding is not guaranteed - [X] I am prepared to sign a grant agreement if my proposal is accepted - [X] I will provide regular updates and milestone reports as required - [X] I understand payment will be made in ARIO based on the exchange rate at time of payment - [X] I confirm that neither our organization nor any of our employees, contractors, or executive leadership is located in, or a resident of, an OFAC-sanctioned country