Executando verificação de segurança...
1
hagaka
Patrocinado
Patrocinado
3 min de leitura ·

Hindsight: Uma quadro de retrospectiva ágil _free and opensource_

Oi! Vim compartilhar meu projeto hindsight. É uma board usada em retrospectiva ágil. Aquele negócio que acontece no final de toda sprint de uma tabela com 'bom, ruim, melhorar', ou algo do tipo.

print da tela inicial

Como começou

Eu já conheci ele de uma maneira legal, que foi procurando um painel desses para hospedar para minha própria equipe. E foi bem difícil achar um. Ou era um negócio bem antigo e não mantido, ou um monstro estupidamente complicado que eu não estava afim de pôr as mãos.

Então eu gosto muito desse projeto porque ele é um fork de outro projeto opensource! E o autor original é brasileiro também 🇧🇷🇧🇷🇧🇷. Na página Us tem links dos repositórios e tudo mais.
Meu plano inicial era só hospedar ele mesmo, mas encontrei uns bugs no caminho e, no final, até precisei mudar um pouco da estrutura

Tecnologias

Ele usa um básico Vite + React para o front, e uma biblioteca chamada TinyBase para banco de dados (estranho chamar assim)

E essa lib é super legal!! Suporta dados tabulares e key-value. Os key-values são bem simples e não tem muito o que comentar, mas o tabular é bem interessante como é feito. Já que não se usa um SQL para fazer queries, ele tem um sistema próprio de indexação, agreggação de metricas e relações entre tabelas

Mas a parte mais incrível é que também tem a funcionalidade de syncronização e de persistência local! A sincronização é bem óbvio, todos se conectam a um servidor via WebSockets e então as mudanças feitas por qualquer um lá dentro é replicada entre eles. Mas a persistência eu acho mais dahora, já que eu posso ter uma persistência local distribuida entre os usuário

Por exemplo, originalmente o APP não tinha persistência no servidor, todos dados ficava só guardado nos navegadores dos usuários. Então desde que um deles tivessem os dados ainda, tudo seria populado e re-compartilhado com os outros. E tem tabém um sistema legal de que se uma pessoa não participar de uma reunião, os dados desatualizados dela não vão sobreescrever os dados da mesa depois. O sistema vai saber o que está antigo, e a pessoa vai receber certinho o que está de novo

Mas voltando ao APP mesmo, ele está com o estático hospedado no github pages, o servidor na heroku, e com persistência no postges (caso nenhum usuário tenha os dados ao voltar na mesa, mesmo que improvável). E eu coloquei para o logs e quantidade de usuários usando ir para o DataDog, mais porque eu tinha créditos para usar. Mas só ficará útil mesmo se tiver mais usuários

Finalização

Sobre usuários, ele é e sempre será gratuito. Tá licenciado com Apache 2.0, e feito principalmente para eu estudar cloud. Os créditos da heroku vão durar por 2 anos, o domínio por 1, e eu não pretendo mudar muito ele mais. Tem algumas melhorias que seriam legais, mas eu preciso pôr uma linha de chegada no projeto, então eu criei umas issues marcadas como good-first-issue lá no github

É isso aí! Obrigado pelo seu tempo se chegou até aqui! Só repassando, o link do site:
https://hindsight-for.team/

Link do post no meu blog: https://weblog.hagaka.me/posts/hindsight/
(lá eu falo mais sobre a ideia e de como foi fazer. Aqui meio que virou minha fascinação ao tinybase kkkkk)

Post no linkedin: https://www.linkedin.com/posts/jo%C3%A3o-carlos-a569a51b2_empolgado-em-compartilhar-minha-mais-recente-activity-7285026109111345152-9jyN?utm_source=share&utm_medium=member_desktop
(link feio da peste, mas não quero usar um encurtador)

Carregando publicação patrocinada...