Executando verificação de segurança...
17

Pitch: Transformando planilhas do Google em APIs/backend

Olá pessoal!

Em uma empresa em que trabalhei, precisavamos desenvolver um MVP (basicamente uma página web) e aplicar uma certa lógica de negócios a uma planilha do Google Drive que era frequentemente atualizada pelo time de Vendas.

Nesse caso, tinhamos duas opções:

  1. Desenvolver um backend pra substituir a planilha atual e o time de vendas usar como novo "backoffice" - Demoraria muuuito e se a hipótese que estavamos testando estivesse errada, seria tempo jogado fora.
  2. Criar a página web e usar a SDK do google para extrair os dados da planilha

Optamos por seguir a segunda opção, por ser a mais rápida. De fato, foi bem mais rápido do que criar um novo backoffice. Mas não tanto quanto imaginávamos. Integrar com a SDK do Google exige um certo esforço, principalmente pra lidar com a lógica de oAuth, configurar no console, entender a documentação (bem rasa por sinal).

Enfim! Fizemos o projeto e me liguei que talvez outros devs poderiam ter se deparado com problemas semelhantes. Por isso, desenvolvi uma ferramenta que transforma planilhas do Google em "realtime APIs" com método PATCH, GET, POST e DELETE.

Como é um produto para devs, acho que seria legal ouvir a opinião de vocês. Ainda é bem primitivo, mas as features básicas já funcionam. Também falta verificar o app no Google, estarei providenciando esta semana.

Caso queiram conhecer e enviar seus feedbacks:

https://zerosheets.com

Valeu!!

Carregando publicação patrocinada...
3

João, parabéns por criar uma solução que antes resolvia somente seu problema, mas que agora todos podem ter acesso. Confesso que é a primeira vez que me pego com esse tipo de solução e que isso abriu um leque de ideais para problemas que venho enfrentando.

Porém tenho algumas dúvidas:

  • Como funciona essa troca de dados entre minha conta google e sua aplicação?
  • Quais dados você tem acesso quando eu faço o login com minha conta?
  • Seu software guarda alguma informação da minha conta?

Ademais muito obrigado.

2

Olá Erick, obrigado pelo interesse. Vamos lá:

Como funciona essa troca de dados entre minha conta google e sua aplicação?

O App faz as seguintes trocas de dados:

  1. quando voce cria a conta, eu salvo seu e-mail na nossa base (por enquanto nem o nome eu to salvando).
  2. Quando voce cria uma nova API com o link de uma tabela, a gente se conecta a API do Google e pede as informações da tabela (todas informações, pois não tem como pedir só uma parte como "apenas o nome" por ex). Nessa etapa, salvamos a ID, o nome da tabela, o nome das abas e seus IDS. Não salvamos nenhum dado.
  3. Depois da API criada, voce recebe o link dela. Nesse caso, quando voce envia um GET, POST, PATCH ou DELETE, acessamos os dados, processamos a operação solicitada e pronto.

Creio que sua preocupação seja se salvamos os dados das tabelas, a resposta e não. Resumindo, salvamos:

seu e-mail
a id e o nome da sua tabela (apenas a tabela que você adicionou ao nosso serviço)
as ids e os nomes de cada aba da sua tabela (apenas a tabela que você adicionou ao nosso serviço)

Quais dados você tem acesso quando eu faço o login com minha conta?

Da sua conta Google: nome, email, imagem, id (no momento usamos apenas e-mail, como te disse)
Também temos permissões para ver, editar, criar e excluir todas as suas planilhas do Planilhas Google.

Mais infos aqui: https://developers.google.com/sheets/api/scopes?hl=pt-br
Usamos o escopo "https://www.googleapis.com/auth/spreadsheets"

Seu software guarda alguma informação da minha conta?

Como te falei, salvamos:

seu e-mail
a id e o nome da sua tabela (apenas a tabela que você adicionou ao nosso serviço)
as ids e os nomes de cada aba da sua tabela (apenas a tabela que você adicionou ao nosso serviço)

2

Muito obrigado pela resposta João.

Entendo que não tem dados sensíveis sendo salvos pelo seu sistema, isso é importante para não ferir a LGPD.

Acredito que seu software tenha bastante potêncial para se tornar um Saas e competir com o sheetdb, portanto deixo aqui alguns pontos como susgestão que você pode adicionar no seu Roadmap de desenvolvimento:

  • Deixar "Também temos permissões para ver, editar, criar e excluir todas as suas planilhas do Planilhas Google" explicíto nos termos de aceite na hora de criação de conta.
  • Criação de uma página de Políticas de privacidade descrevendo como você usa os dados.
  • Opção de descadastramento total do email caso o cliente não queira mais usar seu software.

Mais uma vez, obrigado com tua contribuição com a comunidade.

1
2

Eu sugiro que a cor seja alterada para verde, proporcionando um visual mais agradável e estabelecendo uma conexão mais direta com o estilo familiar do Excel/Sheets. A cor roxa utilizada não é tão associada ao Google Sheets, e a capacidade de transformar isso em uma API é muito massa, boa sorte!

1

Cara, faz todo sentido.

Não faço ideia do motivo de ter escolhido a cor roxa (fiz o logo muitos meses atrás, depois parei com o projeto e agora finalizei).

Vou botar isso no backlog.
Abraço!

2
2
2

Parabéns João, o projeto é uma solução f#da!

O início da explicação sobre os MVP's abriu minha mente, pode ter certeza que você vai ser o responsável dos mvps da minha empresa começarem a sair do papel kkkkkk o zerosheets vai junto com certeza!

1
1

bem útil 👏 a alguns meses eu passei por uma situação parecida, queria usar a planilha pro POC mas pela chatice da autenticação acabei usando o firebase

1

Na onde eu trabalho utilizamos a ferramenta Glide app, onde é possivel criar uma pagina web (que tambem se torna um app de celular no formato PWA) e utilizar um google sheets como "banco de dados". E cara, nos poupou um tempo preciosíssimo

1
1

Parabéns, muito útil! Vou querer testar.
Eu até incentivo os clientes que estão iniciando, a trabalhar com tabelas para depois se preocupar com banco de dados.
Acompanho as chaves primarias e estrangeiras das tabelas e quando eles se sentem contentes com a utilização das tabelas, ai sim eu migro para um banco de dados.

1

Concordo 100% com você.

Até porque em projetos de pequeno porte (exemplo: você é contratado para implementar o sistema de cobranças de uma pequena construtora local) a gestão provavelmente já é realizada via planilhas. Nada mais prático do que manter os processos internos da empresa enquanto vai adicionando novos blocos de tecnologia.

Obrigado pelo feedback! Abraço

1

Cara, parabéns pela iniciativa. A idéia é sensacional. Para projetos acadêmicos e para testes, funcionaria muito bem.
Fiquei interessado em testar, mas a seguinte mensagem, me jogou um balde de água fria:

3
1
1
1
0