fork-commit-merge / fork-commit-merge

Fork, Commit, Merge. A project designed to help you familiarize yourself with the open source contribution workflow on GitHub!

Home Page:https://forkcommitmerge.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fork, Commit, Merge - Easy Issue (Solidity)

nikohoffren opened this issue · comments

Fork, Commit, Merge - Easy Issue (Solidity)

Create a Simple Smart Contract to Store and Retrieve a Number

Note: You don't have ask permission to start solving the issue or get assigned, since these issues are supposed to be always open for new contributors. The actions-user bot will reset the file back to previous state for the next contributor after your commit is merged. So you can just simply start working with the issue right away!

Navigate to the tasks/solidity/easy/my_simple_storage directory from the root of your project.
Then open a file called SimpleStorage.sol inside contracts directory and start implementing your solution!

Description:

Create a simple Solidity smart contract that allows users to store and retrieve an integer. Deploy this smart contract on a test network and interact with it.

Requirements:

  • The smart contract should have a function to set an integer.
  • The smart contract should have a function to get the integer.

How to run:

Make sure you are in the right directory:

tasks/solidity/easy/my_simple_storage

Compile the Solidity file:

truffle compile

Start Local Blockchain:

truffle develop

Deploy contract:

migrate

Interact with Contract:

You can interact with your contract from the Truffle development console (it automatically enters this console after you run truffle develop). For instance, to set and get a number using the contract with running these commands one by one:

let instance = await SimpleStorage.deployed()
await instance.set(42)
let result = await instance.get()
console.log(result.toNumber())

If everything goes smoothly, you should see 42 printed on the console, verifying that your contract is working as expected.

Remember, this is all happening on your local blockchain provided by Truffle for development purposes. To deploy your smart contract on a live network, you'll have to go through additional steps. This is just for testing purposes for this particular issue.

If the program works as requested in the task, you are ready to make a pull request!


To work with this issue, you need to have Node.js, NPM and Solidity (Truffle Ethereum Development Environment) installed to your local machine.
Check out README.md for more instructions of installing Node.js, NPM and Solidity (Truffle Ethereum Development Environment) and how to make a pull request.

Feel free to ask any questions here if you have some problems!

Also, kindly give this project a star to enhance its visibility for new developers!