# Blocks

An app is simply a sequence of events.

The best apps define an elegant sequence of events that happen without the user even noticing. A great sign in flow for example can happen in seconds but the logic and sequence behind them is a work of art that has been iterated on many times (often using Thunkable's [Live Testing](https://docs.thunkable.com/snap-to-place/get-started/live-test) app).

This is where Thunkable Blocks come in.

Thunkable Blocks are the building blocks of a great experience for your app users. Every component has its own set of blocks to start or trigger an event and set and change properties.

They can be connected to a commonly used set of blocks that range from opening screens, setting up logic, reformatting data or simplifying code.

{% content-ref url="control" %}
[control](https://docs.thunkable.com/snap-to-place/control)
{% endcontent-ref %}

{% content-ref url="logic" %}
[logic](https://docs.thunkable.com/snap-to-place/logic)
{% endcontent-ref %}

{% content-ref url="math" %}
[math](https://docs.thunkable.com/snap-to-place/math)
{% endcontent-ref %}

{% content-ref url="text" %}
[text](https://docs.thunkable.com/snap-to-place/text)
{% endcontent-ref %}

{% content-ref url="lists" %}
[lists](https://docs.thunkable.com/snap-to-place/lists)
{% endcontent-ref %}

{% content-ref url="color" %}
[color](https://docs.thunkable.com/snap-to-place/color)
{% endcontent-ref %}

{% content-ref url="objects" %}
[objects](https://docs.thunkable.com/snap-to-place/objects)
{% endcontent-ref %}

{% content-ref url="device" %}
[device](https://docs.thunkable.com/snap-to-place/device)
{% endcontent-ref %}

{% content-ref url="variables" %}
[variables](https://docs.thunkable.com/snap-to-place/variables)
{% endcontent-ref %}

{% content-ref url="functions" %}
[functions](https://docs.thunkable.com/snap-to-place/functions)
{% endcontent-ref %}

{% content-ref url="data-sources" %}
[data-sources](https://docs.thunkable.com/snap-to-place/data-sources)
{% endcontent-ref %}

{% content-ref url="any-component-blocks" %}
[any-component-blocks](https://docs.thunkable.com/snap-to-place/any-component-blocks)
{% endcontent-ref %}
