MYKEY Docs
中文English
English
English
  • Introduction
  • Sign in with MYKEY
    • Verify signature at backend server
    • More detailed tech and process of MYKEY login
  • Integrate with MYKEY
    • Multiple ways to integration with MYKEY
    • Mobile Dapp with H5 pages
      • ETH
      • EOS
      • JS Extensions
    • Integration via MYKEY Android SDK
      • Preconditions
      • Initiate SDK
      • Authorize
      • Sign
      • Transfer
      • Call contracts
    • Integration via MYKEY iOS SDK
      • Preconditions
      • Initiate SDK
      • Authorize
      • Sign
      • Transfer
      • Call contracts
    • Web application with scanning qrcode
    • SimpleWallet Protocol Compatible
    • Deeplink Protocol
  • Dive into MYKEY
    • Dive into MYKEY account
    • Classes and methods
      • Android Classes
      • iOS Classes
    • Error Code
    • Identify MYKEY deposit transaction
      • ETH deposit
      • EOS deposit
    • MYKEY Whitepaper
  • KEY ID
    • KEYID ETH Contracts introduction
      • Account Module
      • Account Storage Module
      • Logic Management Module
      • Logic Module
    • Account recovery mechanism
    • KEYID contract upgrade process
    • KEYID contract upgrade records
      • ETH
        • KEY ID Ethereum Contracts Upgrade Pending Time Adjustment
        • KEY ID Ethereum logic contract module upgrade announcement
        • KEY ID Ethereum Contracts Upgrade Pending Time Adjustment
        • KEY ID Ethereum AccountLogic/DualsigsLogic Contracts Upgrade
        • KEY ID Ethereum DappLogic Contract Upgrade
  • Development Resources
    • Ethereum
    • EOS
  • Join Us
    • DApp submit
    • Developers Community
Powered by GitBook
On this page
  • ↳ Getting started
  • ↳ Smart Contract Languages
  • ↳ Language Specific Resources
  • ↳ Frameworks
  • ↳ Other Tools
  • ↳ Integrated Development Environments (IDEs)
  • ↳ Frontend JavaScript APIs
  • ↳ Backend APIs
  • ↳ Storage
  • ↳ Smart Contract Security
  • ↳ Formal Verification
  • ↳ Block Explorers
  • ↳ Testnets and Faucets
  • ↳ Clients & Running your own Node
  • ↳ Clients
  • ↳ Running your own node
  • ↳ Best Practices, Patterns, and Anti-patterns
  • ↳ Smart Contracts
  • ↳ Security
  • ↳ Developer Support & Training
  • ↳ General Learning
  • ↳ Game-Based Learning
  • ↳ UI/UX Design
  • ↳ Standards

Was this helpful?

  1. Development Resources

Ethereum

PreviousKEY ID Ethereum DappLogic Contract UpgradeNextEOS

Last updated 5 years ago

Was this helpful?

Guides, resources, and tools for developers building on Ethereum.

Getting started

If you’re new to developing with Ethereum, you’re in the right place. These guides written by the Ethereum community will introduce you to the basics of the Ethereum stack and introduce core concepts that might be different from other app development you’re familiar with.

Want to start coding right away? .

Need a more basic primer first? Check out our .

Helpful Resources

  • Aug 7, 2017 - Matt Condon

  • May 11, 2018 - Facu Spagnuolo

  • July 24, 2018 - Facu Spagnuolo

  • Jan 14, 2018 - dev_zl

  • Feb 13, 2019 - Wil Barnes

  • Feb 2019 - Mahesh Murthy

  • Dec 1, 2018 - Andreas Antonopoulos & Gavin Wood

  • Updated often - ConsenSys

  • Aug 13, 2018 - Alejandro Santander & Leo Arias

  • Updated Often - Joshua Cassidy

Solidity - The most popular language on Ethereum, inspired by C++, Python and JavaScript.

Vyper - Security focused language for Ethereum, based on Python.

Looking for other options?

We're building a suite of language-specific landing pages for developer to learn about Ethereum in their preferred programming language.

Truffle - A development environment, testing framework, build pipeline, and other tools.

Superblocks - Code, compile and deploy contract online.

Embark - A development environment, testing framework, and other tools integrated with Ethereum, IPFS, and Whisper.

Waffle - A framework for advanced smart contract development and testing (based on ethers.js).

Etherlime - Ethers.js based framework for dapp development (Solidity & Vyper), deployment, debugging, testing and more.

Ethereum Grid - A desktop application for downloading, configuring, and running Ethereum clients and tools.

Buidler - A task runner for Ethereum smart contract developers.

OpenZeppelin SDK - The Ultimate Smart Contract Toolkit: A suite of tools to help you develop, compile, upgrade, deploy and interact with smart contracts.

The Graph - A protocol for indexing Ethereum and IPFS data and querying it using GraphQL.

Tenderly - A platform to easily monitor your smart contracts with error tracking, alerting, performance metrics, and detailed contract analytics.

Python Tooling - Variety of libraries for Ethereum interaction via Python.

Brownie - Python-based development environment and testing framework.

web3j - A Java/Android/Kotlin/Scala integration library for Ethereum.

One Click Dapp - Generate a frontend directly from ABI for fast development and testing.

3Box - User-controlled IPFS database storage for data-rich and engaging applications. Support for profiles, encrypted spaces, and messaging, with additional drop-in plugins to simplify development.

Looking for other options?

Ethereum Studio - Web-based IDE ideal for new developers looking to experiment with smart contracts. Ethereum Studio features multiple templates, MetaMask integration, transaction logger, and a built in-browser Ethereum Virtual Machine (EVM) to help you get started building on Ethereum as fast as possible.

Visual Studio Code - Professional cross-platform IDE with official Ethereum support.

Remix - Web-based IDE with built in static analysis, and a test blockchain virtual machine.

EthFiddle - Web-based IDE that lets you write, compile, and debug your smart contract.

Looking for other options?

Web3.js - Ethereum JavaScript API.

Ethers.js - Complete Ethereum wallet implementation and utilities in JavaScript and TypeScript.

light.js - A high-level reactive JS library optimized for light clients.

Web3-wrapper - Typescript alternative to Web3.js.

Looking for other options?

Alchemy - Ethereum API and developer tools.

Infura - The Ethereum API as a service.

Cloudflare Ethereum Gateway.

Nodesmith - JSON-RPC API access to Ethereum mainnet and testnets.

Chainstack - Shared and dedicated Ethereum nodes as a service.

QuikNode - Blockchain developer platform.

IPFS - InterPlanetary File System is a decentralized storage and file referencing system for Ethereum.

Swarm - A distributed storage platform and content distribution service for the Ethereum web3 stack.

OrbitDB - A decentralized peer to peer database on top of IPFS.

Slither - Solidity static analysis framework written in Python 3.

MythX - Security analysis API for Ethereum smart contracts.

Mythril - Security analysis tool for EVM bytecode.

SmartContract.Codes - Search engine for verified solidity source codes.

Manticore - A command line interface that uses a symbolic execution tool on smart contracts and binaries.

Securify - Security scanner for Ethereum smart contracts.

ERC20 Verifier - A verification tool used to check if a contract complies with the ERC20 standard.

Information on Formal Verification

Looking for other options?

Solidity-Coverage - Alternative solidity code coverage tool.

hevm - Implementation of the EVM made specifically for unit testing and debugging smart contracts.

Whiteblock Genesis - An end-to-end development sandbox and testing platform for blockchain.

Looking for other options?

Block explorers are services that let you browse the Ethereum blockchain (and its testnets), by finding information about specific transactions, blocks, contracts, and other on-chain activity.

The Ethereum community maintains multiple testnets. These are used by developers to test their applications under different conditions before deploying to the Ethereum mainnet.

Ropsten - Proof of Work blockchain, test-ether can be mined.

Rinkeby - Proof of Authority blockchain, maintained by the Geth development team.

Goerli - Cross-client Proof of Authority blockchain, built and maintained by the Goerli community

Geth - Ethereum clients written in Go.

Parity - Ethereum client written in Rust.

Hyperledger Besu - Ethereum client written in Java.

Nethermind - Ethereum client written in C# .NET Core.

Ethnode - Run an Ethereum node (Geth or Parity) for local development.

Ethereum Node Resources

Looking for other options?

DappSys - Safe, simple, flexible building-blocks for smart-contracts.

OpenZeppelin Contracts - Library for secure smart contract development.

aragonOS - Patterns for upgradeability & permission control.

Smart Contract Weakness Registry

Smart Contract Security Best Practices Guide

Smart Contract Security Verification Standard (SCSVS)

Looking for other options?

Ethereum Stackexchange

ConsenSys Academy - An end-to-end Ethereum developer course that is self-paced and open year-round.

Solidity Gitter Chatroom

All Ethereum Gitter Chatrooms

Chainshot - Web based dapp coding tutorials.

Blockgeeks - Online courses on blockchain technology.

DappUniversity - Learn to build decentralized applications on the Ethereum blockchain.

B9lab Academy - Home of the oldest professional Ethereum dapp developer course & further learning for auditors and QA. Incl. mentoring and code review.

Cryptozombies - Learn to code games on ethereum.

Ethernaut - Solidity based wargame where each level is a contract to be hacked.

Capture the Ether - The game of Ethereum smart contract security.

Rimble UI - Adaptable components and design standards for decentralized applications.

Smart Contract Languages

Any program that runs on the Ethereum Virtual Machine (EVM) is commonly referred to as a “smart contract”. The most popular languages for writing smart contracts on Ethereum are Solidity and Vyper, though there are .

Language Specific Resources

More coming soon! Don't see your language here? !

Ethereum has a large and growing number of tools to help developers build, test, and deploy their applications. Below are the most popular tools to get you started. If you want to dive deeper, check out this .

Frameworks

Other Tools

Integrated Development Environments (IDEs)

Frontend JavaScript APIs

Backend APIs

Storage

Smart Contract Security

Formal Verification

July 20, 2018 - Brian Marick

Jan 29, 2018 - Bernard Mueller

Block Explorers

Testnets and Faucets

Clients & Running your own Node

The Ethereum network is made up of many nodes who run compatible client software. The majority of these nodes run or , each of which can be configured in different ways according to your needs.

Clients

Running your own node

Jan 5, 2019 - Afri Schoeden

Oct 26, 2019 - Greg Jeanmart

Best Practices, Patterns, and Anti-patterns

Smart Contracts

Security

Developer Support & Training

General Learning

Game-Based Learning

UI/UX Design

June 25, 2018 - Anna Rose

March 22, 2018 - Sarah Baker Mills

Standards

The Ethereum community has adopted many standards that are helpful to developers. Typically these are introduced as (EIPs), which are discussed by community members through a .

March 31, 2019 - Boris Mann

(YouTube Playlist)

Certain EIPs relate to application-level standards (e.g. a standard smart-contract format), which are introduced as . Many ERCs are critical standards used widely across the Ethereum ecosystem.

Above contents are from page:

↳
Start building here
learning resources
Getting up to speed on Ethereum
Ethereum In Depth, Part 1
Ethereum In Depth, Part 2
Ethereum Development Walkthrough, Parts 1-5
Ethereum 101, Parts 1-7
Full Stack Hello World Voting Ethereum Dapp Tutorial
Mastering Ethereum - A comprehensive textbook available for free online
Ethereum Developer Portal - Everything you need to get started building on Ethereum
Deconstructing a Solidity Contract
Full Stack Dapp Tutorial Series
↳
others under development
Documentation
GitHub
Solidity Gitter Chatroom
Documentation
GitHub
Vyper Gitter Chatroom
Ethereum Developers Tools List #SmartContractLanguages
↳
Ethereum for Java developers
Ethereum for Python developers
Ethereum for JavaScript developers
Ethereum for Go developers
Ethereum for Rust developers
Ethereum for .NET developers
Open up an issue
comprehensive list
↳
trufflesuite.com
GitHub
GitHub
Documentation
Documentation
GitHub
getwaffle.io
GitHub
Documentation
GitHub
↳
grid.ethereum.org
GitHub
buidler.dev
GitHub
OpenZeppelin SDK
GitHub
Community Forum
The Graph
Graph Explorer
Documentation
GitHub
Discord
tenderly.dev
GitHub
Discord
py.ethereum.org
web3.py GitHub
web3.py Chat
Documentation
GitHub
web3j.io
GitHub
Docs
Gitter
OneClickDapp.com
Truffle Plugin
Remix Plugin
GitHub
3Box
3Box.js
3Box Plugins
Ethereum Developer Tools List #Frameworks
↳
studio.ethereum.org
superblocks.com/ethereum-studio
GitHub
Visual Studio Code
Azure Blockchain Development Kit for Ethereum
Azure Blockchain Workbench plugin
Code samples
GitHub
remix.ethereum.org
ethfiddle.com
Gitter
Ethereum Developer Tools List #IDEs
↳
Documentation
GitHub
Documentation
GitHub
Documentation
GitHub
Documentation
GitHub
Ethereum Developer Tools List #Frontend-Ethereum-APIs
↳
alchemyapi.io
GitHub
infura.io
Documentation
GitHub
cloudflare-eth.com
nodesmith.io
Documentation
chainstack.com
Documentation
quiknode.io
↳
ipfs.io
Documentation
GitHub
Swarm
GitHub
Documentation
GitHub
↳
GitHub
mythx.io
Documentation
mythril
Documentation
smartcontract.codes (alpha)
Documentation
GitHub
Documentation
securify.chainsecurity.com
Discord
erc20-verifier.openzeppelin.com
Forum
↳
How formal verification of smart-contacts works
How Formal Verification Can Ensure Flawless Smart Contracts
Ethereum Developer Tools List #Security-Tools
GitHub
GitHub
DappHub Chat
Whiteblock.io
Documentation
GitHub
Ethereum Developer Tools List #Testing-Tools
↳
Etherscan
Blockscout
Etherchain
↳
Test-ether faucet
Test-ether faucet
Universal faucet
Test-ether faucet
goerli.net
Universal faucet
↳
Geth
Parity
↳
GitHub
Discord chat
parity.io
GitHub
pegasys.tech
GitHub
Nethermind.io
GitHub
Gitter
↳
GitHub
Node Configuration Cheat Sheet
Running an Ethereum Full Node on a RaspberryPi 4
Ethereum Developer Tools List #Ethereum-clients
↳
↳
dapp.tools/dappsys
GitHub
openzeppelin.com/contracts/
GitHub
Community Forum
hack.aragon.org
Documentation
SWC registry
GitHub
↳
consensys.github.io/smart-contract-best-practices/
GitHub
Aggregated collection of security recommendations and best practices
securing.github.io/SCSVS/
Ethereum Developer Tools List #Patterns—best-practices
↳
↳
ethereum.stackexchange.com
consensys.academy
gitter.im/ethereum/solidity
gitter.im/ethereum/home
chainshot.com
courses.blockgeeks.com
DappUniversity.com
academy.b9lab.com
↳
Cryptozombies.io
ethernaut.openzeppelin.com
capturetheether.com
↳
Challenge of UX in Ethereum
Designing for blockchain: what’s different and what’s at stake
rimble.consensys.design
GitHub
↳
Ethereum Improvement Proposals
standard process
List of EIPs
EIP github repo
EIP discussion board
Ethereum Governance Overview
Playlist of all Ethereum Core Dev Meetings
Ethereum Requests for Comment (ERC)
List of ERCs
ERC20 - A standard interface for tokens
ERC721 - A standard interface for non-fungible tokens
https://ethereum.org/developers/#getting-started