14 pontos por GN⁺ 19 일 전 | 2 comentários | Compartilhar no WhatsApp
  • Backend open source que adiciona de uma vez sincronização em tempo real, modo offline, autenticação e armazenamento de arquivos a apps criados com vibe coding
  • A criação do backend não exige iniciar uma VM, mas sim adicionar uma linha no banco de dados, então o backend surge em poucos milissegundos e, quando não é usado, o custo é zero
  • No frontend, com apenas db.useQuery e db.transact, é possível lidar diretamente com consultas relacionais e alterações de dados — sem necessidade de montar um servidor de API separado
  • Atualizações otimistas são o padrão, então a UI responde imediatamente mesmo com rede lenta e, se falhar, há rollback automático
  • O upload de arquivos também é gerenciado como linhas do banco de dados, então, ao excluir uma postagem, os anexos também são removidos em CASCADE — sem necessidade de escrever código de sincronização com S3
  • É possível escolher entre métodos de autenticação como Magic Code, OAuth e Guest Auth, e com Presence também dá para implementar rapidamente "quem está conectado"
  • Agentes de IA podem executar diretamente via API/CLI a criação de apps, alterações de schema e configuração de permissões, conectando tudo até o deploy de apps full-stack apenas com prompts
  • Com uma única linha, npx create-instant-app, é possível criar imediatamente um projeto no ambiente desejado, como NextJS, Bun e Vite
  • A linguagem de consulta InstaQL usa a própria sintaxe de objetos JavaScript, permitindo consultas dinâmicas como no GraphQL, sem etapa de build nem codegen
  • Com uma arquitetura multitenant baseada em Postgres desenvolvida ao longo de 4 anos, opera milhares de apps em uma única instância, com todo o código open source disponível no GitHub

2 comentários

 
GN⁺ 19 일 전
Comentários do Hacker News
  • Pergunta sincera. Não entendo por que um app feito no vibe coding precisa de framework
    Basta pedir ao agente de codificação para fazer o frontend em HTML5/Vanilla JS/CSS e o backend na linguagem que você quiser
    Não precisa de centenas de dependências, e a implantação também pode ficar por conta do agente

    • Na prática eu tentei fazer isso, mas os LLMs atuais trabalham muito melhor quando estão em cima de um framework
      À medida que o código cresce, não só o custo aumenta como o desempenho também cai, e aparecem mais bugs e abstrações desnecessárias
      No fim, acaba se perdendo tempo tentando fazer o modelo criar um bom framework por conta própria
      Acho melhor usar um framework existente que já esteja presente nos dados de treinamento
      Com os modelos atuais, eu não recomendaria isso para nada maior que uma landing page
    • Pode soar como piada, mas é pelo mesmo motivo que não codamos em assembly
      Boas abstrações melhoram a legibilidade e a manutenção, e HTML/CSS/JS puro já é algo de nicho
      Humanos precisam conseguir entender e validar, e senão você desperdiça tokens e tempo reinventando a roda
      LLMs também podem se perder em código espaguete complexo, assim como humanos
    • Há alguns motivos
      1. Projetos ilimitados: backends tradicionais baseados em VM custam caro, mas com o Instant dá para criar quantos quiser
      2. Experiência do usuário: fica fácil implementar recursos como multiplayer, modo offline e atualizações otimistas
      3. Recursos avançados: também já inclui armazenamento de arquivos, compartilhamento de cursor e streaming de tokens
        Por exemplo, com um clique dá para criar o backend e concluir um app de todo em tempo real com 25 linhas de código
    • Usar um framework é como ganhar as primeiras 10 mil linhas de código de scaffolding por 0 tokens de custo
      Você já pode ir direto para a lógica de negócio e trabalhar dentro de padrões e ferramentas já validados
      Software corporativo ainda exige codebases grandes, então o valor de um framework continua enorme
      Ele oferece uma solução testada em batalha que já resolveu inúmeros casos extremos
    • É simples. Você reduz o escopo que precisa gerenciar e transfere essa responsabilidade para o framework
      Se escolher um bom framework, reduz milhares de decisões e o peso da manutenção
      Frameworks existem, no fim das contas, por causa da escalabilidade
  • Fico me perguntando se as pessoas realmente precisam disso
    Quantos realmente estão criando apps multiplayer como Figma ou Linear?
    A maioria provavelmente está fazendo apps CRUD, então será que vale a pena se prender a uma tecnologia proprietária?

    • O ponto interessante é que, se ficar fácil criar apps multiplayer, mais apps vão acabar sendo assim
      Por exemplo, o Linear é multiplayer; não vejo por que outros apps CRUD não poderiam ser
      Se a abstração for boa, apps baseados em mecanismo de sincronização podem até ficar mais fáceis de criar
      A equipe do Linear também mencionou isso neste tweet
    • Só como referência, o Instant é 100% open source
      Repositório no GitHub
    • Concordo. Hoje em dia a maior parte do código é escrita por LLM, então não é preciso tecnologia complexa
      Apps CRUD são simples e repetitivos, perfeitos para IA
      Backend em binário Go e frontend em React cobrem 99,9% dos casos
      Até um node de US$ 5 por mês aguenta tranquilamente 100 mil MAU
  • Parece uma ferramenta perfeita para projetos pessoais
    Só gostaria que a parte dos “agentes” fosse integrada de forma mais fluida
    Como meu agente de código saberia lidar com isso?
    Seria bom adicionar no blog um link para as skills relacionadas

    • Acho uma ótima sugestão. Já atualizei o ensaio na hora
      Link do PR
    • A skill já existe
      Ela pode ser adicionada com o comando npx skills add instantdb/skills
      Também recomendo fazer o scaffolding do projeto com bunx/pnpx/npx create-instant-app
  • Parabéns pelo lançamento! O InstantDB foi uma das ferramentas mais agradáveis que já usei
    Só fiz alguns projetinhos de brincadeira, mas ele é o mais simples e intuitivo nessa área
    Dito isso, o produto principal é tão bom que essa ênfase em IA parece um pouco forçada
    Dá a sensação de que esse posicionamento é necessário hoje em dia para conseguir investimento

    • Obrigado!
      Não atualizávamos o site desde que o projeto virou open source, em agosto de 2024
      Depois daquele post, o número de usuários criando apps com IA cresceu rapidamente
      Então reorganizamos a mensagem e investimos em tornar a experiência com agentes mais prazerosa
    • Valeu. A ênfase em IA não é marketing, mas reflexo do comportamento real dos usuários
      Como a maioria está programando com IA, nós otimizamos o produto para isso
  • Posso ter entendido errado, mas fiquei curioso sobre por que isso é “AI-coded
    Para quem está buscando um backend simples, parece uma ótima alternativa
    Mas, comparando com outros backends, não está claro para mim o que exatamente é voltado para IA
    E como tudo parece bem centrado em TS, também queria saber se há planos para bindings nativos mobile

  • O demo foi realmente muito legal. A ideia de integração com IA é excelente, mas a explicação ficou curta
    Vi o tutorial, mas ele é mais focado em criar conta de SaaS
    Padrões de apps reativos como Triples, Datalog e Clojure estão bem incorporados no Instant
    Pessoalmente, sempre achei Clojure difícil e Datalog pouco familiar, então a abstração do Instant é muito bem-vinda
    Se existisse um conversor InstantQL-Datalog como componente separado, seria realmente útil
    Como o backend é baseado em Clojure, dá para entender a escolha por Postgres, mas para implantação local talvez SQLite fosse mais simples

  • Fiquei impressionado por vocês terem implementado de fato “consultas relacionais + tempo real
    Dito isso, a UI do console passa a sensação de ter recebido menos cuidado do que a infraestrutura ou o site
    Parabéns pelo lançamento 1.0; pretendo continuar desenvolvendo com o Instant no futuro

    • Obrigado!
      Melhoramos bastante o demo da homepage, o ensaio e a documentação
      O dashboard deve passar por redesign nas próximas semanas
      O curioso é que, mesmo quando agentes de IA criam apps e alteram o schema,
      os usuários ainda preferem explorar os dados manualmente pelo componente Explorer
  • Não consegui encontrar nada na documentação sobre rate limiting. Queria saber se isso existe

  • Já usei Pocketbase, e o Instant parece bom para um uso parecido
    Só que um ponto forte do Pocketbase era a escalabilidade no servidor
    Dava para escrever hooks em JS ou Go e adicionar recursos como notificações push
    Queria saber se no InstantDB também é possível fazer isso ou se seria preciso criar um worker separado
    E também se há planos para um SDK em Dart

    • No servidor, dá para reagir a mudanças usando db.subscribeQuery
      Em breve também vamos adicionar webhooks, e o plano de longo prazo é oferecer suporte a SDKs para outras linguagens
  • Concordo com a ideia de que “padrões predefinidos reduzem o custo de tokens
    Tivemos uma experiência parecida ao criar o empla.io
    Quando deixávamos o agente decidir o backend, o uso de tokens subia 3 a 4 vezes
    Linguagens de consulta declarativas trazem um ganho de eficiência ainda maior para IA do que para humanos
    Tenho duas dúvidas

    1. Como vocês lidam com a evolução de schema quando o agente adiciona novas relações no meio da sessão
    2. Existe algum recurso embutido para gerenciar orçamento de custo por sessão, ou isso precisa ser implementado pelo usuário?
 
picopress 18 일 전

Até código feito no vibe coding vocês divulgam?