Welcome to the Corda documentation!¶
Warning
This build of the docs is from the “latest” branch, not a milestone release. It may not reflect the current state of the code. Read the docs for milestone release M7.
Corda is an open-source distributed ledger platform. The latest milestone (i.e. stable) release is M7. The codebase is on GitHub, and our community can be found on Slack and in our forum.
If you’re new to Corda, you should start by learning about its motivating vision and architecture. A good introduction is the Introduction to Corda webinar and the Introductory white paper. As they become more familiar with Corda, readers with a technical background will also want to dive into the Technical white paper, which describes the platform’s envisioned end-state.
Corda is designed so that developers can easily extend its functionality by writing CorDapps (Corda Distributed Applications). An example CorDapp is available on Github. To get it running, follow the instructions in the readme, or watch the Corda Developers Tutorial.
Additional CorDapp samples are available in the Corda repo’s samples directory. These are sophisticated CorDapps that implement more complex functionality. You can find directions for running these samples here.
From there, you’ll be in a position to start extending the example CorDapp yourself (e.g. by writing new states, contracts, and/or flows). For this, you’ll want to refer to this docsite, and to the tutorials in particular. If you get stuck, get in touch on Slack or the forum.
Once you’re familiar with Corda and CorDapp development, we’d encourage you to get involved in the development of the platform itself. Find out more about contributing to Corda.
Documentation Contents:¶
- Writing a contract
- Where to put your code
- Starting the commercial paper class
- States
- Commands
- The verify function
- Using state groups
- Checking the requirements
- How to test your contract
- Adding a generation API to your contract
- How multi-party transactions are constructed and transmitted
- Non-asset-oriented smart contracts
- Making things happen at a particular time
- Encumbrances
- Clauses
- Writing a contract using clauses
- Writing a contract test
- Integration testing
- Client RPC API tutorial
- Building transactions
- Writing flows
- Writing flow tests
- Running a notary service
- Using a notary service
- Writing oracle services
- Using attachments
- Event scheduling