Skip to content

The Sandbox is a user-generated content (UGC) gaming platform that will empower creators through digital ownership and monetization of 3D voxel creations made and shared by users around the world.

License

Notifications You must be signed in to change notification settings

thesandboxgame/sandbox-smart-contracts

Repository files navigation

The Sandbox Smart Contracts

Build Status Node Version Discord

The Sandbox is a user-generated content (UGC) gaming platform, that will empower creators through digital ownership and monetization of 3D voxel creations made and shared by users around the world.

This mono-repo contains The Sandbox smart contracts, underpinning The Sandbox metaverse. Our key token contracts were conceived inside the core package. You can find out more about some of our early blockchain features in this article. Since core was created, we have added new contracts and updates via new packages - see the below Architecture Overview for more information.

Learn more

Prerequisites

Tech stack and getting started

This workspace uses Nx: a smart, fast and extensible build system. Run nx graph to see a diagram of the dependencies of the projects.

To add a package simply add it inside the packages directory. Every package can implement the following targets that will be run by the root package.json scripts and on the CI:

  • test: run unit tests inside your new package.
  • coverage: run coverage. Note: CI expects to have at least 80% coverage.
  • lint: lint your code.
  • format: format the code with prettier.

See packages/example-hardhat for an example template package for smart contract development with Hardhat.

Refer to each package's readme for more information about that package. Note that deployment for all new packages is carried out via packages/deploy. Each package should follow the audit best practices where applicable.

Developer quickstart

yarn install

Install Slither (optional)

pip3 install -r requirements.txt

Architecture Overview

  • 📦 This mono-repository contains a suite of smart contract packages.
  • ⚖️ The mono-repository is released under MIT license. Note, that the packages may contain their own licenses.
Package Version License Description
@sandbox-smart-contracts/packages/core npm License: MIT 🗝️ Core smart contracts (pre 2023)
@sandbox-smart-contracts/packages/deploy N/A License: MIT 🚀 Deploy all packages (except core)
@sandbox-smart-contracts/packages/example-hardhat N/A License: MIT 👷 Development template using Hardhat
@sandbox-smart-contracts/packages/giveaway npm License: MIT 🎁 Instant Giveaway smart contract claims
@sandbox-smart-contracts/packages/dependency-metatx npm License: MIT 🌐 Dependency: ERC2771 handler
@sandbox-smart-contracts/packages/marketplace npm License: MIT 🛍️ The Sandbox marketplace contracts
@sandbox-smart-contracts/packages/dependency-royalty-management npm License: MIT 🎨 Dependency: The Sandbox Royalty Implementation in partnership with Manifold's royalty-registry
@sandbox-smart-contracts/packages/dependency-operator-filter npm License: MIT 🤝 Dependency: The Sandbox's implementation for OpenSea's operator filter
@sandbox-smart-contracts/packages/asset npm License: MIT 🚗 Asset contract upgrade for L2 deployment featuring tiers, abilities, operator-filter and creator royalties

Contributing

Bug bounties

Submit a bug at Immunefi to help secure our smart contracts!

About

The Sandbox is a user-generated content (UGC) gaming platform that will empower creators through digital ownership and monetization of 3D voxel creations made and shared by users around the world.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published