- Notifications
You must be signed in to change notification settings - Fork2.3k
License
trufflesuite/truffle
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
⚠️ The Truffle Suite is being sunset. For information on ongoing support, migration options and FAQs, visit theConsensys blog. Thank you for all the support over the years.
Truffle is a development environment, testing framework, and asset pipeline for Ethereum, aiming to make life as an Ethereum developer easier. With Truffle you get:
- Built-in smart contract compilation, linking, deployment and binary management.
- Automated contract testing with Mocha and Chai.
- Configurable build pipeline with support for custom build processes.
- Scriptable deployment & migrations framework.
- Network management for deploying to many public & private networks.
- Interactive console for direct contract communication.
- Instant rebuilding of assets during development.
- External script runner that executes scripts within a Truffle environment.
ℹ️Contributors: Please see theDevelopment section of this README. |
---|
$ npm install -g truffle
Note: To avoid any strange permissions errors, we recommend usingnvm.
For a default set of contracts and tests, run the following within an empty project directory:
$ truffle init
From there, you can runtruffle compile
,truffle migrate
, andtruffle test
to compile your contracts, deploy those contracts to the network, and run their associated unit tests.
Truffle comes bundled with a local development blockchain server that launches automatically when you invoke the commands above. If you'd like toconfigure a more advanced development environment we recommend you install the blockchain server separately by runningnpm install -g ganache
at the command line.
- ganache: a command-line version of Truffle's blockchain server.
- ganache-ui: A GUI for the server that displays your transaction history and chain state.
Please see theOfficial Truffle Documentation for guides, tips, and examples.
We welcome pull requests. To get started, just fork this repo, clone it locally, and run:
# Installnpm install -g yarnyarn bootstrap# Testyarntest# Adding dependencies to a packagecd packages/<truffle-package>yarn add<npm-package> [--dev]# Use yarn
If you'd like to update a dependency to the same version across all packages, you might findthis utility helpful.
Notes on project branches:
master
: Stable, released version (v5)beta
: Released beta versiondevelop
: Work targeting stable release (v5)next
: Not currently in use
Please make pull requests againstdevelop
.
There is a bit more information in theCONTRIBUTING.md file.