We usually have many development efforts going on at once with the node, the GUI, and the contracts. Check out the project tracker (linked below) to see the current development status.
We do not usually give time frames unless something is visibly near completion on the project tracker. This includes main net, contracts, and integration with other projects. If something is immediately pending to be merged within the code base, it will be visible as an open PR (pull request) in the repository.
We are always looking for talented and experienced individuals. Please send your résumé/CV to email@example.com.
You can set up a node to run on a test network or the Ethereum mainnet right now. The node will not be able to participate in fulfilling shared requests yet, but will in the near future. However, it can be used to fulfill requests sent to it and you can add external adapters to it for extending its functionality.
Running a Chainlink Node
You will be able to run a Chainlink node with 0 LINK, however, you will not be able to participate in requests that require a deposit until you’ve earned some LINK first. Requesters may specify an amount of LINK that all nodes must deposit as a penalty fee in case the node doesn’t fulfill the request. However, since penalty fees are optional, not all requests will require it.
The hardware requirements of the Chainlink node are very minimal to start with. For example, Chainlink can be compiled and effectively ran on a Raspberry Pi. You may need to add resources only if your node receives extremely frequent usage. However, connectivity to an Ethereum client is required for communication with the blockchain. Hardware requirements of Ethereum clients may change over time.
The Chainlink node can fulfill requests from open (unauthenticated) APIs out-of-the-box, without the need for External Adapters. For these requests, requesters would supply the URL to the open API they wish each node to retrieve, and the Chainlink node will use its core adapters to fulfill the request.
Currently, the community maintains lists of available external adapters.
Chainlink External Adapter List
Under the current architecture, with a node operator using their own oracle contract on-chain in order to fulfill requests, it would only be realistically possible to see the number of active nodes by utilizing an off-chain listing service. With the service agreement protocol, which will utilize the Coordinator contract, it should be possible to see the history of nodes that have registered with it on-chain. However, a listing service would provide additional capabilities that aren't available on-chain, like displaying information about the nodes which the node operator has provided. The general nodes ran by the Chainlink team are available on the Decentralized Oracles (Testnet) and Decentralized Oracles (Mainnet) pages, and specialized Chainlinks are available as well.
We are currently running a node on the Ropsten test network and can fulfill requests from any open API endpoint. We have a guide available to show how to create and deploy a contract on Ropsten. That contract may be modified to fit your specific use-case. Feel free to ask questions in the community about how to make changes to the contract.
Yes, the Chainlink node can connect to most APIs out-of-the-box. Some APIs require authentication by providing request headers for the operator's API key, which the Chainlink node supports. Additionally, external adapters allow for connectivity to any resource as long as the adapter conforms to a minimal JSON specification for communicating to and from the Chainlink node.
There will be a listing service provided by us, and the ability for additional listing services created by 3rd parties, that will display information on nodes. For now, we have a page with our Addresses & Job IDs and available Chainlinks. You can use the
sendChainlinkRequestTo method to create requests to multiple oracles.
The LINK token is an ERC677 token that inherits functionality from the ERC20 token standard and allows token transfers to contain a data payload. It is used to pay node operators for retrieving data for smart contracts and also for deposits placed by node operators as required by contract creators.
Any wallet that handles ERC20 tokens should work fine. The ERC677 token standard that the LINK token implements still retains all functionality of ERC20 tokens.
No. The Chainlink network’s main net will operate on top of the Ethereum main net. As additional smart contract platforms gain native support by the Chainlink network in the future, details will be released about how to transfer LINK to that blockchain.