Skip to content

Commit

Permalink
update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
arjanjohan committed Apr 26, 2024
1 parent 54a0f24 commit 7975895
Show file tree
Hide file tree
Showing 6 changed files with 5,186 additions and 35 deletions.
36 changes: 16 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,9 @@
![logo](logo.png)
</div>

🧪 An open-source, up-to-date toolkit for building decentralized applications (dapps) on the Ethereum blockchain. It's designed to make it easier for developers to create and deploy smart contracts and build user interfaces that interact with those contracts.
🎮 Scroll Fighter is an innovative, blockchain-based fighting game that lives on the Scroll network. This game uses Scroll smart contracts and Noir contracts on Aztec to ensure secure and proofably fair fights..

⚙️ Built using NextJS, RainbowKit, Hardhat, Wagmi, Viem, and Typescript.

-**Contract Hot Reload**: Your frontend auto-adapts to your smart contract as you edit it.
- 🪝 **[Custom hooks](https://docs.scaffoldeth.io/hooks/)**: Collection of React hooks wrapper around [wagmi](https://wagmi.sh/) to simplify interactions with smart contracts with typescript autocompletion.
- 🧱 [**Components**](https://docs.scaffoldeth.io/components/): Collection of common web3 components to quickly build your frontend.
- 🔥 **Burner Wallet & Local Faucet**: Quickly test your application with a burner wallet and local faucet.
- 🔐 **Integration with Wallet Providers**: Connect to different wallet providers and interact with the Ethereum network.

![Debug Contracts tab](https://github.com/scaffold-eth/scaffold-eth-2/assets/55535804/b237af0c-5027-4849-a5c1-2e31495cccb1)
⚙️ Built on Scroll, Aztec, The Graph and NextJS.

## Partner Bounties

Expand All @@ -27,28 +19,32 @@ This project uses Ankr RPC to deploy the game smart contracts. See the hardhat c

A contract written in Noir is used to verify the validity of the challenger's committed strategy. By providing a proof generated by Noir, the game smart contract can use the on-chain verifier to ensure the strategy is valid. The Noir verifier checks if the fighter exists and if the moves are valid.

### Covalent

Use API, SDK or GoldRush Kit [TODO: implement this]
### The Graph

### Sindri
A subgraph is created to query created games on the ScrollFighterV2 contract.
[Subgraph code](https://github.com/arjanjohan/scroll-fighter/tree/main/packages/graph).
[Subgraph endpoint](https://api.studio.thegraph.com/query/72991/scrollfighter/version/latest)

Use of Sindri's API [TODO: implement this]
## Next steps

### The Graph
Due to the limited time, I could not complete everything I set out to do. Additional features that I plan to add are:

Create graph to query games
- Overview of current games, using The Graph to query existing games.
- Create open games (anyone can join/accept)
- Using NFT's as fighters

## Links

[Vercel deployment]()
[Presentation slides]()
[Vercel deployment](https://scrollfighter.vercel.app/)
[Presentation slides](https://docs.google.com/presentation/d/1IYbLM9cwdpbuSvShZCdJoJ4JEDa683sMTGp3Bh6K79o/edit?usp=sharing)
[Presentation video]()
[Dorahacks BUILD]()
[Dorahacks BUILD](https://dorahacks.io/buidl/11485)
[GitHub](https://github.com/arjanjohan/scroll-fighter)

### Verified smart contracts

[ScrollFighter](https://sepolia.scrollscan.com/address/0x4A71867B2739F0976cCC950b643582CA94E6cA28#code)
[ScrollFighterV2](https://sepolia.scrollscan.com/address/0x4250f996882e56b0d0a2daddf3ea0bf9904fec5e#code)
[FighterCoins](https://sepolia.scrollscan.com/address/0x64CDeB6CD5ecfB002bdaFabc98B5C883C5C06B27#code)
[UltraVerifier](https://sepolia.scrollscan.com/address/0xc15BC025d57bec9FA39e18701b4f0b3b5a067B6C#code)

Expand Down
10 changes: 10 additions & 0 deletions packages/graph/.editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
root = true

[*]
end_of_line = lf
insert_final_newline = true

[*.{js,json,yml}]
charset = utf-8
indent_style = space
indent_size = 2
Binary file added packages/graph/.yarn/install-state.gz
Binary file not shown.
1 change: 1 addition & 0 deletions packages/graph/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# graph
20 changes: 5 additions & 15 deletions packages/graph/package.json
Original file line number Diff line number Diff line change
@@ -1,18 +1,8 @@
{
"name": "scrollfighter",
"license": "UNLICENSED",
"scripts": {
"codegen": "graph codegen",
"build": "graph build",
"deploy": "graph deploy --node https://api.studio.thegraph.com/deploy/ scrollfighter",
"create-local": "graph create --node http://localhost:8020/ scrollfighter",
"remove-local": "graph remove --node http://localhost:8020/ scrollfighter",
"deploy-local": "graph deploy --node http://localhost:8020/ --ipfs http://localhost:5001 scrollfighter",
"test": "graph test"
},
"name": "graph",
"packageManager": "[email protected]",
"dependencies": {
"@graphprotocol/graph-cli": "0.71.0",
"@graphprotocol/graph-ts": "0.32.0"
},
"devDependencies": { "matchstick-as": "0.5.0" }
"@graphprotocol/graph-cli": "^0.71.0",
"@graphprotocol/graph-ts": "^0.35.1"
}
}
Loading

0 comments on commit 7975895

Please sign in to comment.