Skip to content
This repository was archived by the owner on May 16, 2023. It is now read-only.
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
* text=auto eol=lf
*.sol linguist-language=Solidity
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
.env
yarn.error.log
yarn-error.log
.yalc
yalc.lock
coverage*
.vscode/*
node_modules/
.idea/
.DS_Store
80 changes: 80 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# Smart-Contracts for [The Sandbox](https://www.sandbox.game)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's rework this readme with a simple but complete install / get started


[www.sandbox.game](https://www.sandbox.game)

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.

Learn more:

- Website: www.sandbox.game
- Discord: https://discordapp.com/invite/vAe4zvY
- Telegram: https://t.me/sandboxgame
- Medium: https://medium.com/sandbox-game

# Blockchain Features

We’re adopting the best standards to reach to players who are not familiar with Blockchain and Web3 technologies,
simplifying the UX and on-boarding

- Dual token structure smart-contract: [ERC-721](https://eips.ethereum.org/EIPS/eip-721)
/ [ERC-1155](https://eips.ethereum.org/EIPS/eip-1155)
- Escrowless Auctions
- Meta-Transactions
- [EIP-712 DRAFT](https://eips.ethereum.org/EIPS/eip-712) for Human-Readable signature messages
- [EIP-1776 DRAFT](https://github.com/ethereum/EIPs/issues/1776) submitted by Pixowl to Ethereum for Native
Meta-Transactions

More detailed information can be found on our Medium
article: [https://medium.com/sandbox-game/blockchain-features-in-the-sandbox-7db91fcc615c](https://medium.com/sandbox-game/blockchain-features-in-the-sandbox-7db91fcc615c)

---

# Get Started Instructions

If you want to check out our contracts and run the test follow these instructions :

SETUP :

```
yarn
```

RUN TESTS :

```
yarn test
```

# Technical Documentation

You can explore here the documentation of our tokens and blockchain featurs:

- our ERC-20 token : [SAND](documentation/Sand.md)
- Meta-Transaction implementation (EIP-1776) : [Meta-Transactions](documentation/meta_transactions.md)

- our ERC-1155/ERC-721 Asset token : [ASSET](documentation/Asset.md)

- our ERC-721 LAND token : [LAND](documentation/Land.md)

- our Marketplaces features: [Escrowless Auctions](documentation/escrow_less_auctions.md)
- our User-Generated Content Moderation Policies using [Prediction Market](documentation/curation.md)

# Your First Pull Request

We are using feature branches to host the code of an upcoming feature. All feature branches start with "feat/"
prefix, each feature branch is intended for a single purpose. The following branches will reject direct pushes:

- main branch
- "feat/" prefixed branches

So, in order to commit your changes to master you will have to

- git checkout master
- git checkout -b feat/exampleFeature
- git push --set-upstream origin feat/exampleFeature
- git checkout -b exampleFeature
- git push --set-upstream origin exampleFeature

Now you can write your code and push your changes to the exampleFeature branch, once your'e done you need to open a pull
request from exampleFeature to feat/exampleFeature, and then another pull request from feat/exampleFeature to master.
24 changes: 24 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"name": "contracts",
"version": "0.0.1",
"workspaces": [
"packages/*"
],
"private": true,
"description": "TheSandbox game smart contracts",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Sandbox Game smart contracts

"scripts": {
"test": "yarn workspaces run test"
},
"repository": {
"type": "git",
"url": "https://github.com/thesandboxgame/contracts.git"
},
"keywords": [],
"author": "",
"license": "MIT",
"bugs": {
"url": "https://github.com/thesandboxgame/contracts/issues"
},
"homepage": "https://github.com/thesandboxgame/contracts#readme",
"packageManager": "yarn@3.4.1"
}
20 changes: 20 additions & 0 deletions packages/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Smart-Contracts for [The Sandbox](https://www.sandbox.game) source code workspaces

This directory contains the source code used by [The Sandbox](https://www.sandbox.game)

Each workspace can use any tool needed for development, but, it must have at least one the test npm script to run tests

We recommend:

- hardhat
- hardhat-toolbox
- typescript
- eslint
- prettier
- solcover
- solhint
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and let's say that yarn workspace is required


# Deploy

Each workspace must export via nmp the solidity source code then we import the source code from different places in the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

npm

deploy workspace that manage the deployment to our different environments.
Loading