project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

ERC Sandbox

A suite of tools enabling rapid prototyping of Dapps (both backend and frontend) - using a decentralised approach - and socket.io to enable multiplayer and social interaction / chat and real time block exploration

ERC Sandbox

Created At

ETHGlobal London

Project Description

This project allows a developer to be "up and running" with a full stack, decentralised dapp within minutes. Essentially a "white label" - the application is currently 2 docker containers - one running a node api + mongodb - and the other running a (create-react-app) front end.

It is specifically aimed at developers who wish to use NFTs to create games, social networks, marketplaces etc - and highlights the ease with which this can be done directly off the chain. It will be supporting a series of tutorials on full stack dapp development in general - and hopes to plug a gap in resource for people who wish to dev / hack with existing NFT collections as most tutorials focus on how to make new ones - and go into little, if any, detail about how to deliver immersive and engaging experiences.

There are 2 focusses:

  1. Making fun and engaging experiences similar to the original CryptoKitties website
  2. Don't trust - verify: a lot of developers are building dapplications using a cacophony of 3rd party plugins and REST apis. This is more web2 mess! This sandbox will attempt to refocus the ease and philosophy of actual web3 development using the blockchain (vs e.g. a 3rd-party REST api) as a source of truth.

How it's Made

The project is 2 docker containers (1 backend / 1 frontend) both running on Node (latest stable). It assumes 3 things:

  • the developer has docker installed on the command line
  • the developer has a (ws) geth node connection string (in this case via Quicknode)
  • the developer has some great ideas for making dapps

2 .env files need creating and then the developer can start both containers and start hacking. Both containers support live reload.

I'd like to highlight that there is also no need for any external api calls as all the information we need should be available from the blockchain - and, using a light touch framework, that should be intuitive and fun to re-purpose whether you are building an NFT community chat room or a feature rich dapp like CryptoKitties.

As part of my submission I would like to draw attention to the 2 example branches I have created which demonstrate the ease with which new projects can be added to this sandbox.

  1. /feature/nouns-example - this branch is an example of how a developer can add in a default contract via some basic config (contract address, deployment block and abi). On restart this will set of a report that, once complete, will yield a database / api of all existing assets (+ current / historic ownership) within this collection.

  2. /feature/bored-apes-example - this branch is an example of how a developer can add in a different project both as a separate module (e.g. maybe with its own authentication / messaging capabilities) or as an integration within your existing dapp (e.g. maybe you want to let your users use one of their bored apes as their avatar on your site)

background image mobile

Join the mailing list

Get the latest news and updates