<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>SolidityTips.com</title>
        <link>https://soliditytips.com/articles</link>
        <description>Articles, tutorials, step-by-step guides and small tips to help you learn Solidity, smart contracts and web3 development.</description>
        <lastBuildDate>Fri, 27 Jan 2023 12:14:08 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/nuxt-community/feed-module</generator>
        <item>
            <title><![CDATA[Math operations in Solidity: the basics]]></title>
            <link>https://soliditytips.com/articles/basic-math-operations-solidity</link>
            <guid>https://soliditytips.com/articles/basic-math-operations-solidity</guid>
            <pubDate>Mon, 08 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[A quick guide describing how to do basic mathematical operations in Solidity]]></description>
            <content:encoded><![CDATA[A quick guide describing how to do basic mathematical operations in Solidity]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Automatically adding a blockchain to Metamask with Javascript]]></title>
            <link>https://soliditytips.com/articles/button-add-blockchain-metamask-javascript</link>
            <guid>https://soliditytips.com/articles/button-add-blockchain-metamask-javascript</guid>
            <pubDate>Sat, 11 Jun 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[A detailed guide about how to create a button that automatically adds a blockchain to Metamask. No need to enter blockchain details manually]]></description>
            <content:encoded><![CDATA[A detailed guide about how to create a button that automatically adds a blockchain to Metamask. No need to enter blockchain details manually]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Simple way to compare strings in Solidity]]></title>
            <link>https://soliditytips.com/articles/compare-strings-solidity</link>
            <guid>https://soliditytips.com/articles/compare-strings-solidity</guid>
            <pubDate>Sun, 21 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Comparing strings is something very common in programming languages but in Solidity we do it a little different.]]></description>
            <content:encoded><![CDATA[Comparing strings is something very common in programming languages but in Solidity we do it a little different.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Simple way to concatenate strings in Solidity]]></title>
            <link>https://soliditytips.com/articles/concatenate-strings-solidity</link>
            <guid>https://soliditytips.com/articles/concatenate-strings-solidity</guid>
            <pubDate>Thu, 21 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[In this quick tip I explain how to concatenate strings in Solidity and why it's done this way.]]></description>
            <content:encoded><![CDATA[In this quick tip I explain how to concatenate strings in Solidity and why it's done this way.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to detect and switch Metamask chain in a web3 app]]></title>
            <link>https://soliditytips.com/articles/detect-switch-chain-metamask</link>
            <guid>https://soliditytips.com/articles/detect-switch-chain-metamask</guid>
            <pubDate>Tue, 11 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[A detailed guide about how can you detect the network that Metamask is connected to and switch to the one your web3 app uses]]></description>
            <content:encoded><![CDATA[A detailed guide about how can you detect the network that Metamask is connected to and switch to the one your web3 app uses]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Ethernaut hacking challenges: intro walkthrough]]></title>
            <link>https://soliditytips.com/articles/ethernaut-intro-walkthrough</link>
            <guid>https://soliditytips.com/articles/ethernaut-intro-walkthrough</guid>
            <pubDate>Thu, 27 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[An introduction to Ethernaut, a smart contract hacking game to learn solidity advanced concepts, common hacks, and vulnerabilities.]]></description>
            <content:encoded><![CDATA[An introduction to Ethernaut, a smart contract hacking game to learn solidity advanced concepts, common hacks, and vulnerabilities.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Ethernaut hacking challenges: level 1 walkthrough]]></title>
            <link>https://soliditytips.com/articles/ethernaut-level-1-fallback-walkthrough</link>
            <guid>https://soliditytips.com/articles/ethernaut-level-1-fallback-walkthrough</guid>
            <pubDate>Tue, 01 Feb 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[A walktrough of Ethernaut's smart contract hacking game first level, in which you can learn about fallback functions.]]></description>
            <content:encoded><![CDATA[A walktrough of Ethernaut's smart contract hacking game first level, in which you can learn about fallback functions.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Ethernaut hacking challenges: level 2 Fallout walkthrough]]></title>
            <link>https://soliditytips.com/articles/ethernaut-level-2-fallout-walkthrough</link>
            <guid>https://soliditytips.com/articles/ethernaut-level-2-fallout-walkthrough</guid>
            <pubDate>Thu, 10 Feb 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[A walktrough of Ethernaut's smart contract hacking game second level, in which you can learn about constructors.]]></description>
            <content:encoded><![CDATA[A walktrough of Ethernaut's smart contract hacking game second level, in which you can learn about constructors.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Generating random numbers in Solidity easily]]></title>
            <link>https://soliditytips.com/articles/generate-random-numbers-solidity</link>
            <guid>https://soliditytips.com/articles/generate-random-numbers-solidity</guid>
            <pubDate>Mon, 11 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Here is a quick way to generate semi random numbers in Solidity without using external contracts or an oracle.]]></description>
            <content:encoded><![CDATA[Here is a quick way to generate semi random numbers in Solidity without using external contracts or an oracle.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity fundamentals: Global variables (msg, this & block)]]></title>
            <link>https://soliditytips.com/articles/global-variables-msg-this-block</link>
            <guid>https://soliditytips.com/articles/global-variables-msg-this-block</guid>
            <pubDate>Sat, 13 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Solidity offers a range of global variables that we can access in our smart contracts.These global variables provide information about the blockchain.]]></description>
            <content:encoded><![CDATA[Solidity offers a range of global variables that we can access in our smart contracts.These global variables provide information about the blockchain.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to deploy your smart contract to Rinkeby]]></title>
            <link>https://soliditytips.com/articles/guide-deploy-smart-contract-rinkeby</link>
            <guid>https://soliditytips.com/articles/guide-deploy-smart-contract-rinkeby</guid>
            <pubDate>Tue, 04 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[A step-by-step guide explaning how to deploy a smart contract to the Rinkeby Ethereum test net using Alchemy]]></description>
            <content:encoded><![CDATA[A step-by-step guide explaning how to deploy a smart contract to the Rinkeby Ethereum test net using Alchemy]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Hardhat first steps: using it like a PRO]]></title>
            <link>https://soliditytips.com/articles/hardhat-first-steps-configuration</link>
            <guid>https://soliditytips.com/articles/hardhat-first-steps-configuration</guid>
            <pubDate>Thu, 28 Oct 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Step-by-step guide to create a basic smart contract project with Hardhat and review which options we can change in the configuration file so it can be used on a Web3 app.]]></description>
            <content:encoded><![CDATA[Step-by-step guide to create a basic smart contract project with Hardhat and review which options we can change in the configuration file so it can be used on a Web3 app.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to transform JavaScript number to token amount]]></title>
            <link>https://soliditytips.com/articles/how-to-cast-number-to-token-amount</link>
            <guid>https://soliditytips.com/articles/how-to-cast-number-to-token-amount</guid>
            <pubDate>Sun, 06 Mar 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Quick guide explaining how to use utility methods to transform a user input into a valid amount to transfer ETH or other ERC20 tokens in your web3 app]]></description>
            <content:encoded><![CDATA[Quick guide explaining how to use utility methods to transform a user input into a valid amount to transfer ETH or other ERC20 tokens in your web3 app]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to get a smart contract balance]]></title>
            <link>https://soliditytips.com/articles/how-to-get-contract-balance-solidity</link>
            <guid>https://soliditytips.com/articles/how-to-get-contract-balance-solidity</guid>
            <pubDate>Wed, 11 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[A detailed explanation of how to obtain the balance of a contract from the contract itself and for other contracts]]></description>
            <content:encoded><![CDATA[A detailed explanation of how to obtain the balance of a contract from the contract itself and for other contracts]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Introducion to GoEthereum (Geth): installation and first steps]]></title>
            <link>https://soliditytips.com/articles/how-to-interact-with-blockchain-node-go-ethereum</link>
            <guid>https://soliditytips.com/articles/how-to-interact-with-blockchain-node-go-ethereum</guid>
            <pubDate>Mon, 09 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Explanation of different clients used in blockchain nodes and how to install GoEthereum locally to interact with a node.]]></description>
            <content:encoded><![CDATA[Explanation of different clients used in blockchain nodes and how to install GoEthereum locally to interact with a node.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to import local contracts in Solidity]]></title>
            <link>https://soliditytips.com/articles/import-local-contract-solidity</link>
            <guid>https://soliditytips.com/articles/import-local-contract-solidity</guid>
            <pubDate>Fri, 29 Oct 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[A step-by-step guide on how to import local contracts in Solidity and how to adapt the deployment script to store their deployment address and make sure they work.]]></description>
            <content:encoded><![CDATA[A step-by-step guide on how to import local contracts in Solidity and how to adapt the deployment script to store their deployment address and make sure they work.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Easy way to monitor pending transactions from the mempool]]></title>
            <link>https://soliditytips.com/articles/monitor-pending-transactions-mempool</link>
            <guid>https://soliditytips.com/articles/monitor-pending-transactions-mempool</guid>
            <pubDate>Sat, 21 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Here is a quick way to monitor pending transactions from a blockchain transaction pool connecting via websocket to a node.]]></description>
            <content:encoded><![CDATA[Here is a quick way to monitor pending transactions from a blockchain transaction pool connecting via websocket to a node.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to run an Ethereum blockchain locally for development]]></title>
            <link>https://soliditytips.com/articles/run-ethereum-node-locally</link>
            <guid>https://soliditytips.com/articles/run-ethereum-node-locally</guid>
            <pubDate>Wed, 27 Oct 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Quick guide with different options to run an Ethereum blockchain locally that you can use to test, deploy smart contracts and make transactions.]]></description>
            <content:encoded><![CDATA[Quick guide with different options to run an Ethereum blockchain locally that you can use to test, deploy smart contracts and make transactions.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to send blockchain transactions from a backend]]></title>
            <link>https://soliditytips.com/articles/send-blockchain-transactions-backend</link>
            <guid>https://soliditytips.com/articles/send-blockchain-transactions-backend</guid>
            <pubDate>Thu, 31 Mar 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Explaining how to send blockchain transactions from a backend and understanding what Metamask does for us behind the scenes.]]></description>
            <content:encoded><![CDATA[Explaining how to send blockchain transactions from a backend and understanding what Metamask does for us behind the scenes.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to send ETH from a web3 app to a smart contract]]></title>
            <link>https://soliditytips.com/articles/send-eth-web3-app-smart-contract</link>
            <guid>https://soliditytips.com/articles/send-eth-web3-app-smart-contract</guid>
            <pubDate>Mon, 24 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[A quick article explaining a very common scenario in web3 apps: sending ETH from a user's account to a smart contract]]></description>
            <content:encoded><![CDATA[A quick article explaining a very common scenario in web3 apps: sending ETH from a user's account to a smart contract]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to create, sign, and send transactions manually with Ethers]]></title>
            <link>https://soliditytips.com/articles/sign-send-transaction-ethers-manually</link>
            <guid>https://soliditytips.com/articles/sign-send-transaction-ethers-manually</guid>
            <pubDate>Sun, 01 Jan 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Explaining how to send blockchain transactions programatically using Ethers. This example is useful to send transactions from a backend or when you don't have a wallet and need to sign the transactions manually]]></description>
            <content:encoded><![CDATA[Explaining how to send blockchain transactions programatically using Ethers. This example is useful to send transactions from a backend or when you don't have a wallet and need to sign the transactions manually]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to emit and capture events in Solidity]]></title>
            <link>https://soliditytips.com/articles/smart-contract-emit-events-capture-web3</link>
            <guid>https://soliditytips.com/articles/smart-contract-emit-events-capture-web3</guid>
            <pubDate>Wed, 01 Dec 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Introduction to solidity events and how to define, emit, and capture them in a web3 application]]></description>
            <content:encoded><![CDATA[Introduction to solidity events and how to define, emit, and capture them in a web3 application]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity fundamentals: basic data types]]></title>
            <link>https://soliditytips.com/articles/solidity-basic-data-types</link>
            <guid>https://soliditytips.com/articles/solidity-basic-data-types</guid>
            <pubDate>Sat, 30 Oct 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[An introduction to the most basic data types in Solidity: integers, strings, booleans and addresses]]></description>
            <content:encoded><![CDATA[An introduction to the most basic data types in Solidity: integers, strings, booleans and addresses]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity fundamentals: data location (storage vs memory)]]></title>
            <link>https://soliditytips.com/articles/solidity-data-location-storage-memory</link>
            <guid>https://soliditytips.com/articles/solidity-data-location-storage-memory</guid>
            <pubDate>Thu, 11 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[A quick review of the different places where you can store variables in Solidity: storage and memory]]></description>
            <content:encoded><![CDATA[A quick review of the different places where you can store variables in Solidity: storage and memory]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity fundamentals: working with dates and time]]></title>
            <link>https://soliditytips.com/articles/solidity-dates-time-operations</link>
            <guid>https://soliditytips.com/articles/solidity-dates-time-operations</guid>
            <pubDate>Wed, 22 Dec 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Another quick article with everything you need to know about how to handle dates and time in solidity smart contracts]]></description>
            <content:encoded><![CDATA[Another quick article with everything you need to know about how to handle dates and time in solidity smart contracts]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity funcions visibility: public, private, internal and external]]></title>
            <link>https://soliditytips.com/articles/solidity-function-visibility</link>
            <guid>https://soliditytips.com/articles/solidity-function-visibility</guid>
            <pubDate>Mon, 15 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[A detailed guide about functions visibility in Solidity explaining the difference between public and private, and internal and external]]></description>
            <content:encoded><![CDATA[A detailed guide about functions visibility in Solidity explaining the difference between public and private, and internal and external]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity fundamentals: all about functions]]></title>
            <link>https://soliditytips.com/articles/solidity-functions-introduction</link>
            <guid>https://soliditytips.com/articles/solidity-functions-introduction</guid>
            <pubDate>Wed, 03 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[A detailed guide about functions in Solidity explaining how to declare them, return statements, visibility, and types (view and pure)]]></description>
            <content:encoded><![CDATA[A detailed guide about functions in Solidity explaining how to declare them, return statements, visibility, and types (view and pure)]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Interact with other contracts using contract Interfaces]]></title>
            <link>https://soliditytips.com/articles/solidity-interface-interact-with-other-contracts</link>
            <guid>https://soliditytips.com/articles/solidity-interface-interact-with-other-contracts</guid>
            <pubDate>Mon, 16 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article we review what are smart contract interfaces in solidity and how to use them to interact with other contracts in the blockchain.]]></description>
            <content:encoded><![CDATA[In this article we review what are smart contract interfaces in solidity and how to use them to interact with other contracts in the blockchain.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The keccak256 hashing method explained]]></title>
            <link>https://soliditytips.com/articles/solidity-keccak256-hash-function</link>
            <guid>https://soliditytips.com/articles/solidity-keccak256-hash-function</guid>
            <pubDate>Fri, 16 Sep 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article we explain what is the keccak256 hashing method and show some examples..]]></description>
            <content:encoded><![CDATA[In this article we explain what is the keccak256 hashing method and show some examples..]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity fundamentals: require conditional]]></title>
            <link>https://soliditytips.com/articles/solidity-require-conditional</link>
            <guid>https://soliditytips.com/articles/solidity-require-conditional</guid>
            <pubDate>Wed, 17 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[The require conditional is very common in Solidity as it stops the exeution of a function if a condition is not true.]]></description>
            <content:encoded><![CDATA[The require conditional is very common in Solidity as it stops the exeution of a function if a condition is not true.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Libraries in Solidity: how to create, use them, and most popular]]></title>
            <link>https://soliditytips.com/articles/solidity-libraries-how-to-create-use-most-popular</link>
            <guid>https://soliditytips.com/articles/solidity-libraries-how-to-create-use-most-popular</guid>
            <pubDate>Sun, 22 Jan 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article we'll learn what are libraries in solidity, the difference between using a library or contract inheritance, and review the most popular ones.]]></description>
            <content:encoded><![CDATA[In this article we'll learn what are libraries in solidity, the difference between using a library or contract inheritance, and review the most popular ones.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Solidity fundamentals: complex data types ]]></title>
            <link>https://soliditytips.com/articles/solidity-structs-arrays-mappings</link>
            <guid>https://soliditytips.com/articles/solidity-structs-arrays-mappings</guid>
            <pubDate>Mon, 01 Nov 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Continuation of the previous article about data types, now reviewing complex way to store and handle data using structs, arrays and mappings.]]></description>
            <content:encoded><![CDATA[Continuation of the previous article about data types, now reviewing complex way to store and handle data using structs, arrays and mappings.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Error handling with throw and revert: differences and gas usage]]></title>
            <link>https://soliditytips.com/articles/throw-revert-errors-solidity</link>
            <guid>https://soliditytips.com/articles/throw-revert-errors-solidity</guid>
            <pubDate>Fri, 06 Jan 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article cover error handling in Solidity using throw, revert and require see the differences in how they consume gas.]]></description>
            <content:encoded><![CDATA[In this article cover error handling in Solidity using throw, revert and require see the differences in how they consume gas.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Step-by-step Web3 DApp built with Solidity and Vue.js (part 2)]]></title>
            <link>https://soliditytips.com/articles/web3-simple-app-vuejs-hardhat-part-2</link>
            <guid>https://soliditytips.com/articles/web3-simple-app-vuejs-hardhat-part-2</guid>
            <pubDate>Sun, 02 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Second part of this guide in which I explain how to create a simple message board web3 app. In this part we focus on the front end and the smart contract integration.]]></description>
            <content:encoded><![CDATA[Second part of this guide in which I explain how to create a simple message board web3 app. In this part we focus on the front end and the smart contract integration.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Step-by-step Web3 DApp built with Solidity and Vue.js (part 3)]]></title>
            <link>https://soliditytips.com/articles/web3-simple-app-vuejs-hardhat-part-3</link>
            <guid>https://soliditytips.com/articles/web3-simple-app-vuejs-hardhat-part-3</guid>
            <pubDate>Thu, 06 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Third part of this guide in which I explain how to create a simple message board web3 app. In this part I explain how to deploy both the front end and the smart contract.]]></description>
            <content:encoded><![CDATA[Third part of this guide in which I explain how to create a simple message board web3 app. In this part I explain how to deploy both the front end and the smart contract.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Web3.0 template project using Vue.js, Typescript, and TailwindCSS]]></title>
            <link>https://soliditytips.com/articles/web3-template-vuejs-typescript</link>
            <guid>https://soliditytips.com/articles/web3-template-vuejs-typescript</guid>
            <pubDate>Mon, 20 Dec 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[I've created a basic template that I can use in multiple web 3.0 projects. It includes Metamask integration out of the box.]]></description>
            <content:encoded><![CDATA[I've created a basic template that I can use in multiple web 3.0 projects. It includes Metamask integration out of the box.]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Step-by-step web3 DApp built with Solidity and Vue.js (part 1)]]></title>
            <link>https://soliditytips.com/articles/web3-simple-app-vuejs-hardhat</link>
            <guid>https://soliditytips.com/articles/web3-simple-app-vuejs-hardhat</guid>
            <pubDate>Mon, 27 Dec 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Step-by-step guide to create a basic smart contract project with Hardhat that reads and writes messages in a blockchain.]]></description>
            <content:encoded><![CDATA[Step-by-step guide to create a basic smart contract project with Hardhat that reads and writes messages in a blockchain.]]></content:encoded>
        </item>
    </channel>
</rss>