Overview for Builders

Green Goods is an open-source, monorepo platform for verifiable regenerative impact. Built for developers who want to integrate, extend, or contribute.


Monorepo Structure

green-goods/
β”œβ”€β”€ packages/
β”‚   β”œβ”€β”€ client/          # React PWA (gardener app)
β”‚   β”œβ”€β”€ admin/           # React dashboard (operator app)
β”‚   β”œβ”€β”€ indexer/         # Envio GraphQL
β”‚   └── contracts/       # Solidity + Foundry
β”œβ”€β”€ docs/                # GitBook documentation
β”œβ”€β”€ .env                 # Shared environment (all packages)
└── package.json         # Workspace scripts

Managed with: Bun workspaces Orchestrated with: PM2 (for dev services)

Detailed Architecture β†’


Tech Stack

Frontend

Client (PWA):

  • React 18 + TypeScript + Vite

  • TanStack Query + Zustand

  • Tailwind CSS v4 + Radix UI

  • Offline-first (IndexedDB + Service Worker)

Admin (Dashboard):

  • React 18 + TypeScript + Vite

  • Urql (GraphQL) + XState + Zustand

  • Tailwind CSS v4 + Radix UI

Backend

Indexer:

  • Envio HyperIndex

  • PostgreSQL (Docker)

  • GraphQL API

  • ReScript event handlers

Blockchain

Contracts:

  • Solidity 0.8.20

  • Foundry (Forge, Cast, Anvil)

  • OpenZeppelin (UUPS upgrades)

  • EAS integration

Networks:

  • Arbitrum One (42161)

  • Celo (42220)

  • Base Sepolia (84532)

Infrastructure

Storage: IPFS via Pinata Auth: Pimlico smart accounts + Reown AppKit Attestations: EAS (Ethereum Attestation Service)


Key Repositories

GitHub: https://github.com/greenpill-dev-guild/green-goods

License: MIT (open source)

Branches:

  • main: Production

  • develop: Active development

  • Feature branches: feat/feature-name


Development Philosophy

Offline-First

Client designed for remote areas without reliable connectivity:

  • Local-first storage (IndexedDB)

  • Background sync

  • Job queue system

  • Resilient to network failures

Mobile-First

Gardener app optimized for smartphones:

  • Touch-friendly UI

  • Camera integration

  • Minimal typing

  • Fast performance

Open & Composable

All data publicly accessible:

  • Open source code

  • Public GraphQL API

  • On-chain attestations

  • Composable with other protocols

Quality Standards

  • TypeScript strict mode

  • 70%+ test coverage (critical paths >80%)

  • Biome formatting + 0xlint

  • Conventional commits

  • Pre-commit hooks


Packages:

Getting Started:

Development:


Community

Last updated