diff --git a/website/islands/FlowTicker.tsx b/website/islands/FlowTicker.tsx
new file mode 100644
index 0000000..abfdd31
--- /dev/null
+++ b/website/islands/FlowTicker.tsx
@@ -0,0 +1,45 @@
+import { useEffect, useState } from "preact/hooks";
+
+const steps = [
+ {
+ title: "Pedido único, múltiplos laboratórios",
+ text: "A farmácia adiciona itens de diferentes fornecedores e o motor consolida fretes e SLAs por UF.",
+ },
+ {
+ title: "Roteamento e conformidade",
+ text: "Validação de lote, validade e regras ANVISA antes de liberar a ordem para cada laboratório parceiro.",
+ },
+ {
+ title: "Faturamento inteligente",
+ text: "Split automático e emissão de NF com impostos estaduais já calculados para cada remessa.",
+ },
+ {
+ title: "Status em tempo real",
+ text: "Acompanhamento unificado no painel da farmácia e webhooks para ERPs e aplicativos white-label.",
+ },
+];
+
+export default function FlowTicker() {
+ const [active, setActive] = useState(0);
+
+ useEffect(() => {
+ const id = setInterval(() => {
+ setActive((prev) => (prev + 1) % steps.length);
+ }, 3600);
+ return () => clearInterval(id);
+ }, []);
+
+ return (
+
+ {steps.map((step, index) => (
+
+
+
+ {step.title}
+
{step.text}
+
+
+ ))}
+
+ );
+}
diff --git a/website/islands/LeadForm.tsx b/website/islands/LeadForm.tsx
new file mode 100644
index 0000000..2430cfa
--- /dev/null
+++ b/website/islands/LeadForm.tsx
@@ -0,0 +1,114 @@
+import { JSX } from "preact";
+import { useState } from "preact/hooks";
+
+interface FormData {
+ name: string;
+ email: string;
+ phone: string;
+ role: "Farmácia" | "Laboratório";
+ message: string;
+}
+
+const initialData: FormData = {
+ name: "",
+ email: "",
+ phone: "",
+ role: "Farmácia",
+ message: "",
+};
+
+export default function LeadForm() {
+ const [form, setForm] = useState(initialData);
+ const [sent, setSent] = useState(false);
+
+ function handleChange(
+ event: JSX.TargetedEvent,
+ ) {
+ const { name, value } = event.currentTarget;
+ setForm((prev) => ({ ...prev, [name]: value }));
+ }
+
+ function handleSubmit(event: JSX.TargetedEvent) {
+ event.preventDefault();
+ setSent(true);
+ setTimeout(() => setSent(false), 5000);
+ setForm(initialData);
+ }
+
+ return (
+
+ );
+}
diff --git a/website/routes/_app.tsx b/website/routes/_app.tsx
index 510ca06..a74da3b 100644
--- a/website/routes/_app.tsx
+++ b/website/routes/_app.tsx
@@ -2,11 +2,21 @@ import { define } from "../utils.ts";
export default define.page(function App({ Component, state }) {
return (
-
+
{state.title ?? "with-fresh"}
+
+
+
diff --git a/website/routes/index.tsx b/website/routes/index.tsx
index 1e3130d..2109943 100644
--- a/website/routes/index.tsx
+++ b/website/routes/index.tsx
@@ -1,90 +1,197 @@
+import FlowTicker from "../islands/FlowTicker.tsx";
+import LeadForm from "../islands/LeadForm.tsx";
import { define } from "../utils.ts";
-const highlights = [
+const benefits = [
{
- title: "Hierarquia de Permissões",
+ title: "Estoque Inteligente",
description:
- "Perfis separados para Farmácia (comprador), Distribuidora (vendedor) e Administrador do marketplace com trilhas dedicadas.",
+ "Curadoria de itens e SKUs com disponibilidade em tempo real e regras de corte por UF para reduzir rupturas.",
+ points: ["Reposição preditiva", "Alertas de validade", "Painel único de entregas"],
},
{
- title: "Rastreabilidade de Lote",
+ title: "Preços Direto da Distribuidora",
description:
- "Produtos carregam lote e validade obrigatórios em todo pedido, garantindo conformidade sanitária de ponta a ponta.",
+ "Negociação de tabela B2B com repasse imediato das condições do laboratório, sem intermediários ocultos.",
+ points: ["Split automático", "Frete otimizado", "Comissões configuráveis"],
},
{
- title: "Split nativo Mercado Pago",
+ title: "Conformidade ANVISA",
description:
- "Preferências de pagamento prontas para retenção automática de comissão do marketplace e repasse ao seller.",
- },
- {
- title: "Impostos por UF",
- description:
- "Camada de cálculo preparada para tabelas de substituição tributária estadual, simplificando faturamento fiscal.",
+ "Rastreabilidade de lote, validade e número de registro ANVISA presentes em cada pedido e nota fiscal.",
+ points: ["Políticas por categoria", "Logs auditáveis", "Integração com ERPs"],
},
];
+const supplierHighlights = [
+ "Acesso imediato a milhares de farmácias",
+ "Portal financeiro com split e comprovantes",
+ "Gestão de campanhas comerciais unificada",
+ "Suporte técnico para integrações de catálogo",
+];
+
export default define.page(function Home(ctx) {
- ctx.state.title = "SaveInMed | Marketplace B2B";
+ ctx.state.title = "Save in Med | Marketplace B2B Farmacêutico";
return (
-
-
-
-
-
- Planejamento B2B Farmacêutico
-
-
- Nova fundação de Performance para o Marketplace SaveInMed
-
-
- Arquitetura renovada com backend em Go ultrarrápido, Postgres 17 e Clean Architecture.
- Ideal para transações de alto volume e integração nativa com Mercado Pago.
-
-
-
-
Core em Go 1.24+
-
net/http, pgx, json-iter, gzip
-
-
-
Infra pronta para produção
-
Docker distroless + Swagger
-
+
+
+
+ Marketplace B2B farmacêutico
+
+ Economia real em medicamentos com a agilidade que a farmácia precisa
+
+
+ A Save in Med conecta farmácias a laboratórios líderes em um único
+ checkout, com compliance sanitário nativo e inteligência logística.
+
+
+
+
+
Redução média de custo
+ -12% no carrinho
+
+
+
Integração simplificada
+
+ Hub para receber pedidos, emitir notas e acionar transportadoras em até 48 horas.
+
-
-
Stack de diretórios
-
-
/backend-go: Performance Core (Pagamentos)
-
/backend-nest: Gestão de usuários, CRM e regras de negócio
-
/frontend-market: App da farmácia em React + Vite
-
/website: Landing page institucional
-
/docker: Compose com Postgres e backends
-
+
+
+ Pedidos multiorigem
+ Pagamento Mercado Pago
+ Tabela por UF
+ Um painel único para farmácias cria e acompanha pedidos com múltiplos laboratórios,
+ reduzindo chamados e divergências fiscais.
+
+
+
+
+
+
Configuração pronta para captura de leads e onboarding assistido.
-
-
-
- {highlights.map((item) => (
-
-
{item.title}
-
{item.description}
+
+
+
+ Benefícios principais
+
Uma plataforma desenhada para performance B2B
+
+ Controle de estoque inteligente, regras tributárias por UF e pagamento dividido nativo
+ garantem margens saudáveis para farmácias e laboratórios.
+
+
+
+
+ {benefits.map((item) => (
+
+
{item.title}
+
{item.title}
+
{item.description}
+
+ {item.points.map((point) => {point})}
+
))}
-
+
+
-
-
Foco em Observabilidade e Resiliência
-
- Conexões pgx otimizadas, middlewares de compressão e roteamento do Go 1.22+ garantem baixa latência.
- O repositório vem com schema base e UUID v7 ordenável para índices mais eficientes.
+
+
+
+
+ Para fornecedores
+
+
+ Laboratórios vendem diretamente para a rede
+
+
+ Estrutura de compliance, conciliação financeira e visibilidade de sell-out por praça,
+ sem perder controle sobre tabela e políticas comerciais.
+
+
+ Portal do fornecedor
+ Múltiplos CNPJs
+
+
+
+
+
Por que participar
+
+ {supplierHighlights.map((item) => (
+
+ ✓
+ {item}
+
+ ))}
+
+
+ Nossa equipe de onboarding cuida da carga de catálogo, credenciamento de contas e setup
+ financeiro para você começar a vender em poucos dias.
+
+
+
+
+
+
+
+ Integração
+
Save in Med centraliza pedidos de vários laboratórios
+
+ O marketplace orquestra catálogos, tabelas e faturamento, entregando para a farmácia
+ um único carrinho com split, impostos e tracking consolidados.
-
-
+
+
+
+
+
Governança
+
Catálogo único e políticas por UF
+
+ Múltiplos laboratórios compartilham o mesmo carrinho, mantendo regras de preço, descontos
+ e restrições regionais preservadas.
+
+
+
Erros fiscais reduzidos graças ao cálculo nativo de ICMS e ST.
+
Compliance de lotes e validade em todos os documentos.
+
Integração via webhooks, planilhas ou conectores de ERP.