4 min read

👉 Get your FREE chapter of the Blockchain Developers Handbook…

This guide takes 3 minutes 33 seconds to read.

🤖 Programming Languages

Solidity is the main programming language for smart contracts, however there are other languages which will be useful depending on your usecase.

  • Solidity — Object Oriented High Level Language For Smart Contracts
  • Vyper — Pythonic Programming Language For Smart Contracts
  • JavaScript — High Level Interpreted Scripting Language
  • Python — Interpreted High Level General Purpose Programming Language
  • Go — The Language In Which Geth (Go-Ethereum) Client Is Written In
  • Rust — Language In Which The Parity Client Is Written In
  • Java — The Pantheon Client Is Written In Java
  • .NET — Intergrateable To The Ethereum Blockchain With Nethereum
  • C++ — Protocol Development With The Help Of Github /Aleth
  • Ruby — See How Ruby Is Used In Ethereum With Github /Ethereum.RB

🏫 Smart Contract Libraries

These libraries are no different to traditional programming libraries. They contain reusable pieces of code, which can be shared time and time again.

  • OpenZeppelin — Implementation Standards For ERC20 & ERC721
  • Dappsys — Building Blocks For Building Smart Contracts In Solidity

🔐 Smart Contract Security Tools

Security is of the utmost importance, hence tools such as these ensure your code is safe. As well as following the Ethereum best development practices.

  • MythX — Service That Finds Vulnerabilities In Your Smart Contract Code
  • Oyente — Utilizes A Execution Tool That Works With EVM Byte Code
  • Manticore — Command Line Interface, Uses A Symbolic Execution Tool

💉 Smart Contract Testing & Deployment Tools

Tools such as these help you build, test and deploy your code. They are useful when you begin to create your decentralised applications.

  • Truffle Suite — Smart Contract Dev, Testing, & Deployment Framework
  • Waffle — Simple Library For Writing & Testing Smart Contracts In Ether.JS
  • Embark — All In One Platform For Building & Deploying Applications
  • Infura — Provides Instant & Scalable API Access To The Ethereum & IPFS’s
  • Rhombus — Oracle Solution For Your Smart Contract

🤝 Ethereum Blockchain Clients

Clients are crucial. They provide interfaces to create transactions, and mine blocks upon Ethereum. Here we have some of the most popular.

  • PegaSys Pantheon — Open Source Ethereum Client Written In Java
  • Parity — Ethereum Client Using The Rust Programming Language
  • Geth — Command Line Interface For Running A Full Ethereum Node
  • MetaMask — Chrome Extension Brining Ethereum To Your Browser

✏️ IDE & Editing Tools

IDE’s (Integrated Development Environments), and Editors are needed to write and test your software. Below we have the most popular.

  • Atom — Open Source & Usable Text Editor
  • Remix — Tools Allowing You To Debug Trasactions On Ethereum
  • Visual Studio Code — Ethereum Solidity Language For Visual Studio Code

🚶‍♀️ Local Testnets

Local Testnets allow you to test your software in a safe environment, without deploying it to the public. Note these only run on your computer.

  • Ganache — Quickly Fire Up A Personal Ethereum Blockchain To Test
  • Ganache CLI — A Quick Ethereum RPC Client For Testing & Development

📡 Public Testnets

Public Testnets allow Ethereum developers to test the decentralised application they have built, without publiishing on the main network.

  • Ropsten — POW Blockchain That Resembles Ethereum To Mine Faux Ether
  • Kovan — POA Blockchain Created By Parity
  • Rinkeby — POA Blockchain Created By Geth
  • Görli — Community Based & Open

🖥️ Front–End Interfaces

The front-end interfaces listed below will help turn your decentralised application, into a full scale project that is like on the main-net.

  • Web3.js — Ethereum JavaScript API Which Connects To Generic JSON RPC
  • Ethers.js — Ethereum Wallet Implementation
  • Drizzle — Front End Libraries That Make Writing Dapp UI Easier

🔗 Back-End Interfaces

To work with back-end interfaces for your dapp you should be well versed in the following languages; Go, Rust, Java, .NET, Ruby, or Python.

  • 8 Web3.py — Python Implementation Of Web3.JS
  • Nethereum — An Open Source .NET Integration Library For Blockchain
  • Web3j — Lightweight Java & Android Library

💾 Blockchain Storage Platforms

Data. Data. Data. Platforms listed below are where the data for your smart contracts are stored, IPFS is the most popular out of those listed.

  • IPFS — P2P Hypermedia Protocol To Make The Web Faster, Safer & Open
  • Swarm — Distributed Storage Platform & Content Distribution Service
  • OrbitDB — Decentralised P2P Database Upon IPFS

💽 Data Querying Tools

Tools such as those listed below will help developers gain access to key data that is needed for your Ethereum blockchain project, or application.

  • Alethio — Ethereum Data Analytics Platform
  • Etherscan — Block Explorer & Analytics Platform For Ethereum

🏢 Enterprise Blockchain Tools

When corporations test with blockchains, it is often enterprise blockchains. Hence, these are important for corporate blockchain devs.

  • Kaleido — Build & Run Cross Cloud, Hybrid Enterprise Ecosystems
  • Microsoft — Kit Simplifies How You Build & Deploy Smart Contracts

📚 Educational Resources

The blockchain ecosystem as a whole moves at a lightning pace, hence it’s helpful to know there are more than outdated Youtube tutorials around.

👔 Work Resources

Indie developers also have much to gain this ecosystem, with marketplaces opening up harnessing the power of talented and distributed teams.

  • Gitcoin — Monetise Or Incentivise Work In Open Source Software
  • Bounties Network — Find Freelancers & Bounty Programs Paid In Ether

 

Source: Medium – 53-tools-you-need-to-build-applications-on-ethereum

Image Source

0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.