# Minimal HTML (/recipes/minimal-html)

### JavaScript / TypeScript

```js
import {highlight} from '@lumis-sh/lumis'
import {htmlInline} from '@lumis-sh/lumis/formatters'
import javascript from '@lumis-sh/wasm-javascript'
import frappe from '@lumis-sh/themes/catppuccin_frappe'

const html = await highlight(
  'const x = 1',
  htmlInline({language: javascript, theme: frappe}),
)
```

### Rust

```rust
use lumis::{
    highlight, languages::Language, themes,
    HtmlInlineBuilder,
};

let html = highlight(
    "const x = 1",
    HtmlInlineBuilder::new()
        .language(Language::JavaScript)
        .theme(Some(
            themes::get("catppuccin_frappe").unwrap(),
        ))
        .build()
        .unwrap(),
);
```

### Elixir

```elixir
html =
  Lumis.highlight!("const x = 1",
    formatter:
      {:html_inline,
       language: "javascript", theme: "catppuccin_frappe"}
  )
```

### Java

```java
import io.roastedroot.lumis4j.core.Lang;
import io.roastedroot.lumis4j.core.Lumis;
import io.roastedroot.lumis4j.core.Theme;

var lumis = Lumis.builder().build();

var highlighter = lumis.highlighter()
    .withLang(Lang.JAVASCRIPT)
    .withTheme(Theme.CATPPUCCIN_FRAPPE)
    .build();

var html = highlighter.highlight("const x = 1").string();
```

### CLI

```bash
lumis highlight index.js \
  --formatter html-inline \
  --theme catppuccin_frappe
```