---
title: 'HTML with html!'
description: 'Its HTML but not quite!'
comment: 'Keep this file as short and simple as possible. Its purpose is to ease the reader into components in Yew instead of providing proper API docs'
---
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
You can write expressions resembling HTML with the `html!` macro. Behind the scenes, Yew turns
it into rust code representing the DOM to generate.
```rust
use yew::prelude::*;
let my_header: Html = html! {
};
```
Similar to format expressions, there is an easy way to embed values from the surrounding
context into the HTML by applying curly brackets:
```rust
use yew::prelude::*;
let header_text = "Hello world".to_string();
let header_html: Html = html! {
{"My age is: "}{count}
}; let combined_html: Html = html! {