Skip to content

Embark 2.3.0 - Plugins, Plugins, Plugins and more!

Compare
Choose a tag to compare
@iurimatias iurimatias released this 08 Feb 11:50
· 5552 commits to master since this release

To Update to 2.2.0


important

Embark's npm package has changed from embark-framework to embark, this sometimes can create conflicts. To update, first uninstall embark-framework 1 to avoid any conflicts with npm uninstall -g embark-framework followed by npm install -g embark

to update from 2.2.4:

npm install -g embark@2.3

afterwards make sure embark version returns 2.3.0. You may want to add "plugins": {} to embark.json

In this release


Plugin support for extending functionality


Plugins

Embarks functionality can now be extended through the use of plugins. You can develop your own or use existing plugins to add new functionality. Examples of possible functionality plugins can provide include:

  • support for ES6, JSX, Coffeescript, Sass, etc..
  • support for new compilers including Viper and LLL.
  • support for contract frameworks or standard contracts (for e.g a plugin for Dappsys)
  • support for different web3 libraries or providers (e.g Infura)
  • plugins that implement new decentralized services, new console commands, contract wrappers, etc..

among many other possible functionality. For more information on how to develop your own plugins please see the plugin documentation. If you want to develop your own plugin and need help don't hesitate to join us at embarks gitter channel

To use a plugin

For example, to use a plugin that adds ES6 and JSX support:

  1. Add the npm package to package.json e.g npm install embark-babel --save
  2. Then add the package to plugins: in embark.json e.g "plugins": { "embark-babel": {} }

Then restart embark, and now you can use ES6 javascript code and JSX templates for your react application.

Update to Embark Demo


Embark Demo with IPFS

The embark demo command was at the time Embark was first released a milestone in the DApp development world, at a time in which there doubts if Ethereum was even possible, here it was a super simple and quick way to get a dapp up and running using a real blockchain.
It was long overdue for a re-paint and Embark new functionality was also missing from it. So It has now been updated to include Embarks support for Decentralized Storage and Decentralized Communication layers. In the sample you can save and load data from IPFS, upload and retrives files, as well as send messages in a P2P manner through Whisper.

Documentation


Documentation

The new documentation for embark is being worked on and available at https://embark.readthedocs.io/en/latest/. If you wish to help out don't hesitate to do a PR or contact me at our gitter channel.

Test Environment


Testing

The test enviroment has been updated, some previous issues have been fixed, and it also supports the new plugin functionality. If you use the test functionality it's recommended that you update to node 6.9.1 and testrpc 3.0.3. Ethersim is not longer supported as explained here

Misc Bugfixes and Improvements


bug fixes

  • Improved automatic gas calculation when deploying a contract.
  • In embark.json specifying a directory now copies each of the files to that directory. e.g "images/": ["app/images/**"],
  • Made EmbarkJS.Messages.sendMessage an async call for whisper (previously it was sync and it would hang until the message was sent)
  • Added `stop()method to stop listening to a channel. e.gvar listener = EmbarkJS.Messages.listenTo({topic: ["topic1"]});``you can now do``listener.stop()``
  • Improved output messages for certain embark commands
  • Clarified which environment to specify when deploying to live net (i.e it's livenet not production)

Chatroom


To discuss about Embark or Dapp development, please join us at the gitter channel

Donations


Thank you

If you like Embark please consider donating to 0xFA239D14c7117C3D2370B2a4c4238534391fadd9