Giter Site home page Giter Site logo

alhobishi22 / cryptopunks Goto Github PK

View Code? Open in Web Editor NEW

This project forked from itsjerryokolo/cryptopunks

0.0 0.0 0.0 2.49 MB

Subgraph for the Cryptopunks marketplace

Home Page: https://thegraph.com/explorer/subgraph?id=YqMJatbgbqy1GodtbYZv4U9NzyaScCgSF7CAE5ivAM7&view=Overview

TypeScript 94.76% Solidity 5.24%

cryptopunks's Introduction

CryptoPunks

The CryptoPunks are 10,000 uniquely generated characters. No two are exactly alike, and each one of them can be officially owned by a single person on the Ethereum blockchain.

Punks

Subgraph Url

https://thegraph.com/explorer/subgraph?id=YqMJatbgbqy1GodtbYZv4U9NzyaScCgSF7CAE5ivAM7&view=Overview

GraphQL Endpoint

You first need to create an API-KEY. See: https://youtu.be/UrfIpm-Vlgs

https://gateway.thegraph.com/api/[API-KEY]/subgraphs/id/YqMJatbgbqy1GodtbYZv4U9NzyaScCgSF7CAE5ivAM7

Queries

A list of example queries you can make can be found here: Queries.md

Links

  • Protocol: https://cryptopunks.app/
  • Contract addresses:
    • Cryptopunks: 0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB
    • CryptopunksData: 0x16F5A35647D6F03D5D3da7b35409D65ba03aF3B2
    • WrappedPunks: 0xb7F7F6C52F2e2fdb1963Eab30438024864c313F6
    • Opensea: 0x7be8076f4ea4a4ad08075c2508e481d6c946d12b
    • RaribleExchangeV1: 0xcd4ec7b66fbc029c116ba9ffb3e59351c20b5b06
    • ERC721Sale: 0x131aebbfe55bca0c9eaad4ea24d386c5c082dd58

EPNS Notifications

Subscribe to get realtime event notifications from the subgraph.

https://staging.push.org/#/channels

Search for Cryptopunks Marketplace and opt-in.

Run your local Graph Node

ETHEREUM_RPC=mainnet:https://eth-mainnet.alchemyapi.io/v2/${YOUR_API_KEY}

Run the command: docker compose up

Logic for Transfers/Wraps

  • Regular PunkTransfer
    • In handlePunkTransfer:
      • decrement from
      • increment to
      • set owner
      • create Transfer event
  • Mint/Wrap
    • In handlePunkTransfer (to = WrappedPunkAddress):
      • decrement from
      • In handleWrappedPunkTransfer (from = ZeroAddress):
      • increment to
      • set owner
      • create Wrap event
  • Burn/Unwrap
    • In handlePunkTransfer (from = WrappedPunkAddress):
      • increment to
      • set owner
    • In handleWrappedPunkTransfer (to = ZeroAddress):
      • decrement from
      • create Unwrap event
  • Wrapped Transfer
    • In handleWrappedPunkTransfer:
      • decrement from
      • increment to
      • set owner
      • create Transfer event

Build

  • Initialize subgraph (Subgraph Studio):
    graph init --product subgraph-studio
    --from-contract <CONTRACT_ADDRESS> [--network <ETHEREUM_NETWORK>] [--abi <FILE>] <SUBGRAPH_SLUG> [<DIRECTORY>]
    
  • Initialize subgraph (Hosted Service):
    graph init --product hosted-service --from-contract <CONTRACT_ADDRESS> <GITHUB_USER>/<SUBGRAPH_NAME>[<DIRECTORY>]
    
  • Generate code from manifest and schema: graph codegen
  • Build subgraph: graph build

Deploy

  • Authenticate (just once): graph auth --product hosted-service <ACCESS_TOKEN>
  • Deploy to Subgraph Studio: graph deploy --studio <SUBGRAPH_NAME>
  • Deploy to Hosted Service: graph deploy --product hosted-service <GITHUB_USER>/<SUBGRAPH_NAME>

cryptopunks's People

Contributors

itsjerryokolo avatar schmidsi avatar chidubemokeke avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.