Preswald
Structured Labs · Programação
O Preswald é um framework de código aberto que transforma scripts de Python em apps de dados interativos e os empacota como arquivos autônomos que rodam no navegador sem servidor.

Sobre Preswald
About
O que é o Preswald
O Preswald é um gerador de sites estáticos para apps de dados interativos. Foi criado pela Structured Labs e é distribuído sob a licença Apache 2.0. Você escreve o app em Python e um único comando o compila em uma pasta de arquivos estáticos que pode abrir no navegador ou entregar a outra pessoa. Não há nada para instalar na máquina onde ele roda.
O problema que ele ataca é a entrega. Um analista consegue montar uma análise com pandas e Plotly em um notebook, mas compartilhar esse trabalho costuma exigir que a outra pessoa prepare um ambiente de Python. O Preswald junta seu código, seus dados e sua interface em um pacote portátil que roda sem conexão. Por dentro, ele se apoia em WebAssembly: executa o Pyodide para Python e o DuckDB para as consultas direto na aba do navegador.
Esse desenho traz trade-offs que vale conhecer de antemão. Como tudo roda no cliente, conjuntos de dados muito grandes e cálculos pesados ficam limitados pela máquina e pela memória do navegador de quem abre o app. O projeto também é novo, e relatos da comunidade sobre falhas na renderização de gráficos mostram que ele ainda está amadurecendo. O site oficial agora redireciona para a Structured Labs, que segue desenvolvendo o Preswald ao lado de seus outros produtos.
Como começar
- Instale o pacote com
pip install preswaldouuv pip install preswald. - Rode
preswald init my_apppara gerar a estrutura do projeto com um arquivo de app, configuração e dados de exemplo. - Edite o arquivo Python e importe componentes de interface como
text,tableeget_dfpara montar o app. - Rode
preswald runpara subir um servidor local de desenvolvimento e ver o app em localhost. - Rode
preswald exportpara gerar um pacote estático em uma pastadist/que roda sem conexão e pode ser compartilhado.
Informações do produto
Uma visão rápida dos preços, das plataformas compatíveis e do desempenho de Preswald.
Ideal para
Os usuários, tarefas e cenários em que esta ferramenta se encaixa melhor.
Usuários
- Analistas de dados
- Desenvolvedores Python
- Equipes que repassam trabalho a outras áreas
- Equipes atentas à privacidade
Tarefas
- Montar painéis para analistas
- Escrever relatórios interativos
- Publicar ferramentas de inspeção de dados
- Preparar kits sem conexão
Cenários
- Entregar uma ferramenta a um colega não técnico
- Lidar com dados confidenciais
- Prototipar um produto de dados rápido
- Dar uma ferramenta estruturada a um agente de IA
Principais recursos
Autoria com foco em Python
Você monta o app inteiro em Python, com funções de apoio para texto, tabelas, gráficos e formulários. Não há JavaScript para escrever nem runtime de notebook para enfrentar. Para quem já se sente à vontade com pandas, o salto do script de análise para o app funcionando é curto.
Exportação baseada em arquivos
Um único comando preswald export compila o app em um site estático dentro de uma pasta dist/. Esse resultado contém tudo o que é preciso para executá-lo, então você pode compactar, hospedar ou deixar em uma pasta compartilhada. Funciona sem conexão em qualquer navegador moderno.
Processamento no navegador com Pyodide e DuckDB
O runtime executa Python via Pyodide e as consultas via DuckDB, ambos compilados para WebAssembly. Isso significa que o processamento real acontece na aba, não em um servidor remoto. O DuckDB resolve SQL analítico sobre arquivos locais com rapidez, e é isso que torna possíveis os apps de dados ágeis no navegador.
Motor reativo
O Preswald acompanha um grafo de dependências do seu estado e só reexecuta as partes do app afetadas por uma mudança. Quando o usuário mexe em um filtro, o app recalcula apenas as saídas envolvidas em vez do script inteiro. Isso mantém os apps interativos ágeis conforme crescem.
Componentes de interface combináveis
O framework traz blocos prontos como tabelas, gráficos, formulários e elementos de layout. Você os encaixa no seu script e eles são renderizados em uma interface consistente. Assim você evita escrever marcação e estilo à mão para as visualizações de dados mais comuns.
Execução local por padrão
Como os apps rodam inteiros no navegador, não há backend para implantar, proteger ou pagar. Os dados ficam na máquina onde o app roda, o que combina com conjuntos sensíveis e trabalho de campo sem conexão. Essa mesma característica é o que limita quanto dado e quanto processamento um app aguenta.
Código aberto sob Apache 2.0
O Preswald tem licença Apache 2.0 e é desenvolvido abertamente no GitHub, então você pode ler o código, abrir issues e contribuir. A Structured Labs mantém o projeto, com comunidade ativa no Slack e nas discussões do GitHub.
Prós e contras
Prós
- Você escreve os apps em Python, então analistas conseguem compartilhar o trabalho sem aprender um stack de front-end.
- O resultado é um pacote estático autônomo que roda sem conexão no navegador, sem servidor para implantar.
- O DuckDB e o Pyodide levam SQL e execução de Python de verdade até a aba do navegador.
- As reexecuções reativas mantêm os painéis interativos ágeis conforme crescem.
- A licença Apache 2.0 evita dependência de fornecedor e dá liberdade total para hospedar por conta própria.
Contras
- Tudo roda no cliente, então dados grandes e cálculos pesados esbarram nos limites de memória e velocidade da máquina de quem visita o app.
- O projeto é novo, e os relatos de falhas na renderização de gráficos mostram que o runtime ainda amadurece, então podem aparecer arestas.
- Não há uma API de nuvem documentada, então equipes que querem um backend gerenciado precisam procurar outra opção ou hospedar por conta própria.
- Por serem entregues pelo navegador, os apps dependem de um navegador moderno e não servem para tarefas agendadas ou de servidor sem interface.
Perguntas frequentes
O Preswald cria apps de dados interativos em Python e os empacota como arquivos estáticos que rodam no navegador. Ele encaixa em painéis, relatórios, ferramentas de inspeção de dados e protótipos que precisam ser compartilhados sem pedir a ninguém para preparar um ambiente de Python.
Conteúdo relacionado
Explore ferramentas, skills e artigos relacionados a Preswald.
Alternativas a Preswald
Base Code
Base44 (Wix) · Programação · ProdutividadeO Base Code é um ambiente de desenvolvimento em nuvem compartilhado da Base44. O time descreve mudanças em um repositório do GitHub pelo chat, confere tudo na prévia e envia o resultado como pull request.
Google EmbeddingGemma 2
Google DeepMind · Escrita · Imagem · ProgramaçãoGoogle EmbeddingGemma 2 é um modelo aberto de 740 milhões de parâmetros que transforma texto, código, imagens, áudio e quadros de vídeo em vetores de um único espaço de 768 dimensões, rodando em celulares e notebooks.
GitGlow
GitGlow · Programação · ProdutividadeO GitGlow é um cliente Git de desktop que coloca seu código e as mudanças dos seus agentes de IA na mesma revisão, para você saber o que vai sair da máquina antes de publicar.
