# Your first Rell app on Chromia · Learn Chromia

> Start here to build Chromia applications with Rell, the language used to write Chromia decentralized applications (dapps). Over the course you build…

Source: https://chromia.com/learn/book-review/introduction/

Your first Rell app on ChromiaLesson 1 of 26

1. [01Your first Rell app on Chromia](https://chromia.com/learn/book-review/introduction/)
2. [02Set up your project](https://chromia.com/learn/book-review/setup/)
3. [03Rell project structure](https://chromia.com/learn/book-review/rell-structure/)

Part 1: Define your first entity

1. [04Overview](https://chromia.com/learn/book-review/book-entity/)
2. [05Create your first entity](https://chromia.com/learn/book-review/book-entity/tables/)
3. [06Add your first operation](https://chromia.com/learn/book-review/book-entity/basic-operations/)
4. [07Query every book](https://chromia.com/learn/book-review/book-entity/write-queries/)

Part 2: Add a related entity

1. [08Overview](https://chromia.com/learn/book-review/book-review-entity/)
2. [09Define the book review entity](https://chromia.com/learn/book-review/book-review-entity/tables/)
3. [10Add an operation for creating book reviews](https://chromia.com/learn/book-review/book-review-entity/basic-operations/)
4. [11Query all reviews for a book](https://chromia.com/learn/book-review/book-review-entity/write-queries/)

Part 3: Checking and validating inputs

1. [12Overview](https://chromia.com/learn/book-review/input-verification/)
2. [13Verify inputs](https://chromia.com/learn/book-review/input-verification/input-verification/)
3. [14Return structured results from queries](https://chromia.com/learn/book-review/input-verification/structure/)

Part 4: Signing transactions and filtering queries

1. [15Overview](https://chromia.com/learn/book-review/sign-transaction/)
2. [16Sign a transaction](https://chromia.com/learn/book-review/sign-transaction/sign-transaction/)
3. [17Filter and sort query results](https://chromia.com/learn/book-review/sign-transaction/structure/)

Part 5: Blockchain state and transactions explained

1. [18Overview](https://chromia.com/learn/book-review/blockchain-transactions/)
2. [19How blockchain state and transactions work](https://chromia.com/learn/book-review/blockchain-transactions/query-transaction/)
3. [20Walking through an example](https://chromia.com/learn/book-review/blockchain-transactions/example/)

Part 6: Create the client

1. [21Overview](https://chromia.com/learn/book-review/build-client/)
2. [22Prerequisites](https://chromia.com/learn/book-review/build-client/prerequisites/)
3. [23Establishing a connection to Chromia](https://chromia.com/learn/book-review/build-client/sign-transaction/)
4. [24Query the blockchain using postchain-client](https://chromia.com/learn/book-review/build-client/query-blockchain/)
5. [25Complete the example](https://chromia.com/learn/book-review/build-client/complete-example/)

1. [26What’s next?](https://chromia.com/learn/book-review/what-next/)

[Learn](https://chromia.com/learn/)[Your first Rell app on Chromia](https://chromia.com/learn/book-review/)

01 / 26Beginner

# Your first Rell app on Chromia

Start here to build Chromia applications with Rell, the language used to write Chromia decentralized applications (dapps). Over the course you build BookView, a small book review app, and along the way you learn to model data, write queries, and sign transactions.

## What is Chromia?

Chromia is a relational blockchain: it combines a relational database with blockchain capabilities. Because of this, building a dapp on Chromia feels familiar whether your background is enterprise software, game development, or smaller projects.

Chromia also has its own language, Rell, built for both blockchain and database work. Rell is statically typed and more expressive, improves database security, and its data definitions can be up to 7x more compact than SQL.

For more on Chromia and how it is built, read the [Chromia overview](https://docs.chromia.com).

## About the dapp

You build a book review app. Users can add books, write reviews, and give ratings. You also learn several ways to narrow down and filter reviews by specific criteria.

## What will I learn?

When you finish, you will be able to:

* Define entities and the relationships between them.
* Fetch data with queries and apply filters to the results.
* Apply basic validation to protect your app.
* Sign and commit transactions with cryptographic signatures.

The result is a working dapp, running on Rell and the Chromia blockchain, where users add books, write reviews, and fetch reviews using their own filters.

### Related materials

The course builds on the following documentation, which explains the concepts and approaches it uses:

| Section | Type | Documentation |
| --- | --- | --- |
| Overview | Architecture | [Nodes](https://docs.chromia.com/get-started/about/architecture/node/) |
| Overview | Architecture | [Dapps](https://docs.chromia.com/get-started/about/dapp/) |
| Rell | Language features | [Language features](https://docs.chromia.com/rell/language-features/) |

## Repository link

You can find the full source code for this course in the [book review course repository](https://bitbucket.org/chromawallet/book-course).

Written for this site from Chromia’s public course. Code samples are the course’s own.

[← Course**Your first Rell app on Chromia**](https://chromia.com/learn/book-review/)[Next →**Set up your project**](https://chromia.com/learn/book-review/setup/)

On this page

* [What is Chromia?](#what-is-chromia)
* [About the dapp](#about-the-dapp)
* [What will I learn?](#what-will-i-learn)
* [Repository link](#repository-link)
