├── .env ├── .eslintignore ├── .eslintrc.cjs ├── .github ├── pull_request_template.md └── workflows │ └── test.yml ├── .gitignore ├── .husky └── pre-commit ├── .mocharc.json ├── .prettierrc ├── Dockerfile ├── LICENSE ├── README.md ├── dashboards └── gossip.json ├── datadirs ├── datadir │ └── dev.db ├── datadir2 │ └── dev.db └── datadir3 │ └── dev.db ├── docker ├── docker-compose.local.yml ├── from_source.Dockerfile ├── grafana │ ├── Dockerfile │ ├── dashboard.yml │ └── datasource.yml └── prometheus │ ├── Dockerfile │ └── prometheus.yml ├── example.env ├── img └── seaport-gossip-banner.png ├── package.json ├── prisma ├── migrations │ ├── 20221122200922_ │ │ └── migration.sql │ └── migration_lock.toml ├── schema.prisma └── seed.ts ├── scripts └── simulate │ └── run-local-net.ts ├── src ├── bin │ └── start.ts ├── contract-abi │ ├── ERC1155.json │ ├── ERC20.json │ ├── ERC721.json │ └── Seaport.json ├── db │ ├── index.ts │ ├── schema.ts │ └── server.ts ├── index.ts ├── ingestors │ └── opensea.ts ├── listeners │ └── seaport.ts ├── node.ts ├── protocol.ts ├── query │ └── order.ts ├── util │ ├── constants.ts │ ├── convert.ts │ ├── errors.ts │ ├── gossipsub.ts │ ├── helpers.ts │ ├── index.ts │ ├── log.ts │ ├── merkleTree.ts │ ├── metrics.ts │ ├── order.ts │ ├── provider.ts │ ├── serialize.ts │ ├── sszTypes.ts │ └── types.ts └── validate │ ├── index.ts │ └── order.ts ├── test ├── gossipsub.spec.ts ├── ingestor.spec.ts ├── listener.spec.ts ├── merkleTree.spec.ts ├── node.spec.ts ├── order.spec.ts ├── protocol.spec.ts ├── rate-limiter.spec.ts ├── server.spec.ts ├── testdata │ └── orders │ │ ├── advanced-invalid.json │ │ ├── advanced-valid.json │ │ ├── basic-invalid.json │ │ └── basic-valid.json ├── util │ ├── db.ts │ ├── helpers.ts │ └── provider.ts └── validate.spec.ts ├── tsconfig.json ├── tsconfig.prod.json └── yarn.lock /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/.env -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | .eslintrc* -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/.eslintrc.cjs -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/.gitignore -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/.husky/pre-commit -------------------------------------------------------------------------------- /.mocharc.json: -------------------------------------------------------------------------------- 1 | { 2 | "node-option": [ 3 | "loader=ts-node/esm" 4 | ] 5 | } -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | semi: false 2 | singleQuote: true -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/README.md -------------------------------------------------------------------------------- /dashboards/gossip.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/dashboards/gossip.json -------------------------------------------------------------------------------- /datadirs/datadir/dev.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/datadirs/datadir/dev.db -------------------------------------------------------------------------------- /datadirs/datadir2/dev.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/datadirs/datadir2/dev.db -------------------------------------------------------------------------------- /datadirs/datadir3/dev.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/datadirs/datadir3/dev.db -------------------------------------------------------------------------------- /docker/docker-compose.local.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/docker/docker-compose.local.yml -------------------------------------------------------------------------------- /docker/from_source.Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/docker/from_source.Dockerfile -------------------------------------------------------------------------------- /docker/grafana/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/docker/grafana/Dockerfile -------------------------------------------------------------------------------- /docker/grafana/dashboard.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/docker/grafana/dashboard.yml -------------------------------------------------------------------------------- /docker/grafana/datasource.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/docker/grafana/datasource.yml -------------------------------------------------------------------------------- /docker/prometheus/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/docker/prometheus/Dockerfile -------------------------------------------------------------------------------- /docker/prometheus/prometheus.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/docker/prometheus/prometheus.yml -------------------------------------------------------------------------------- /example.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/example.env -------------------------------------------------------------------------------- /img/seaport-gossip-banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/img/seaport-gossip-banner.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/package.json -------------------------------------------------------------------------------- /prisma/migrations/20221122200922_/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/prisma/migrations/20221122200922_/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/migration_lock.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/prisma/migrations/migration_lock.toml -------------------------------------------------------------------------------- /prisma/schema.prisma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/prisma/schema.prisma -------------------------------------------------------------------------------- /prisma/seed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/prisma/seed.ts -------------------------------------------------------------------------------- /scripts/simulate/run-local-net.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/scripts/simulate/run-local-net.ts -------------------------------------------------------------------------------- /src/bin/start.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/bin/start.ts -------------------------------------------------------------------------------- /src/contract-abi/ERC1155.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/contract-abi/ERC1155.json -------------------------------------------------------------------------------- /src/contract-abi/ERC20.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/contract-abi/ERC20.json -------------------------------------------------------------------------------- /src/contract-abi/ERC721.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/contract-abi/ERC721.json -------------------------------------------------------------------------------- /src/contract-abi/Seaport.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/contract-abi/Seaport.json -------------------------------------------------------------------------------- /src/db/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/db/index.ts -------------------------------------------------------------------------------- /src/db/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/db/schema.ts -------------------------------------------------------------------------------- /src/db/server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/db/server.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/ingestors/opensea.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/ingestors/opensea.ts -------------------------------------------------------------------------------- /src/listeners/seaport.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/listeners/seaport.ts -------------------------------------------------------------------------------- /src/node.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/node.ts -------------------------------------------------------------------------------- /src/protocol.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/protocol.ts -------------------------------------------------------------------------------- /src/query/order.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/query/order.ts -------------------------------------------------------------------------------- /src/util/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/constants.ts -------------------------------------------------------------------------------- /src/util/convert.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/convert.ts -------------------------------------------------------------------------------- /src/util/errors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/errors.ts -------------------------------------------------------------------------------- /src/util/gossipsub.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/gossipsub.ts -------------------------------------------------------------------------------- /src/util/helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/helpers.ts -------------------------------------------------------------------------------- /src/util/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/index.ts -------------------------------------------------------------------------------- /src/util/log.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/log.ts -------------------------------------------------------------------------------- /src/util/merkleTree.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/merkleTree.ts -------------------------------------------------------------------------------- /src/util/metrics.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/metrics.ts -------------------------------------------------------------------------------- /src/util/order.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/order.ts -------------------------------------------------------------------------------- /src/util/provider.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/provider.ts -------------------------------------------------------------------------------- /src/util/serialize.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/serialize.ts -------------------------------------------------------------------------------- /src/util/sszTypes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/sszTypes.ts -------------------------------------------------------------------------------- /src/util/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/util/types.ts -------------------------------------------------------------------------------- /src/validate/index.ts: -------------------------------------------------------------------------------- 1 | export * from './order.js' 2 | -------------------------------------------------------------------------------- /src/validate/order.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/src/validate/order.ts -------------------------------------------------------------------------------- /test/gossipsub.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/gossipsub.spec.ts -------------------------------------------------------------------------------- /test/ingestor.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/ingestor.spec.ts -------------------------------------------------------------------------------- /test/listener.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/listener.spec.ts -------------------------------------------------------------------------------- /test/merkleTree.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/merkleTree.spec.ts -------------------------------------------------------------------------------- /test/node.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/node.spec.ts -------------------------------------------------------------------------------- /test/order.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/order.spec.ts -------------------------------------------------------------------------------- /test/protocol.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/protocol.spec.ts -------------------------------------------------------------------------------- /test/rate-limiter.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/rate-limiter.spec.ts -------------------------------------------------------------------------------- /test/server.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/server.spec.ts -------------------------------------------------------------------------------- /test/testdata/orders/advanced-invalid.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /test/testdata/orders/advanced-valid.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /test/testdata/orders/basic-invalid.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/testdata/orders/basic-invalid.json -------------------------------------------------------------------------------- /test/testdata/orders/basic-valid.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/testdata/orders/basic-valid.json -------------------------------------------------------------------------------- /test/util/db.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/util/db.ts -------------------------------------------------------------------------------- /test/util/helpers.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/util/provider.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/util/provider.ts -------------------------------------------------------------------------------- /test/validate.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/test/validate.spec.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tsconfig.prod.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/tsconfig.prod.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectOpenSea/seaport-gossip/HEAD/yarn.lock --------------------------------------------------------------------------------