diff --git a/README_TEMPLATE.md b/README_TEMPLATE.md index df5ed5c..d34227d 100644 --- a/README_TEMPLATE.md +++ b/README_TEMPLATE.md @@ -1,41 +1,66 @@ -# Project Title +# CREATING A TOKEN -Simple overview of use/purpose. +This Solidity program is a program that demonstrates the creation of a token in the Solidity programming language. The purpose of this program is to create a token and store the values in the token. ## Description -An in-depth paragraph about your project and overview of use. +This program is a contract written in Solidity, a programming language used for developing smart contracts on the Ethereum blockchain. The contract has multiple functions for mapping variables, minting and burning values. ## Getting Started -### Installing +### Executing program -* How/where to download your program -* Any modifications needed to be made to files/folders +We can use Remix to run this code, an online Solidity IDE. -### Executing program +```javascript +// SPDX-License-Identifier: MIT +pragma solidity >=0.8.2 <0.9.0; -* How to run the program -* Step-by-step bullets -``` -code blocks for commands -``` +/* + REQUIREMENTS + 1. Your contract will have public variables that store the details about your coin (Token Name, Token Abbrv., Total Supply) + 2. Your contract will have a mapping of addresses to balances (address => uint) + 3. You will have a mint function that takes two parameters: an address and a value. + The function then increases the total supply by that number and increases the balance + of the “sender” address by that amount + 4. Your contract will have a burn function, which works the opposite of the mint function, as it will destroy tokens. + It will take an address and value just like the mint functions. It will then deduct the value from the total supply + and from the balance of the “sender”. + 5. Lastly, your burn function should have conditionals to make sure the balance of "sender" is greater than or equal + to the amount that is supposed to be burned. +*/ -## Help +contract newToken { -Any advise for common problems or issues. -``` -command to run if program contains helper info -``` + // public variables here -## Authors + string public tokenName = ""; + string public tokenAbbrev = ""; + uint public totalSupply = 0; -Contributors names and contact info + // mapping variable here -ex. Dominique Pizzie -ex. [@DomPizzie](https://twitter.com/dompizzie) + mapping (address => uint) public balances; + // mint function + + function mint(address _address, uint _value) public { + totalSupply += _value; + balances[_address] += _value; + } + + // burn function + + function burn (address _address, uint _value) public { + if (balances[_address] >= _value){ + totalSupply -= _value; + balances[_address] -= _value; + } + } +} + +``` -## License +After the code has been compiled, you may proceed to deploy the contract by navigating to the "Deploy & Run Transactions" tab located in the left-hand sidebar. Select the "newToken" contract from the dropdown menu, and then click the "Deploy" button. -This project is licensed under the [NAME HERE] License - see the LICENSE.md file for details +Upon successful deployment of the contract, you will be able to interact with it by invoking the various functions available.