https://github.com/chainstacklabs/starknet-cairo-odyssey
Learnings and first steps to work with StarkNet and create smart contracts with Cairo
https://github.com/chainstacklabs/starknet-cairo-odyssey
cairo starknet starkware tutorial
Last synced: 5 months ago
JSON representation
Learnings and first steps to work with StarkNet and create smart contracts with Cairo
- Host: GitHub
- URL: https://github.com/chainstacklabs/starknet-cairo-odyssey
- Owner: chainstacklabs
- Created: 2022-04-28T08:57:24.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-04-03T18:04:31.000Z (almost 2 years ago)
- Last Synced: 2024-12-29T16:33:07.080Z (about 1 year ago)
- Topics: cairo, starknet, starkware, tutorial
- Language: Cairo
- Homepage: https://chainstack.com/build-better-with-starknet/
- Size: 2.04 MB
- Stars: 9
- Watchers: 4
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Starket and Cairo Odyssey
This repo contains first steps, tips and learnings to use StarkNet and create smart contracts using Cairo.
The two articles have been published in the [Chainstack blog](https://chainstack.com/):
- [A StarkNet odyssey: Overview and developer tools](https://chainstack.com/starknet-developer-introduction-part-1)
- [A StarkNet odyssey: Escaping Cairo hell](https://chainstack.com/starknet-cairo-developer-introduction-part-2/)
## Cairo code samples
You can find differe contracts with examples in the `cairo-examples` folder. Make sure to follow instructions to setup your development environment, explained in [the first article](https://chainstack.com/starknet-developer-introduction-part-1/).
The `cairo-examples` is a Nile project so it's recommended to install it as well.
### Run tests
The test files in the `/cairo-examples/tests/` folder can be run using `pytest`, for examples `pytest ./tests/test_secretNumber.py`
## Web app example
The `webapp` folder contains a Vue.js application to showcase how to interact with a contract deployed in StarkNet. Check out the [Numbers](./webapp/src/components/Numbers.vue) component to see how to connect to a wallet call contract methods.

The app uses `@argent/get-starknet` library.