[ZCG Proposal] Read-Only Zcash Activity Scanner & Semantics Layer for Developers/Infrastructure

Hello everyone,

I am submitting a proposal to Zcash Community Grants (ZCG) that aims to develop a reusable, read-only Zcash Activity Scanner and Semantics Layer for developers and infrastructure projects.

## Project Overview

This project proposes a **reusable, read-only Zcash Activity Scanner and Semantics Layer** that provides reliable, standardized activity summaries for Transparent, Sapling, and Orchard pools using viewing keys only. It is designed as a **common infrastructure component** for developers, service providers, custodial platforms, audit tools, and analytics systems.

The scanner is not a wallet, does not support transaction creation or private key management, and focuses exclusively on **observation, semantic interpretation, and data export**.

## Motivation

Many applications and services—including merchant services, custodial systems, reconciliation workflows, and analytics deployments—require accurate access to account activity data (e.g., balances, transaction details, confirmation status, shielding/deshielding events, memo decoding). However:

- There is currently **no standardized, reusable, open-source component** dedicated to this purpose.

- Projects often re-implement complex scanning logic or embed full wallet code, increasing security surface and engineering cost.

- Different implementations produce inconsistent interpretations of activity semantics

This leads to duplicated effort, increased risk, and inconsistent user experience across the ecosystem.

## High-Level Technical Approach

The solution consists of:

- A **Rust core library** exposing a read-only scanning API for Transparent, Sapling, and Orchard pools.

- A **semantics layer** that turns raw scan events into stable activity summaries, including direction, net value, confirmation status, and more.

- A **standalone CLI tool** for operational scanning and data export in standardized formats (CSV/JSON).

- Conformance testing and documentation to ensure correctness and reproducibility across reorgs and edge cases.

Dependencies are limited to existing Rust libraries (e.g., librustzcash) and a running local data source such as Zebra RPC or lightwalletd gRPC.

## Deliverables & Milestones

This proposal is structured around clearly defined milestones, each with concrete deliverables, acceptance criteria, and testable success conditions. These range from basic transparent scanning infrastructure and incremental sync to full multi-pool support, semantics interpretation, documentation, and stabilization.

## Proposal Details

Full proposal details, including milestones, budget breakdown, and acceptance criteria, are available here:

:backhand_index_pointing_right: Zcash Activity Scanner (Read-Only) + Semantics Layer for Viewing Keys · Issue #175 · ZcashCommunityGrants/zcashcommunitygrants · GitHub

## Request for Feedback

I would welcome community feedback on:

Thank you for your time and input!

1 Like

Thank you for submitting your proposal. Following a thorough review by the ZCG and a period for community feedback on the forum, the committee has decided not to move forward with this proposal.

We sincerely appreciate the time and effort you invested in your application and encourage you to stay involved and continue contributing to the Zcash community.