6 pontos por GN⁺ 2024-01-08 | 1 comentários | Compartilhar no WhatsApp

PocketBase - um backend open source para o seu próximo SaaS e app mobile

  • Banco de dados em tempo real: oferece um banco de dados embarcado de alto desempenho com construtor de esquema, validação de dados, recursos de assinatura em tempo real e uma API REST fácil de usar.
  • Autenticação: gerencie login por e-mail/senha e OAuth2 (Google, Facebook, GitHub, GitLab) sem complicação.
  • Armazenamento de arquivos: armazene arquivos localmente ou no S3 de forma prática, anexe mídia facilmente aos registros do banco de dados e gere miniaturas sob demanda.
  • Extensível: pode ser usado como aplicativo standalone ou como framework, com extensões via hooks em Go e JavaScript para criar um backend portátil personalizado.

Explorando os recursos

  • JavaScript SDK: com PocketBase, é possível listar ou buscar registros da coleção 'example', obter um único registro, excluir, criar novos registros e assinar alterações em tempo real.
  • Dart SDK: também há um SDK para desenvolvedores que usam a linguagem Dart.

Opinião do GN⁺

  • PocketBase é uma solução open source que oferece recursos de backend para desenvolvimento de SaaS e apps mobile, incluindo banco de dados em tempo real, autenticação e armazenamento de arquivos.
  • Os usuários podem usar facilmente a API REST e têm a flexibilidade de expandir o backend conforme necessário com Go e JavaScript.
  • A solução ajuda desenvolvedores a economizar tempo e esforço ao criar protótipos rapidamente ou construir produtos reais, contribuindo para simplificar o processo de desenvolvimento e aumentar a eficiência.

1 comentários

 
GN⁺ 2024-01-08
Comentários no Hacker News
  • Experiência de uso do Pocketbase

    • Experiência positiva ao usar o Pocketbase como backend/banco de dados de um app com React e Vite.
    • Usado principalmente para autenticação e gerenciamento de contas pagas/gratuitas.
    • Recursos úteis:
      • Hospedar é muito fácil. Foi escolhido no lugar de Appwrite ou Supabase, especialmente porque o auto-hospedagem do Supabase é complicada.
      • É possível retornar apenas subconjuntos dos dados necessários por meio de view collections.
      • Pode ser estendido com Go ou JS, então em casos não muito complexos dá até para ficar sem um backend separado.
    • Pretende continuar usando em projetos pequenos ou paralelos, e considera usá-lo como CMS ou como backend para extensões de navegador.
  • Experiência de desenvolvimento com Pocketbase

    • Desenvolvimento com Pocketbase por 2 meses, com implantação em produção prevista para daqui a 1–2 meses.
    • Experiência muito satisfatória; era necessário um sistema simples para desenvolver o web app da empresa de um amigo.
    • Só com o Pocketbase, operam servidor web, JavaScript do lado do servidor (TypeScript compilado) e banco de dados SQLite.
    • É possível hospedar com baixo custo, enquanto o frontend é desenvolvido com SvelteKit e TypeScript.
    • Satisfação com as respostas rápidas e o suporte claro do desenvolvedor.
    • Existem alguns pequenos problemas (lacunas na documentação, necessidade de escrever o próprio carregador CSV, lentidão na interface de CRUD etc.), mas no geral há satisfação com o projeto.
    • É simples e permite programar tudo em TypeScript, atendendo perfeitamente ao que era necessário.
    • Não é de altíssimo desempenho, mas isso não era necessário; há planos de usá-lo também em projetos paralelos.
    • Como parte do contrato, a empresa do amigo pretende fazer uma doação ao Pocketbase.
  • Experiência de uso do Pocketbase em produção

    • Uso do Pocketbase em produção junto com alpinejs por alguns meses.
    • A filosofia de desenvolvimento é realista e prática, e o produto melhora sem inchar com recursos novos toda semana.
    • Há preocupação com a manutenção do nível de suporte e com a possibilidade de esgotamento do desenvolvedor à medida que o projeto se populariza.
    • Forte recomendação para que quem o usa para gerar receita apoie o projeto.
  • Impressões sobre o Pocketbase

    • Aprecia-se o fato de o projeto evitar complexidade e tentar ativamente uma abordagem simples e minimalista.
    • A facilidade de implantar enviando um único binário para o servidor é atraente.
    • Com a introdução de suporte a JavaScript no backend, surge como um concorrente sério a frameworks como Remix e Next.js.
    • Expectativa pela versão v1.
  • Gerenciamento de coleção de vinhos com Pocketbase

    • Exploração de um frontend que possa ser usado sobre um banco de dados sqlite para projetar e armazenar uma coleção de vinhos.
    • Era necessário um único executável, uma interface de administração e um banco de dados que pudesse ser armazenado em um notebook.
    • Agradecimento ao Pocketbase e motivo para voltar ao Hacker News.
  • Possível suporte a API GraphQL no Pocketbase

    • O Pocketbase parece muito legal, e parece utilizável em projetos pequenos.
    • Há curiosidade sobre a possibilidade de suportar uma API GraphQL no futuro.
  • Impressões sobre projetos open source

    • Há satisfação por existirem muitos bons projetos open source nessa área.
    • Grist e NocoDB são mais focados em gerenciamento de banco de dados e oferecem uma forma fácil de começar.
  • Perguntas sobre recursos do Pocketbase

    • A documentação não deixa claro como são tratados controle de acesso em nível de linha, integrações com o resto do mundo (envio de e-mail, acionamento de triggers etc.), exportação/importação de CSV e internacionalização.
    • Pergunta-se se esses recursos são possíveis, se são simples ou se exigem extensões em Go ou JS.
  • Possibilidade de personalização da página de operações CRUD

    • Pergunta sobre o quanto a "página de operações CRUD" pode ser personalizada.
  • Avaliação do Pocketbase

    • Foram testados vários PaaS, incluindo Supabase e Appwrite, mas o Pocketbase é o melhor.
    • Excelente desempenho, recursos intuitivos, auto-hospedagem realmente viável e prazer na implantação.