Awesome
DEPRECATION: Don't bother learning with this repo anymore. This is all early Cairo 0 code and things have changed a lot since (for the better lol cairo 0 was like chewing glass)
Full-Stack StarkNet
Repo containing the code for a short tutorial series I wrote while diving into StarkNet and learning Cairo. Aims to onramp existing devs to a little bit of everything.
Creating a black box for cars, enabling immutable diagnostics.
Tutorial text kept on hackmd for easier editing:
- [Part 1] 🚧 Getting Started in Cairo & Deploying with Nile
- write a unit tested contract in cairo
- deploy your contract to testnet
- [Part 2] 🐍 Contract Interaction with starknet.py
- create and sign StarkNet transactions from a python application
- [Part 3] 👥 StarkNet Account Abstraction & Using Standard Contracts
- learn the difference between Ethereum & StarkNet Account models
- refactor your contract & tests to use standard OpenZeppelin Accounts
- [Part 4] 💽 Local Devnet & Starknet.py's Account Capabilities
- learn to use the devnet for boosted development speed
- leverage starknet.py's AccountClient to proxy transactions through a deployed Account
- [Part 5] 🎨 StarkNet Frontends w/ Cairopal & Argent X
- build a frontend from the community made dapp template
- connect to an account in your Argent X wallet & sign transactions
- [Notes] 💰 Contract Costs & Why Our Design Needs Work
- learn a little about the future of transaction fees & how to write code with that in mind
- implement a Bloom filter in cairo
- measure the number of steps used by your contract calls
Finished Product
A react frontend that interacts with our deployed StarkNet contract, using Argent X accounts & browser extension: