# Injected languages (HTML + CSS + JS) (/recipes/injected-languages-html-css-js)

### JavaScript / TypeScript

```js
import html from '@lumis-sh/wasm-html'
import css from '@lumis-sh/wasm-css'
import javascript from '@lumis-sh/wasm-javascript'

const hl = await createHighlighter({
  languages: [html, css, javascript],
})
const output = hl.highlight(
  source,
  htmlInline({language: html, theme: frappe}),
)
```

### Rust

```rust
let html = highlight(source, HtmlInlineBuilder::new()
    .language(Language::HTML)
    .theme(Some(themes::get("catppuccin_frappe").unwrap()))
    .build()
    .unwrap());
```

### Elixir

```elixir
Lumis.highlight!(source,
  formatter:
    {:html_inline,
     language: "html", theme: "catppuccin_frappe"}
)
```


Load every participating language with the JavaScript / TypeScript API, not just the outer one.