# Scroll Pre-Alpha Testnet **Published by:** [0xCaptain](https://paragraph.com/@0xcaptain/) **Published on:** 2023-04-03 **URL:** https://paragraph.com/@0xcaptain/scroll-pre-alpha-testnet ## Content Twitter:@CryptoBrawn; GameFi enthusiast,NFT player,founder of @GF_GuildGameFi,blockchain financing information,long-time cryptocurrency investor. **Scroll **Introduction Scroll is an EVM-compatible ZK-Rollup that seeks to solve scalability and gas issues in Ethereum. Technically speaking, Scroll is built upon two major pieces. The core piece is the zkEVM, which is used to prove the correctness of EVM execution in Layer 2. We have been building it in the open with the Privacy and Scaling Explorations group at the Ethereum Foundation for over a year. But to turn the zkEVM into a full zkRollup on the Ethereum, we also need to build a complete L2 architecture around it. You can get acquainted with the technical side of the project on their blog on the mirror, we will not dive into this, and move on to the main thing - the activities. Fundraising: Raised $30M from Polychain Capital, Bain Capital Crypto, Robot Ventures, Geometry DAO and others. The Pre-Alpha Testnet is now open to all and everyone has a chance to test the project. The testnet won't take much of your time, so we encourage you to take the time to do it. Airdrop is not confirmed, but the probability of an airdrop for testers is high. Let's start testing. How to participate? 1.Using the bridge (Goerli Testnet & Alpha Testnet) <1>Adding Testnet NetWorksFirst, let's visit the Scroll Alpha Portal. Once there, click "Add to MetaMask" to add Scroll Goerli & Scroll Alpha Testnet network to MetaMask.<2>Goerli FaucetVisit Alchemy Faucet or Paradigm MultiFaucet, specify your wallet and request ETH testnet tokens;<3>Using the bridgeGo to Bridge and connect the wallet;Send ETH Goerli to the Scroll Alpha Testnet;Confirm the transaction in your wallet;Done. The transfer should be processed within 20 minutes.Make a transfer in the opposite direction.2.Using the Orbiter BridgeGo to Orbiter Finance Rinkeby and connect the wallet;Select Goerli from the list, enter the amount and click “Send”;On the next page we confirm the action.3.Using the Uniswap V3Go to Uniswap V3 and connect the wallet;Select the assets, enter the amount and click "Swap";Leave your feedback on discord.4.Using the SyncSwap <1>Go to the site and connect your wallet;Select the Scroll Alpha network.<2>Getting test tokensGo to "Faucet" and retweet by clicking "Retweet now";Then click on the "Claim now" button;Done.<3>We're doing swap in platformGo to the "Trade" tab;Select the pair to exchange, specify the amount and click on the "Unlock USDT" button;Then click on the "Swap" button;Done.<4>Add liquidity to the poolGo to the "Pool Wizard" tab;Select the tokens you want to add to the pool and click "Enter Pool";Then go to the "Deposit" tab, specify the number of tokens, click on the "Permit Test" button, then on the "Permit MKR" button and click on the "Deposit" button;Done.5.Deploy Token & Contract <1>Deploy Contract To deploy the token and contract you need to rent a server on Ubuntu. We recommend testing the guide on the cheapest Contabo server for 6 euros, with Ubuntu 20.04. A limited number of contracts can be deployed on one rented server. Here we go!Copy each command individually!sudo apt update sudo apt install git git clone https://github.com/scroll-tech/scroll-contract-deploy-demo.git cd scroll-contract-deploy-demo curl -L https://foundry.paradigm.xyz | bash source /root/.bashrc foundryup forge build --use 0.8.17Then insert your data into the code, put the amount of ether - 0.0000001ether, unlock time on this site, the private key in your purse MetaMask. Then we copy the whole code and paste it into the terminal: forge create --rpc-url https://alpha-rpc.scroll.io/l2 \ --value \ --constructor-args \ --private-key \ --legacy \ contracts/Lock.sol:Lock --use 0.8.17 If everything has been done correctly you will see similar results: Deployer: 0x4397FaBAE1318AB76ecb204a17f1dE9E9F888b11 Deployed to: 0xE70cc2EE909f3C17A712721D688973DABD36eBC4 Copy your contract address (Deployed to) and paste it into the block browser. <2>Deploy Token Now we will create our own token, follow the instructions below, read carefully, copy each line and paste into the terminal individually! cd $HOME sudo apt update sudo apt install git curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash - sudo apt-get install -y nodejs mkdir DeployToken cd DeployToken sudo npm init * Press Enter until the next step. sudo npm install --save-dev hardhat sudo npx hardhat * Press Enter until the very end. npm install --save-dev "@nomicfoundation/hardhat-toolbox@^2.0.0" npm i @openzeppelin/contracts cd contracts nano .sol * Come up with a name for the token. Example: Next, copy and paste the entire block of code into your file, changing the data to your own. Press CTRL+X to save the file after pasting, then press Y+ENTER: // SPDX-License-Identifier: MIT pragma solidity ^0.8.4; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; contract NFDGG is ERC20 { constructor() ERC20("Your Token Name", "Token Name Abbreviated") { _mint(msg.sender, 1000000000 * 10 ** decimals()); } } Next copy the entire block below, paste into the terminal, press ENTER, an empty file will open: cd $HOME/DeployToken/scripts rm -rf deploy.js nano deploy.js * Press ENTER Next, copy and paste the entire block of code, "Enter Your Token Name" into your file. Save the file after you paste it with CTRL+X, then press Y+ENTER const { ethers } = require("hardhat"); async function main() { const token = await ethers.getContractFactory("Your Token Name"); const deployedToken = await token.deploy(); await deployedToken.deployed(); console.log(`The smart contract was deployed at: ${deployedToken.address} on Scroll L2!`); } main().catch((error) => { console.error(error); process.exitCode = 1; }); Next, enter each command separately (you'll find the Private Key in your wallet): npm i dotenv cd $HOME/DeployToken nano .env PRIVATE_KEY="YOUR PRIVATE KEY" * Save with ctrl+x, then y+Enter. rm -rf hardhat.config.js nano hardhat.config.js Then paste all the code block into the file, don't change anything and save it by pressing ctrl+x, then y+enter: require("@nomicfoundation/hardhat-toolbox"); require("dotenv").config({ path: ".env" }); const PRIVATE_KEY = process.env.PRIVATE_KEY; /** @type import('hardhat/config').HardhatUserConfig */ module.exports = { solidity: "0.8.17", networks: { scrollL2: { url: `https://alpha-rpc.scroll.io/l2\`, accounts: [PRIVATE_KEY] } } }; Next, enter the command: npx hardhat run scripts/deploy.js --network scrollL2 If all goes well you will get the following text with the contract: The smart contract was deployed at: 0x8a7B961ae27ecE78483E4D3b74cEB9D1909f98eb on Scroll L2! 6.Leaving feedback Join their Discord and get verified. Stay active on their server and watch for updates. 7.Joining the Guild Now you can join the guild on the site and get the first Mystery role. Done ## Publication Information - [0xCaptain](https://paragraph.com/@0xcaptain/): Publication homepage - [All Posts](https://paragraph.com/@0xcaptain/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@0xcaptain): Subscribe to updates - [Twitter](https://twitter.com/0xCaptain888): Follow on Twitter