Welcome to the Corda documentation! =================================== .. warning:: This build of the docs is from the "|version|" branch, not a milestone release. It may not reflect the current state of the code. `Read the docs for milestone release M10.1 `_. `Corda `_ is an open-source distributed ledger platform. The latest *milestone* (i.e. stable) release is M10.1. 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 you 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. .. note:: Corda training is now available in London, New York and Singapore! `Learn more. `_ Corda is designed so that developers can easily extend its functionality by writing CorDapps (**Cor**\ da **D**\ istributed **App**\ lication\ **s**\ ). Some example CorDapps are available in the Corda repo's `samples `_ directory. To run these yourself, make sure you follow the instructions in :doc:`getting-set-up`, then go to :doc:`running-the-demos`. If, after running the demos, you're interested in writing your own CorDapps, you can use the `CorDapp template `_ as a base. A simple example CorDapp built upon the template is available `here `_, and a video primer on basic CorDapp structure is available `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 `_. .. _`Introductory white paper`: _static/corda-introductory-whitepaper.pdf .. _`Technical white paper`: _static/corda-technical-whitepaper.pdf Documentation Contents: ======================= .. toctree:: :maxdepth: 2 :caption: Getting started inthebox getting-set-up getting-set-up-fault-finding running-the-demos CLI-vs-IDE .. toctree:: :maxdepth: 2 :caption: Key concepts key-concepts key-concepts-ecosystem key-concepts-data-model key-concepts-core-types key-concepts-financial-model key-concepts-flow-framework key-concepts-consensus-notaries key-concepts-vault key-concepts-security-model .. toctree:: :maxdepth: 2 :caption: CorDapps creating-a-cordapp tutorial-cordapp .. toctree:: :maxdepth: 2 :caption: The Corda node versioning shell serialization clientrpc messaging persistence node-administration corda-configuration-file corda-plugins node-services node-explorer permissioning .. toctree:: :maxdepth: 2 :caption: Tutorials tutorial-contract tutorial-contract-clauses tutorial-test-dsl contract-upgrade tutorial-integration-testing tutorial-clientrpc-api tutorial-building-transactions flow-state-machines flow-testing running-a-notary using-a-notary oracles tutorial-attachments event-scheduling .. toctree:: :maxdepth: 2 :caption: Other network-simulator clauses merkle-trees json .. toctree:: :maxdepth: 2 :caption: Component library contract-catalogue contract-irs .. toctree:: :maxdepth: 2 :caption: Appendix loadtesting demobench setting-up-a-corda-network secure-coding-guidelines release-process release-notes changelog codestyle building-the-docs further-notes-on-kotlin publishing-corda azure-vm out-of-process-verification .. toctree:: :maxdepth: 2 :caption: Glossary glossary