diff --git a/apps/server/src/assets/templates/user-code.html b/apps/server/src/assets/templates/user-code.html
new file mode 100644
index 00000000..04c180b9
--- /dev/null
+++ b/apps/server/src/assets/templates/user-code.html
@@ -0,0 +1,3 @@
+
+
{{value}}
+
diff --git a/packages/account/domain/src/server/use-cases/send-user-code.ts b/packages/account/domain/src/server/use-cases/send-user-code.ts
index 2b403b4e..c57c417a 100644
--- a/packages/account/domain/src/server/use-cases/send-user-code.ts
+++ b/packages/account/domain/src/server/use-cases/send-user-code.ts
@@ -24,6 +24,7 @@ export class SendUserCodeUseCase implements UseCase {
const mail = createMail(
user.contact.email,
+ // render('user-code.html', code)
`${code.value}
`,
`Código de autenticação`
);
diff --git a/packages/shared/util-data/src/server/index.ts b/packages/shared/util-data/src/server/index.ts
index 5f91c8d3..80fcf2e4 100644
--- a/packages/shared/util-data/src/server/index.ts
+++ b/packages/shared/util-data/src/server/index.ts
@@ -1 +1,2 @@
+export * from './templates';
export * from './providers';
diff --git a/packages/shared/util-data/src/server/templates/index.ts b/packages/shared/util-data/src/server/templates/index.ts
new file mode 100644
index 00000000..193c205c
--- /dev/null
+++ b/packages/shared/util-data/src/server/templates/index.ts
@@ -0,0 +1 @@
+export * from './render';
diff --git a/packages/shared/util-data/src/server/templates/render.ts b/packages/shared/util-data/src/server/templates/render.ts
new file mode 100644
index 00000000..65e27ca4
--- /dev/null
+++ b/packages/shared/util-data/src/server/templates/render.ts
@@ -0,0 +1,17 @@
+import { readFileSync } from 'node:fs';
+import { join } from 'node:path';
+
+type Filename = `${string}.html`;
+
+type Context = Record;
+
+/**
+ * O template deve estar no diretório `apps/server/src/assets/templates/`
+ * O contexto deve satisfazer aos valores {{property}} como no template
+ */
+export const render = (file: Filename, context: T) => {
+ const template = readFileSync(join(__dirname, 'assets', 'templates', file));
+ return template.toString('utf-8').replace(/\{\{(\w+)\}\}/g, (_, key) => {
+ return context[key] ? String(context[key]) : '';
+ });
+};