> ## Documentation Index
> Fetch the complete documentation index at: https://docs.carletonblockchain.ca/llms.txt
> Use this file to discover all available pages before exploring further.

# Intro to Smart Contracts

> Self executing code stored on the blockchain network

This workshop will focus on smart contracts with an emphasis on the Ethereum Virtual Machine. We will cover at a high level what a smart contract is,
and how they can be used to create decentralized applications (dApps), more specifically on the Ethereum network.

> A disclaimer I want to make at the start of this workshop is that I want you guys to treat blockchains and web3
> just as any other software. I want to take it from first principles and an objective standpoint. At the end of the day,
> software is neutral, it's how you use it that makes it "good" or "bad".

## Some tools we will be using today

<CardGroup cols={2}>
  <Card title="Etherscan (Testnet)" icon="Ethereum" href="https://sepolia.etherscan.io/">
    Etherscan is a comprehensive blockchain explorer created for the Ethereum
    blockchain. Provides tools and features to interact with and analyze network
    data
  </Card>

  <Card title="Metamask" icon="paw" href="https://metamask.io/">
    Metamask is a self-custody crypto wallet that allows users to connect on chain
    through a browser extension.
  </Card>

  <Card title="Foundry" icon="weight-hanging" href="https://book.getfoundry.sh/">
    Foundry is a smart contract development kit that provides a comprehensive
    suite of tools for building and deploying decentralized applications (dApps)
    on the Ethereum blockchain. (Written in Rust btw)
  </Card>

  <Card title="Google web3 faucet" icon="faucet" href="https://cloud.google.com/application/web3/faucet/ethereum/sepolia">
    Application that dispenses free tokens on a testnet (a blockchain network used
    for development and testing).
  </Card>

  <Card title="RPC Node " icon="computer" href="https://ethereum-sepolia-rpc.publicnode.com/">
    To deploy contracts to the blockchain, we need to connect to a RPC node. Heres
    a good free one that we will be using for the workshop.
  </Card>

  <Card title="Proton VPN" icon="Globe" href="https://protonvpn.com/">
    Good free VPN that doesn't keep logs.
  </Card>
</CardGroup>
