Icecream.ink

Try the current implementation

Icecream playground

Edit the data and document, then inspect the rendered text.

Render sends both inputs to this website’s server. Use sample data. Output is displayed as text; no AI service is called and no projected command is executed. Data use.

Loading replaces the editor contents.

A JSON object. Up to 16,384 characters and 16 JSON nesting levels.

Tokens on one line; directives on separate lines. Up to 16,384 characters.


Report unknown properties instead of silently rendering empty text. Present null values remain valid.

Ready to render.

Rendered output

Highlighted source from the last successful render

Display highlighting only; the source editor remains authoritative.

Available include: QuoteLine

Use <{#} include(QuoteLine, i) {#}> on its own line. The closing marker is required on that same line. Other template names produce an error. In your own application, supply an IIceDocResolver for your documents.

<{#root.Company}> / <{#parent.Customer}> / <{#this.Name}> x<{Quantity}>

Input limits and the fixed include resolver are website controls, not Icecream language rules. See the reference and resource limits.