Skip to content

This repository aims to list all the "must have" tools to successfully develop projects during blockchain hackathons.

Notifications You must be signed in to change notification settings

ethcc-ks/hackathon-tools

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 

Repository files navigation

Must-Have Tools for Blockchain Hackathons

Welcome to this repository, which aims to provide a comprehensive list of the essential tools you will need to successfully develop projects during blockchain hackathons.

Tool List

Dev Requirement:

  • Node.js is an open-source, cross-platform JavaScript runtime environment.
  • NPM is the world's largest software registry. Open source developers from every continent use npm to share and borrow packages, and many organizations use npm to manage private development as well.
  • YARN dependency managment.
  • Github, you must have a GitHub account to track your dev journey.
  • Git commands you must be confident with the basic git commands to commit your work, create branch, merge... Example :
git add .
git commit -m "V1.0"
git push

Development Environment:

Setting up a proper development environment is crucial for hackathon success. This includes a code editor or IDE, as well as any necessary dependencies and software.

  • IDE : Visual Studio Code. Don't forget to install extension to help you trough your development journey.
  • Online Solidity IDE Remix
  • UNIX CMD Git Bash - Very usefull if you are working on a Windows OS.
  • Docker

Smart Contract Development:

For blockchain hackathons, it is likely that you will need to develop smart contracts. Tools such as Truffle, Ganache, and OpenZeppelin can be used to develop, test, and deploy smart contracts on various blockchain platforms.

  • Truffle - Truffle takes care of managing your contract artifacts so you don't have to. Includes support for custom deployments, library linking and complex Ethereum applications.
npm install truffle -g
  • Truffle Contract Size. This Truffle plugin displays the contract size of all or a selection of your smart contracts in kilobytes.
npm install truffle-contract-size
npm install -D truffle-plugin-verify
truffle run verify ContractArtifactName@Contract_address --network networkName [--debug] [--verifiers=etherscan,sourcify]
  • Ganache Quickly fire up a personal Ethereum blockchain which you can use to run tests, execute commands, and inspect state while controlling how the chain operates.
  • MetaMask. Crypto Wallet.
  • OpenZeppelin Contract Wizzard Not sure where to start? Use the interactive generator below to bootstrap your contract and learn about the components offered in OpenZeppelin Contracts.

Blockchain Test Networks:

It's important to test your smart contracts and other blockchain-related code on a test network before deploying to the main network. Tools such as Ganache, Rinkeby, and Ropsten can be used for this purpose.

  • Ganache Quickly fire up a personal Ethereum blockchain which you can use to run tests, execute commands, and inspect state while controlling how the chain operates.
  • Chainlist is a list of EVM networks. Users can use the information to connect their wallets and Web3 middleware providers to the appropriate Chain ID and Network ID to connect to the correct chain.
  • Ethereum Testnet Goerli
  • Ethereum Test Sepolia
  • Polygon Testnet Mumbai

Web Development:

In the development of Dapp it is common to see developers using React and many libraries allowing the integration and use of smart contracts. Here is a list of tools and dependencies that can be used together:

  • React A JavaScript library for building user interfaces. Create React App is a comfortable environment for learning React, and is the best way to start building a new single-page application in React.
npx create-react-app my-app
cd my-app
npm start
  • Web3.js Ethereum JavaScript API
  • Ethers
  • RainbowKit provides a fast, easy and highly customizable way for developers to add a great wallet experience to their application.
    You can scaffold a new RainbowKit + wagmi + Next.js app with one of the following commands, using your package manager of choice:
npm init @rainbow-me/rainbowkit@latest
# or
yarn create @rainbow-me/rainbowkit@latest
# or
pnpm create @rainbow-me/rainbowkit@latest

This will prompt you for a project name, generate a new directory containing a boilerplate project, and install all required dependencies.
Alternatively, you can manually integrate RainbowKit into your existing project. See docs.

npm install @rainbow-me/rainbowkit wagmi ethers
  • Vercel allows you to deploy instantly, scale automatically, and serve personalized content. Link you front-end GitHub repo to host and test your project for free !

Blockchain Explorers:

Blockchain explorers are useful for viewing and interacting with the blockchain. Popular choices include Etherscan :

Blockchain Testnet faucet:

Helpfull tools:

  • OpenAI
  • GitHub Copilote AI pair programmer, you can add this extension in VScode.
  • Grammarly is a free writing app to make online writing clear and effective.
  • Bytecode decompiler is an online tool to decompile contract bytecode on ETH mainnet, testnet and BNB chain.

Presentation tools:

  • Canva
  • Loom – Screen Recorder & Screen Capture
  • LucidChart
  • Figma brings together powerful design features you already love and a more efficient workflow to boot. You can design a Website or App for your MVP presentation.

Communication and Collaboration:

Hackathons often involve working in teams, so it is important to have tools that enable effective communication and collaboration. Slack, Telegram, Google Drive, Github and Zoom are popular choices for this purpose.

Project Management:

To stay organized and on track during a hackathon, it is important to use a project management tool.

Note: The above list is not exhaustive and other tools may be useful depending on the specific requirements of your project. Feel free to contribute !

Conclusion

By having these tools in your toolbox, you will be well-equipped to handle the challenges of a blockchain hackathon and develop successful projects. Good luck and have fun!

About

This repository aims to list all the "must have" tools to successfully develop projects during blockchain hackathons.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published