Pitch: Fletch: um cliente HTTP open source feito com Flutter para desktop
Nos últimos meses eu comecei a sentir um incômodo cada vez maior com o estado atual dos clientes HTTP desktop. Acontece que estou de saco cheio do Postman e do insomnia. E os outros, são lentos, bugados, pesados, pagos, etc. Bruno, HTTPIe, etc. Nenhum estava sendo fácil usar.
O Postman virou uma plataforma gigante, pesada e extremamente focada em cloud. O Insomnia ainda é uma alternativa interessante, mas eu queria algo mais simples, rápido e com uma experiência mais próxima de um app nativo.
Então decidi criar o Fletch.
O projeto nasceu como um cliente HTTP desktop feito em Flutter, focado em performance, interface limpa e experiência local-first. A ideia nunca foi competir diretamente com gigantes do mercado, mas criar uma alternativa moderna, leve e open source para quem só quer testar APIs sem abrir um monólito Electron consumindo metade da RAM da máquina.
Apps desktop com Chromium, em um PC com 16GB de RAM, onde memória está custando quase 800 reais? Pra mim, que tenho um ambiente dev pesado, não viavel.
Hoje o projeto já possui:
- Suporte para requisições HTTP
- Interface desktop multiplataforma com CI fazendo build para linux x64 e windows
- Gerenciamento de workspace (projetos).
- Gerenciamento de collections (pastas com requests).
- Estrutura modular.
- Tema dark/ligth.
- Arquitetura organizada para crescimento futuro.
- Flutter material para uma UI bonita.
- Telas limpas para melhorar o foco.
- Postman e Insomnia tira minha concentração, com tanta porcaria na tela. E eu só querendo fazer um post
- Uso estável de RAM, CPU e GPU
- O maior uso de RAM é o impeller do Flutter e ele não sequestra 1/3 da ram do seu PC. A variação de uso, está perto dos 50mb
- Import e export para Postman e Insomnia.
- Executar em lote.
- Muito mais.
Uma das decisões mais importantes foi usar Flutter ao invés de Electron. Além da renderização consistente entre plataformas, o Flutter entrega uma experiência visual muito boa sem depender de Chromium inteiro rodando em segundo plano.
Outro ponto importante foi tentar manter a arquitetura limpa desde o começo. Conforme o projeto cresce, isso evita transformar a base de código em uma mistura impossível de manter.
Os principais objetivos do Fletch hoje são:
- Ser rápido
- Consumir menos memória
- Ter uma interface agradável
- Continuar totalmente open source
- Ser idependente de Cloud ou Internet
- Não fazer telemetria, não rastrear e não coletar dados.
- Depois de clonar o repositório, ele é seu! Siga a normas da licensa MIT
Ainda falta bastante coisa, mas o projeto já está em um estado utilizável e evoluindo aos poucos.
Todos os dias, eu tiro 2h para escrever um pouquinho de código. Ainda não tem versão stable e tem pequenos mocks na tela. Ainda não foi testado em MAC e no Windows, mas você está a um flutter build de distancia. O bundler ainda não chegou a 50mb e o maior uso de RAM que capturei no Wayland, foi 360MB (soma de memoria comparilhada e da GPU), mesmo estando com mais de 500 requests no editor.
Deixe uma estrelinha no meu trabalho.
Repositório:
Fletch no GitHub