Getting Started
This section guides Developers who are new to Corda 5 from setting up their development environment through to writing, compiling, and running their first basic CorDapp.
Developer Preview 2 is, as the name suggests, a developer preview. It is not a product released and supported by R3. As a result:
- Do not release anything built on Developer Preview 2 into Production.
- There is no support for Developer Preview 2 but we are keen to receive community feedback.
- There are no guarantees around API stability.
- The tooling described in this section is experimental and may or may not be delivered in the GA release of Corda 5.
- There are likely to be bugs. If you raise a bug with us, we will consider them for fixing.
Developer Preview 1 vs Developer Preview 2
Developer Preview 1 was effectively a taster for the Corda 5 API. It was however, mostly based on Corda 4 under the hood. Developer Preview 2 is the real deal, based entirely on the new Corda 5 code base with possibly material differences in the API. As a result, code written for Developer Preview 1 is unlikely to work with Developer Preview 2 without modification. You can not use any artefacts released from Developer Preview 1 for Developer Preview 2.
Kotlin vs Java
The Getting Started documentation and templates are currently only in Kotlin. We are working to provide Java versions as soon as possible, but it may be a short time after the release of DP2.
For Java Developers used to working with Corda 4, or those who have some familiarity with Kotlin, it should be possible to work out how to implement the examples in Java without too many problems.
Corda 4 vs Corda 5
Corda 5 is a complete re-write of Corda 4. This was necessary to achieve the massive gains in non-functional performance that Corda 5 offers. When writing CorDapps, some things will seem familiar and some things will feel different. For example, the basic mechanism of flows is similar, whereas the structure of the Corda network, the way flows are tested, and the way flows are instantiated (via REST) have changed significantly. You can read more about these changes in the Introduction.
This documentation does not assume any prior knowledge of Corda 4.
Ledger
As at the cut for Developer Preview 2, the Corda 5 ledger is not at the stage of development where it can be usefully previewed, hence there is no ledger in Developer Preview 2. There are however some of the ledger building blocks around cryptography, serialization, and persistence and so with a bit of extra work you can still prototype useful distributed ledger applications.
Other Sources of Documentation
Aside from this documentation, there is also the corda-runtime-os Wiki which has useful information about working with Corda. Corda-runtime-os contains the guidance if you want to compile Corda from source.
Was this page helpful?
Thanks for your feedback!
Chat with us
Chat with us on our #docs channel on slack. You can also join a lot of other slack channels there and have access to 1-on-1 communication with members of the R3 team and the online community.
Propose documentation improvements directly
Help us to improve the docs by contributing directly. It's simple - just fork this repository and raise a PR of your own - R3's Technical Writers will review it and apply the relevant suggestions.
We're sorry this page wasn't helpful. Let us know how we can make it better!
Chat with us
Chat with us on our #docs channel on slack. You can also join a lot of other slack channels there and have access to 1-on-1 communication with members of the R3 team and the online community.
Create an issue
Create a new GitHub issue in this repository - submit technical feedback, draw attention to a potential documentation bug, or share ideas for improvement and general feedback.
Propose documentation improvements directly
Help us to improve the docs by contributing directly. It's simple - just fork this repository and raise a PR of your own - R3's Technical Writers will review it and apply the relevant suggestions.