Skip to content

hypercerts-org/easy-retro-pgf-hypercerts

 
 

Repository files navigation

EasyRetroPGF

View demo | Telegram Group

Documentation

Supported Networks

All networks EAS is deployed to are supported

Mainnets

  • Ethereum
  • Optimism
  • Base
  • Arbitrum One
  • Linea

Testnets

  • Sepolia
  • Optimism Goerli
  • Base Goerli
  • Arbitrum Goerli
  • Polygon Mumbai
  • Linea Goerli

Development

To run locally follow these instructions:

git clone https://github.com/gitcoinco/easy-retro-pgf

bun install # (or pnpm / yarn / npm)

cp .env.example .env # and update .env variables

bun run dev

bun run db:push # create database tables

open localhost:3000

Technical details

  • EAS - Projects, lists, profiles, etc are all stored on-chain in Ethereum Attestation Service
  • Batched requests with tRPC - Multiple requests are batched into one (for example when the frontend requests the metadata for 24 projects they are batched into 1 request)
  • Server-side caching of requests to EAS and IPFS - Immediately returns the data without calling EAS and locally serving ipfs cids.
  • SQL database for ballots - Votes are stored privately in a Postgres database
    • Could votes be stored on EAS as well? It would need to happen server-side from an admin signer to keep voters anonymous.

About

Run your own retroactive grants powered by hypercerts

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 93.5%
  • JavaScript 6.4%
  • CSS 0.1%