Codius is Open Source


Today, we released the first prototype and source code for Codius, the smart contracts implementation centered around the concept of smart oracles (check out the white paper if you missed it). Codius is open source and everything is available on Github.

Right now the prototype and contracts are written in Javascript but very soon you’ll be able to code smart contracts in any programming language.

This initial release includes a basic version of a host, a test sandbox, and a few examples of what you can do inside the sandbox—which, as we’re continuing to discover, is quite a lot.

We’ve got a first example Bitcoin contract that uses BitcoinJS to sign transactions using the contract’s unique public/private keypair. This lays the groundwork for implementing all kinds of complex logic on top of Bitcoin, Ripple, and other cryptocurrency wallets.

We’re also porting Express.js into the sandbox so that you can have a contract that even acts as a web server. This means that you’ll be able to serve up entire web pages using Codius, which opens the door for building full-fledged services with smart contracts.

And that’s also where you come in. We’re actively looking for developers to help contribute to the open source project. To get involved in the community check out the forum and the chat room on Gitter.

Full release details:

  • codius engine—the system responsible for executing contract code
  • codius-host—the smart oracle software that allows users to upload code, get unique tokens for their contract, and in the near future will handle billing
  • codius-cli—the command line interface for interacting with the engine
  • node-sandbox—the pure javascript sandbox we’re using while we work on getting Google’s Native Client integrated
  • example-helloworld—a simple hello world contract
  • example-require—a sample contract demonstrating how require works inside the sandbox
  • example-bitcoin—a sample bitcoin contract that demonstrates how bitcoinjs can be used inside the sandbox
  • example-webserver—a sample contract demonstrating running a simple webserver inside a contract

See also:

Follow Ripple on Twitter