Com o lançamento do RAD Studio 12.2 (Athens), a Embarcadero introduziu uma tecnologia que resolve uma lacuna antiga para desenvolvedores que desejam criar interfaces web modernas sem abandonar a robustez do backend em Delphi ou C++Builder: o WebStencils.
O WebStencils é uma infraestrutura de processamento de páginas no lado do servidor (Server-Side Rendering – SSR). Ele atua como um mecanismo de templating que permite fundir arquivos HTML padrão com dados dinâmicos processados pelo servidor, facilitando a criação de sites navegáveis, CRMs e ERPs web.
O Que Torna o WebStencils Especial?
A grande vantagem do WebStencils é a liberdade. Diferente de frameworks que impõem uma estrutura rígida, ele permite que você utilize qualquer biblioteca CSS (como Bootstrap ou Tailwind) e qualquer biblioteca JavaScript (como o poderoso HTMX).
Principais Características:
- Sintaxe Baseada em
@: Inspirada em mecanismos modernos (como o Razor do ASP.NET), a sintaxe é limpa e intuitiva. - Integração Nativa com FireDAC: Você pode passar um
TDataSetdiretamente para o processador de templates. - Template Inheritance (Herança de Layout): Com os comandos
@LayoutPagee@RenderBody, você define um layout base e apenas “recheia” o conteúdo central. - Foco em HTMX: O par perfeito para atualizações parciais de página sem escrever JavaScript complexo.
Exemplos Práticos: Mão na Massa
Para entender o poder da ferramenta, vamos ver como implementar cenários comuns do dia a dia.
1. Master Page (Layout Principal)
Em vez de repetir o menu em todas as páginas, você cria um _layout.html:
<html>
<head>
<title>Meu Sistema Web</title>
<link rel="stylesheet" href="/css/style.css">
</head>
<body>
<nav>
<a href="/">Home</a> | <a href="/clientes">Clientes</a>
</nav>
<main>
@RenderBody </main>
<footer>Powered by Delphi & WebStencils</footer>
</body>
</html>
2. Exibindo Dados de um DataSet (Listagem)
Na sua página de clientes (clientes.html), você utiliza o @foreach para iterar sobre os dados do banco:
@LayoutPage _layout.html
<h1>Lista de Clientes</h1>
<table>
<thead>
<tr>
<th>ID</th>
<th>Nome</th>
</tr>
</thead>
<tbody>
@foreach cliente in dtsClientes {
<tr>
<td>@cliente.ID</td>
<td>@cliente.NOME</td>
</tr>
}
</tbody>
</table>
3. Lógica Condicional no HTML
Você pode exibir informações baseadas em regras de negócio diretamente no template:
@if cliente.Saldo < 0 {
<span style="color: red;">Inadimplente</span>
} @else {
<span style="color: green;">Em dia</span>
}
4. O Lado do Delphi (Backend)
No seu servidor WebBroker ou RAD Server, a configuração é extremamente simples:
procedure TWebModule1.WebActionItem1Action(Sender: TObject; Request: TWebRequest;
Response: TWebResponse; var Handled: Boolean);
begin
// Carrega os dados
qryClientes.Open;
// Configura o processador
WebStencilsProcessor1.InputFileName := 'wwwroot/clientes.html';
// Adiciona o DataSet como uma variável para o HTML
WebStencilsProcessor1.AddVar('dtsClientes', qryClientes);
// Processa e devolve o HTML final
Response.Content := WebStencilsProcessor1.Content;
end;
O Futuro: WebBroker, RAD Server e Além
O WebStencils pode ser utilizado tanto com WebBroker (ideal para sites e portais) quanto com RAD Server. A Embarcadero já sinalizou que melhorias estão a caminho, como suporte a code completion para as tags @ dentro da IDE e uma integração ainda mais profunda com o ecossistema web moderno.
Se você busca uma forma de levar suas aplicações Delphi para a web de maneira profissional, escalável (rodando em Linux via Docker) e com alta performance, o WebStencils é o caminho.
Referências
EMBARCADERO. WebStencils. Disponível em: https://docwiki.embarcadero.com/RADStudio/Athens/en/WebStencils. Acesso em: 07 jan. 2026.
ZAPATER, Antonio. Try WebStencils Live: Our New Public Demo is Here. Embarcadero Blog, 2026. Disponível em: https://blogs.embarcadero.com/try-webstencils-live-our-new-public-demo-is-here/. Acesso em: 07 jan. 2026.
GOMES, Landerson. Dev Lounge #17 (WebStencils no RAD Studio 12.2). YouTube, 22 nov. 2024. Disponível em: https://www.youtube.com/watch?v=dMrQVcw6ej8. Acesso em: 07 jan. 2026.
GOMES, Landerson. O novíssimo WebStencils é pauta do próximo Dev Lounge. LinkedIn, 2024. Disponível em: https://www.linkedin.com/pulse/o-novíssimo-webstencils-é-pauta-do-próximo-dev-lounge-landerson-gomes-vgzjf/. Acesso em: 07 jan. 2026.
Descubra mais sobre Régys Borges da Silveira
Assine para receber nossas notícias mais recentes por e-mail.
Dê-nos sua opinião, seu comentário ajuda o site a crescer e melhorar a qualidade dos artigos.