Code Monkey home page Code Monkey logo

ethereum-alarm-clock's Introduction

Ethereum Alarm Clock

Join the chat at https://gitter.im/ethereum-alarm-clock/ethereum-alarm-clock Build Status Documentation Status Greenkeeper badge

Homepage: Ethereum Alarm Clock

Looking to download the DApp?: Latest Releases

What is the EAC (Ethereum Alarm Clock)

The Ethereum Alarm Clock is a smart contract protocol for scheduling Ethereum transactions to be executed in the future. It allows any address to set the parameters of a transaction and allow executors (known as TimeNodes) to call these transactions during the desired window. The EAC is agnostic to callers so can be used by both human users and other smart contracts. Since all of the scheduling logic is contained in smart contracts, transactions can be scheduled from solidity, and developers can rely on it as a core piece of their smart contract of decentralized application.

Additionally the EAC faciliates the execution of this pool of scheduled transactions through the TimeNode. The EAC TimeNode continuously runs and watches for transactions which are scheduled to be executed soon then claims and later executes them. For the EAC to be successful it depends on users to run TimeNodes. There are a few ways incentives for running these TimeNodes are baked in to the protocol itself via the claiming mechanism and the bounty payout.

See here for more information about how to run a TimeNode.

Documentation

Documentation can be found on Read the Docs.

We are in progress of migrating the documentation to the Wiki.

Deployment

Deployed version is 1.0.0-rc.2

You can find the address for each network in the networks folder.

Using the CLI

Please see the cli repository for the commandline client.

Running the tests

Please ensure you are using node version at least 8.0.0 and have truffle and ganache-cli installed.

nvm use lts/carbon
npm i
npm i -g [email protected] 
npm i -g ganache-cli

Start ganache-cli in a terminal screen by running ganache-cli.

In another terminal screen run npm test at the root of the directory. This will run the npm test script that splits up the tests into different runtimes. The tests are split because the EAC is a moderately sized project and running all the tests with one command has a tendency to break down the ganache tester chain.

Each time you run the tests it is advised to rebuild your build/ folder, as this may lead to bugs if not done. You can do this by running the command rm -rf build/.

Thanks and support

ethereum-alarm-clock's People

Contributors

pipermerriam avatar lsaether avatar kosecki123 avatar veox avatar adibas03 avatar greenkeeper[bot] avatar e00dan avatar kidsil avatar herecomesjaycee avatar josipbagaric avatar gitter-badger avatar tiagosh avatar hrldcpr avatar rimrakhimov avatar vkandy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.