Ultimate Ethereum Hackathon Survival Guide for 2022

Everything you need to know for your next Ethereum hackathon: essential developer tools, expert setup tips, and support resources to help you build a winning dapp.

Join our Discord Server to Ask Us Questions in Realtime

Chat with Developers, Ambassadors and Community Members

Table of Contents

Benefits of Going to an Ethereum Hackathon

What’s this guide about?
This guide will run through training resources, development tools, and best practices to help you plan and win your next web3 hackathon.

Whether you are a beginner or seasoned professional, this guide can be helpful in the hackathon process. Use this guide to learn how to get started with web3 development quickly. Then use the Crash Course: How to Organize a Hackathon Team guide to learn how to build and finish hackathon projects with ease. 

Together these guides increase your team’s probability of competition and success. Plan the work, and work the plan.

Happy BUIDLing!

What are Hackathons?

Hackathons are events where teams compete under a deadline to create a minimum viable product that solves a real-world issue. They are usually hosted on weekends and last around 48 hours. After COVID-19, most are hosted online and last between one to four weeks. These types of events allow you to participate from anywhere in the world!

Ethereum hackathons are excellent opportunities to:

  • make new friends and connections worldwide
  • get hands-on development training
  • stay up to date with the latest tools 
  • develop your web3 portfolio outside of work
  • learn new technologies in a bounded period
  • find a job from companies looking to hire
  • gain interest from venture capitalists and investors for your startup or any future startups
  • develop a name for yourself
  • get exclusive swag
  • start a startup
  • build cool stuff!

By expanding your network of developer friends, you can find referrals to unlisted opportunities, find possible co-workers in a startup, create a startup, or have cool people to talk about crypto. So whether you’re competing virtually or in the real world, hackathons can provide you with a place to go deeper into the rabbit hole that is web3.

Currently, the gold standards for web3 hackathons are those hosted by EthGlobal and Gitcoin. Both provide a massive amount of training and hands-on experience. Sign up for EthGlobal’s Youtube channel, browse the history of presentations from past events, and gain inspiration from projects of past events.

The Ethereum community is evolving and growing quickly! By joining and participating in hackathons you can rest assured that you will stay up to date and at the cutting edge.

The fastest way to a career in web3 is through participating in a hackathon and finding friends at your local Ethereum meetup.

Hackathons are for everyone!
Hackathons offer a place to learn new technologies with others in an applied manner. Do not get caught up with “impostor syndrome” and feel like you are not good enough to participate. Hackathons are places to learn and grow! 

What is imposter syndrome?
Imposter syndrome is when a person feels like they are not adequate to participate in an activity or organization.  No matter where you are skill wise, you can start today!

No matter where you are skill wise, you can start today!

Steps to a successful hack

howto

Developer Portal

"I dug into the blockchain space like a big puzzle to be figured out. Once you go down the rabbit hole, there's no going back, and who would want to?"

Tom Lindeman

Co-Founder of MythX

Inspiration from Past Winners

Here’s some inspiration before you hit the command line. For a larger list of past participants see the ETHGlobal showcase and Gitcoin Hackathon.

  • SwapForum – a bulletin board for trading that integrates with the AirSwap Trader widget.
  • 2C – The Data Wallet hosts social graphs of trusted people, so that any dApp can load data curated by specific communities
  • Loop – A platform where people can support their favorite creators. To support creators they stake some amount in the creator’s pool, this complete amount can be withdrawn and creators get the interest generated!
  • Tx.Drip – It is a 3D visualization and comparison of the swaps occurring across the three services on Uniswap.
  • RhadaPay – Rhada is pioneering ‘Event Driven Payments’. We are building a service for DApp developers to link payment streams to real world events.
  • Enable – a peer-to-peer stablecoin credit marketplace that received additional funding through a ConsenSys Labs grant.
  • gDai – enables gasless DAI transfers by using compound interest on DAI to pay for gas.
  • Winners of the Ethereal Blocks Hackathon
  • Winners of the Road to DevCon Hackathon

Learn how to win a hackathon from the Crash Course: How to Organize a Hackathon Team guide.

If you are looking to get inspired with projects from the ecosystem, check out Rabbithole. RabbitHole’s mission is to create tools to attract new users and stakeholders for a project’s community. It allows projects to distribute tokens to users through proof-of-use, use the product and earn tokens.

Learning Web3

If you have time to prepare before the hackathon, go through these resources to learn how to build your first sample decentralized applications (DApps).

This section focuses on helping you learn about web3 and developing DApps on Ethereum based networks. 

Overview of a DApp

DApps are like regular applications, except they leverage blockchain-based smart contracts as part of their back-end logic. Like traditional legal contracts, smart contracts are useful for social collaboration. Because they are on impartial blockchains, Smart contracts can create networks of cooperation towards a common goal.

A DApp’s stack is similar to a regular full-stack application. However, a key distinction is that DApps leverage smart contracts and contain hooks for interacting with them via a wallet.

If you come from the web2 world, you will most likely focus on:

  • how to use wallet APIs, 
  • use frameworks to write and manage the life cycle of smart contracts,
  • learn Solidity securely, 
  • understand the general architecture of a blockchain network. 
  • you will need to develop an intuition of what applications are best suited for a blockchain and which are not on the meta-level.

The overwhelming majority of a DApp is front-end code, followed by state management, then large amounts of testing, and finally smart contracts. Although Solidity is the smallest amount of code, it requires the most attention due to its security implications. In production, smart contracts could handle billions of dollars. However, getting them to work on a test network is fine enough for a hackathon.

DApp overview:

  • Optional Theming library (Chakra, React Bootstrap, etc.)
  • MetaMask API / Web-3-react (Wallet API and hooks to interact with smart contracts)
  • Optional Front End Library for web3 UX/UI (Drizzle, web3)
  • Library to interact with the Ethereum Blockchain (Web3js or EthersJS)
  • Front End Library (React, VueJS, VanillaJS / jQuery)
  • Testing Library (Jest, Mocha & ChaiJS)
  • Solidity 

Zooming into the Solidity code, there are various dependencies, namely the smart contract development framework and secure, audited libraries to provide your contract’s base.

Solidity:

  • Actual Solidity Code
  • Truffle / Hardhat / Forge / Brownie (smart contract development framework)
  • OpenZeppelin (The gold standard library of secure, audited contracts)
  • Solc (Solidity compiler)
  • Solidity syntax highlighting for code editor
  • Scribble, a runtime verification tool and domain specific language to reliably test assertions. This is optional for hackathons. But increasingly necessary for production level projects. Go beyond testing your code! Fuzz your code!
Sample DApp file structure
A sample DApp file structure with React and Truffle

First you set up the Truffle smart contract framework. This sets up the contracts portion. Then inside of that root directory you will set up your User interface with React or your favorite front end library.

A barebones sample setup code would be to run in the command line:


mkdir your-project
cd your-project
truffle init
npx create-react-app src

Note: you can use web3 or ethers.

yarn add web3-react @truffle/hdwallet-provider dotenv @openzeppelin/contracts web3-react web3

Or

yarn add web3-react @truffle/hdwallet-provider dotenv @openzeppelin/contracts web3-react ethers

Note: depending on your project, you may want to have client side package.json in your src/ folder or at the root. Either would work.

Then you would add the .gitignore for Node projects.
touch .gitignore 

Note on dependencies:
@truffle/hdwallet-provider is necessary to connect your DApp to a what is basically a headless wallet.

web3-react provides convenient methods to connect to web3 easily. wagmi is another library with similar convenience functionality. See their docs.

For another method to set up a DApp, check out  Scaffold-ETH by Austin Griffith. You can also get great DApps examples with BuidlGuidl.

For a full fledged project check out.  0xSparky’s ConsenSys Academy project called Spread, an options betting platform.

Although it is not a hackathon project, it gives a great example of how React, state management, Solidity, and all the pieces interact cohesively. 

See a cool repo? Give it a Github star!

Web3 Development Basics

If you have a web3 background, you get up to speed on the entire ConsenSys stack to create a DApp. You can use these tools all together or swap them out for another later on.

How can I understand blockchains in a quick and hands on manner?
Andres BrownworthUse these Javascript demos to understand what is a hash, blockchain, blockchain network, and how tokens are created.

What is a blockchain and Ethereum?
Truffle Ethereum Overview – This is a high-level overview covering Blockchain basics and how the Ethereum blockchain works.

How do I create my first DApp?
Truffle Pet Shop – This tutorial will take you through the process of building your first Dapp, an adoption tracking system for a pet shop!

How do I add MetaMask to a DApp?
Create a Simple Dapp – We will be building a simple DApp using the MetaMask APIs.

How do I connect and deploy a DApp to the Ethereum-based network?
Infura getting started – A step-by-step tutorial to help you get set-up with Infura and start using the Infura Ethereum API.

How do I configure my credentials prior to deploying my DApp?
Infura Dapp basic security – How to Use .env to Enhance Basic Security Within Your Dapp.

How do I test my smart contract?
We recommend using Ganache to develop your smart contract first on a local blockchain on your machine. Each account in Ganache comes pre-loaded with test Ether, so you’re all set from the start.

Later you can launch on a Testnet. Remember, if you are using a testnet, you have to get test Ether beforehand. It is required so that you can send transactions and deploy your smart contract. 

To get testnet ETH you need a faucet like those linked below. Faucets are programs that give a small amount of tokens. Testnet ETH is NOT real money.

https://faucet.paradigm.xyz/ – Issues testnet tokens from ALL the major testnets, Layer-2 and even test NFTs. Highly recommended.

https://faucet.ropsten.be/ – in case you have to get extra tokens.

How do I use a boilerplate to quickly get started building DApps?
Scaffold-eth – A great series of React components to build DApps

Where can I read awesome blogs on Ethereum Development?
Developer Portal – The ConsenSys Developer Portal has awesome blogs ranging across the entire Ethereum stack, from Protocols to DeFi.

Web3 Development Intermediate

If you want to go deeper into Solidity smart contract language and DApp development more in-depth, check out these resources.

How do I start to write basic DApps beyond Truffle’s Pet Shop?
Scaffold-eth – The library also has a great series of tutorials to learn how to build DApp using Decentralized Finance (DeFi) primitives. 

How do I easily connect my DApp to web3?
web-3 react – An easy way to connect to React. See docs on how to connect via various means. Requires a Connector listed in docs.

How does Solidity and Web3JS fit into creating a DApp?
Cryptozombies – Learn to Code Blockchain DApps By Building Simple Games. They have added recent sections around Oracles (information providers for blockchain) and ZKSync (layer-2 sidechain for cheaper transactions).

How do I learn to write Solidity more in-depth?
Solidity by example – An introduction to Solidity with simple examples and related Youtube channel.

⚽️ 🥅  🙌 GOOD ENOUGH! The rest are extra things for your career development after the hackathon.

Extra Credit: Web3 Development Advanced

How do I write clean Solidity code?
Clean Contracts by Wesley van Heije In a series of blog posts, Wesley goes through several patterns, practices, and principles that can be applied to blockchain and smart contract development to reduce the risks associated with it.

How do I begin to write Solidity in a secure and in a scalable manner?
Openzeppelin – Comprehensive guides for every step of your development journey

EIP-2525 Diamond Standard – Standard for creating modular smart contract systems that can be extended after deployment. See the creator Nick Mudge’s introductionTrial of Bits review for some in-depth clarity on terminology and the creator’s rebuttal to concerns.

How do I go in-depth in building smart contracts using Python tooling?
Smart Contracts Crash Course – A 16 hour course on Solidity, Blockchain, and Smart Contract Course taking you from beginner to expert using python based tools.

Where can I get the best education to become an Ethereum Developer?
ConsenSys Academy – The gold standard in turning web2 devs into web3 developers.

How can I test my Solidity skills? 
Ethernauts – The Ethernaut is a Web3/Solidity based wargame inspired on overthewire.org, played in the Ethereum Virtual Machine. Each level is a smart contract that needs to be ‘hacked’.

Capture The Ether – Capture the Ether is a game in which you hack Ethereum smart contracts to learn about security.

🥚Easter Egg
Cryptocurrency Class 2022 – Patrick McCorry leads a course on how something like Bitcoin can work, the implications and beauty of self-enforcing smart contracts, and focuses on bringing all students up to date with state-of-the-art research in this emerging area. There is a special focus for off-chain protocols. 

This includes the history of payment channels (the lightning network) and validating bridges (rollups).

Subscribe to ConsenSys newsletters

Get developer tools, pro tips, and more straight to your inbox.

Extra credit: Web3 Development MegaMind

The above two sections are more than enough to become a proficient DApp developer. 

This section is for those who are interested in learning how to write secure smart contracts as a profession or to improve their code after the hackathon. 

By no means is this section necessary to participate in a hackathon. We decided to add this to give this article “bookmark value”. Add this article to your browser’s bookmark section in a visible area. Refer to it as your career develops.

Where can I learn further about Solidity development best practices?
Awesome Solidity – A curated list of Solidity resources

What are the list of smart contract weaknesses?
SWC Registry – A list of smart contract weakness classification and test cases.

Where can I learn about Smart Contract Auditing?
Secureum Bootcamp – Secureum focuses on teaching developers how to audit contracts. Checkout their Youtube channel for past lessons.

HackerDAO.xyz – A DAO focused on training developers to become Solidity smart contract auditors. Applications are rolling every 6 weeks.

yAcademy – An ecosystem initiative by Yearn.finance and it’s partners to bootstrap a sustainable and collaborative blockchain security and nurture aspiring security talent.

Extra Credit: Web3 Infrastructure

How does Ethereum work from first principles?
Eth.build – Learn how Ethereum works from the ground up with plug and play visual tools. You can check out the companion Youtube videos which walk through the tools. Another amazing project by Austin Griffith!

Ethereum Foundation EVM docs – A high-level description of the Ethereum Virtual MachineEVM.codes – An interactive reference to Ethereum Virtual Machine Opcodes.

MEV.wtf – Learn about how mempool shenanigans and what is miner extractable value.

Moon Math by Bankless – One of the best podcasts to understand how Ethereum absorbs applied cryptography research and turns it into usable products. It gives a nice sweeping overview of the whole ecosystem.

Although it is not a hackathon project, it gives a great example of how React, state management, Solidity, and all the pieces interact cohesively. 

research nodes

"I dove deep into Ethereum and loved the elegance of the technology and what it could do. Then I saw the types of problems it could solve, and I was hooked."

Rob Dawson

Product Lead at PegaSys

prehack

Noobs: Come with questions

Note: If you have any questions during these tutorials reach out to us directly to the ConsenSys Discord in the right channels.

If you’re attending a hackathon to learn, it’s a totally fine and good thing if you’re discovering new tools the day of and asking for help with your setup. Hackathons will help you upskill rapidly. Make sure you ask a ton of questions and even prepare some questions in advance to get the most out of your time at the hackathon. Scan the list of workshops and speakers to identify the veteran developers who you feel can best answer your questions and make a plan for approaching them during the event.

Remember, it might take two to three hackathons to really understand certain development workflows and to identify the key factors you’re looking for in a team. If you wish to learn about a useful workflow, see these tips. Before you go, think about the experience you want to have. You don’t want to walk away from the hackathon regretting that you didn’t approach a badass dev. Plan around the basics: coffee, bathrooms, temperature, distractions. Don’t go out too hard the first night if you don’t want your terminal to look blurry the next morning. Or maybe you code better when you’re loose. The hackathon is about your journey as a dev, so make it yours.

Pros: Come with tools

Most in-person hackathons instruct participants to not work on their projects beforehand. However, before the hackathon, you should at least make sure that you can deploy a smart contract to your local blockchain and identify common bugs that could otherwise eat up your time during the event. So have all your tooling ready before the hackathon and get familiar with it. You should install and configure:

  • Git for version control and uploading to Github.
  • homebrew – A package manager for Mac OS users.
  • chocolatey – A package manager for windows users.
  • node.js – A JavaScript runtime that smart contract frameworks require to build DApps.

Once you have the basic setup, for your frontend you can use either of these:

  • ReactJS – The leading front end library for building scalable application front end
  • web-3 react – An easy way to connect to React. See docs on how to connect via various means. Requires a Connector listed in docs.
  • VueJS – An alternative popular front end library for building scalable application front end
  • or regular JavaScript and jQuery

There could be other tools you may need before the hackathon, so you don’t spend valuable initial time on basic setup. Prior to the hackathon, explore the tools you wish to use, what prizes you want to compete for and set up accordingly. You don’t want to be discovering your new favorite tool in the midst of the hackathon if your intention is to win.

Quickstart

The fastest way to get started is to go through the ConsenSys “Getting Started with Ethereum” three step guide. It will get you set up with all the necessary tools you need to succeed at your hackathon. If you need further details, check out the deep dive into tools we provide below.

 

Text Editors and Integrated Development Environments (IDEs)

Okay, you’re one week out from the hackathon. Now it’s time to download your tools and ensure that you have everything set up before you get to the hackathon. Start with your text editor or IDE (integrated development environment).

The most widely used IDE is Visual Studio Code from Microsoft.  It’s well supported, has lots of plugins and is useful for those who are new to the Ethereum space AND do not already have a preferred text editor or IDE.

  • Solidity linter. The Solidity linter for VS code is very opinionated, so keep that in mind if you choose VS code.
  • Vyper linter – provides syntax highlighting for Vyper in VS Code. Vyper is Python-like smart contract programming language for Ethereum.
  • MythX for VS code – is a smart contract security tool. Think of it like a linter that checks for common security issues.
  • Scribble for VS CodeScribble syntax highlighting is a specification language for writing properties for fuzzing.

Remix: an in-browser IDE. Remix is used for rapid prototyping. Use Remix to start your development. Eventually, you will move your code over to your favorite IDE/text editor for submission. Remix is useful for rapidly testing things, but not production or for submissions.

How to Run Ethereum on Your Machine: Local Chain, Clients, and APIs

You’ll need to install the software that will allow you to run a blockchain locally on your computer or connect to a blockchain. Our recommendation is that you run a blockchain locally, since this is the easiest way to quickly build and iterate during the hackathon. Download Ganache the week before the hackathon and use that for running a local blockchain on your machine. You should be comfortable using Ganache and getting things like account information. Once you do, you can save your workspace to save even more time and effort during the hackathon.

Ganache: a one-click blockchain from Truffle. Allows you to create a private Ethereum blockchain on your machine and has both a GUI-based application and a command line interface.

Ethereum Smart Contract Development Framework

A week prior to the hackathon, you need to make sure that you download and set up your smart contract development framework. We recommend Truffle, which has become devs’ go-to tool for building DApps on Ethereum Virtual Machine based blockchains. Install using the instructions below, and then follow the Truffle Quickstart to ensure you understand the framework’s functionality.

Truffle: a comprehensive suite for writing, compiling, testing, and deploying smart contracts.

  • Truffle Installation Instructions
  • Truffle Quickstart gets you using a pre-built smart contract to understand its functionality
  • Truffle Documentation for understanding the features of Truffle
  • Truffle boxes are boilerplates that contain pre-written smart contracts, pre-loaded libraries, and pre-built front-ends. Downloading a Truffle box can help you maximize the time you have at your hackathon by building off of the work that has already been done for you by the Truffle box.truffle compile
  • Truffle Discord is a great place to interact with other users of Truffle and ask for help
  • Truffle GitHub for the source code. We are looking for contributors! <3

Also, you don’t have to reinvent the wheel when it comes to basic smart contracts. OpenZeppelin has an open source repository of audited smart contracts that you may find valuable. It saves you time, integrates well with other contracts and is more secure.

How to Use Testnets and Get Test Ether

We recommend using Ganache to run a blockchain locally on your machine. Each account in Ganache comes pre-loaded with test Ether, so you’re all set from the start. However if you are using a testnet, you have to get test Ether beforehand. It is required so that you can send transactions and deploy your smart contract. To get testnet ETH you need a faucet, which is a program that gives a small amount of tokens.  Remember, testnet ETH is NOT real money.

Here are a few faucets where you can request testnet Ether:

Also, check out this beginner’s guide from Compound on how to use an Ethereum test network.

How to Connect Your Front-End to the Back-End

In order toread and write data from the blockchain, you need to use Web3.js or Ethers.js. These are libraries for interacting with the Ethereum Blockchain and its ecosystem in an easy way. Regardless of whether you use Web3.js or Ethers.js, we highly recommend you set up MetaMask beforehand as well.

Web3.js: an Ethereum javascript API that connects to the blockchain on which you’ve chosen to build your decentralized application. Web3.js allows you to read data from and write data to that blockchain.

Ethers.js: an Ethereum javascript API, similar to Web3.js, but is a smaller library.

For a comparison of Web3.js and Ethers.js, here’s a helpful Web3.js vs. Ethers.js cheatsheet with some sample front-ends. Infura has a useful two part series – Ethereum JavaScript Libraries: Web3.js vs Ethers.js Part I and Part II (tutorial) 

MetaMask: allows you to run Ethereum dapps right in your browser without running a full node. MetaMask provides you with a secure identity vault and wallet for managing your identities across different sites and signing blockchain transactions. You can install the MetaMask add-on in Chrome, Firefox, Opera, and Brave.

Connecting It All: Double-check Your Environment

Alright, you’ve downloaded everything you need and feel geared-up to hack. Now it’s time to take your tools for a spin by trying them out with a sample decentralized application. Go through Truffle’s tutorial on building an Ethereum Pet Shop application.

This tutorial will ensure that you are able to successfully use your IDE/text editor, Truffle, Ganache, Web3.js, and MetaMask, and it will build your confidence that you can get up and running on the day of the hackathon.

Day of the Hackathon: 4 Pro Tips

It’s officially time to get hacking. You’re excited, a little nervous, and totally prepared. Make sure you arrive at the venue on the earlier side of registration so you can find out where the snacks and drinks are, locate the bathrooms (more important than you think), connect to the internet, scope out the most comfortable locations to hack, and start meeting your fellow hackers and members of the community. Here are four specific pro tips to guide you on the day of:

Stay lightweight and account for connectivity

If you’re going to an in-person hackathon, think about internet connectivity and the challenges that hacking over a public WiFi might mean for you. You should have already downloaded and installed all your tools, but if for some reason you need to re-download and install tools like Truffle or Ganache using npm, it will not be a huge issue.

Keep any documentation you need at the ready

For whatever tools you choose to build with, keep the documentation open on a tab on your web browser. We designed this survival guide to be a quick-reference compilation of some key links you’ll need.

Refer to the docs to save on issues. If you can’t find answer, well you are in a room full of developers. Ask someone and make a new friend!

The community is your friend

We can’t say it enough. Make sure you connect to the Discord, or Slack channels of the tools that you end up using. The community often has helpful answers to any questions that you might have. Meet people on the ground, both to find potential teammates and to identify experts who can help you debug a smart contract when you run into issues. ConsenSys often runs a help desk at events staffed with knowledgeable and friendly technical folks. Join our Discord and say hello before you run into an issue so they know who you are. We might even have a few surprises for you if you come talk to us in person!

Keep it simple

Hackathon winners are often able to create a proof-of-concept during their hackathon and limit themselves to that scope. Time limits mean that you won’t be able to sort out every detail or fix every bug. The simpler you keep the scope of your project, the more likely that you will be able to bring a version of it to life. Remember, for most hackathons, your app does not have to be ready to deploy out to the world.

Post-Hackathon: Taking Your Dapp to Production

Congrats! You just survived an Ethereum hackathon! You’ll probably want to: sleep for two days, show off your work/prizes to your friends and family, retro what you built with your team or on your own. And then it’s time to start thinking, what do you do with what you just built?

If you want to turn your proof-of-concept into a fully functional application, you need to think about four things.

Smart Contract Security

Hackathons are about speed and simplicity. But before you even think about deploying your proof-of-concept and onboarding users, you need to scan your smart contracts for vulnerabilities. From static code analysis to input fuzzing to symbolic execution, you want to run multiple analysis processes on your code. To make your smart contract auditing easier, we built a robust API to help you continuously analyze your code throughout the development lifecycle.

Scribble: Scribble is a runtime verification tool for Solidity that transforms annotations in the Scribble specification language into concrete assertions that check the specification. In other words, Scribble transforms existing contracts into contracts with equivalent behaviour, except that they also check properties.

MythX: a smart contract security analysis service that scans your smart contract and identifies vulnerabilities. It integrates with VS Code, Remix, and Truffle, making it an easy addition to your workflow.

Scalability

Once you’ve patched any vulnerabilities in your application, it’s time to get it out to users so they can begin using and testing it. Deploy first to a testnet, and when you feel ready, deploy to mainnet. If price is a concern consider using a Layer-2. Truffle has many boxes, aka code snippets, which simplify deployment to less costly networks. Some examples include Polygon, Arbitrum, Optimism, SKALE, Harmony and more. If decentralized data is appealing to you, check out the Filecoin box

Infura is Ethereum developers’ go-to lightweight option for connecting to mainnet and Layer-2. It supports thousands of decentralized applications daily. Infura saves you the hassle of running a full node and they also have excellent user support.

Infura: instant, scalable, and reliable API access to Ethereum and IPFS networks. Infura uses HTTPS and WebSockets to provide request response times up to 20x faster than other services and self-hosted solutions. Devs can use Infura’s dashboard to configure, monitor, and analyze their dapps and also add on Ethereum archive node data for a historical view of the network.

Unique Functionalities

Your application may have a specific use case that requires unique features related to your users. For example, you may only want certain users or participants to be able to write data to the blockchain via your application. While you could code up this sort of functionality on your own, PegaSys, the protocol engineering team at ConsenSys, has already built out these features in an open source Ethereum client called Hyperledger Besu, which provides various options for consensus algorithms and node and account-level permissioning.

Hyperledger Besu: an Ethereum client written in Java with advanced permissioning features. Hyperledger Besu can create a blockchain locally on your machine, connect to a testnet, create a private network, and/or connect to mainnet. If you need a specific consensus algorithm beyond PoW, Besu gives you options like IBFT out of the box. If you’re an enterprise developer who’s looking to make in-roads at your company to drive the adoption of a blockchain solution, Hyperledger Besu is a powerful resource to guide your discovery process.

Usability

When you were hacking together your application, you probably sacrificed significant time on the user experience in order to simply finish your proof of concept. Now that you’ve audited and deployed your application, you want to ensure that your dapp offers a seamless, simple, and trustworthy user experience so you can keep driving adoption. The Ethereum community has identified some battle-tested components, user flows, and language schemes that can guide your user through the unique experiences of a dapp, from sending a transaction to connecting a wallet.

Rimble: an open source design system of React components based on user research and optimized for blockchain-based applications.

Upcoming Ethereum Hackathons

We hope you found this survival guide useful for both preparing for hackathons and for taking your projects to the next level post-hackathon. We designed this guide to be a go-to resource that you can always return to, so definitely bookmark it for your next hackathon, and share it with any fellow hackers who you think would find it helpful.

Also, we’d love to hear from you. Did you hack something awesome together? Stuck in one of these workflows? See anything missing here? Jump into our Discord server to connect with us and the rest of the community.

Check out a list of upcoming Ethereum hackathons and events in 2022.

Make sure you check out current hackathons on Gitcoin and EthGlobal so you can skill up, connect with the community, and take the next step in your journey as a blockchain developer. And remember, as Gitcoin founder Kevin Owocki has said: “Every time you build on ETH, you can build on the tools others have built.” Call it composability, shoulders of giants, or money legos. Someday, what you build might just be the legos for someone else. BUIDL on.

ConsenSys Grants hero5

"The best thing about building dapps is building on the shoulders of giants. The generations of OSS maintainers who have built the software that comprises our digital infrastructure have enabled us to live, breathe, and work on the Internet of money."

Kevin Owocki

Founder of Gitcoin