AccessNode is a self-hosted node for querying AccessTime blockchain data. Light mode provides user and purchase data; Full mode adds voting and statistics. Built with Ponder for indexing, Drizzle for DB queries, and Hono for API. Includes a UI for visualization.
pnpm create accessnode- Navigate to the project:
cd accessnode-app - Configure .env.local (e.g., set
VITE_ACCESSNODE_TYPE=fullandDATABASE_URL) - Run the node:
- Light mode:
pnpm start:light - Full mode:
pnpm start:full - With UI:
pnpm start:full:ui
- Light mode:
- Access the UI (e.g., http://localhost:4173) or GraphQL API (http://localhost:42069/graphql)
- Environment Variables (in
.env.local):VITE_ACCESSNODE_TYPE: Set to light or full to control data scopeDATABASE_URL: PostgreSQL connection string (e.g.,postgresql://user:password@localhost:5432/accessnode)
- node.config.ts: Generated by create-accessnode, specifies chains and contract addresses
- Light Mode: Indexes subscriptions (
accessTimeUser) and purchases (purchase) - Full Mode: Adds voting (
accessVote,vote) and statistics (statistic) - UI: Visualizes data, toggled by
VITE_ACCESSNODE_TYPE - GraphQL API: Query data via Ponder’s Hono-based API
- Drizzle: Read-only DB access for custom queries