PITCH: Ferramenta para gerar o arquivo de JSON-SERVER com dados estruturados e de maneira mais fácil

Olá, pessoal! Tudo bem?

Meu nome é Bruno Braga e, atualmente, sou Engineering Manager no Nubank. Embora minha principal função hoje em dia não seja mais codar profissionalmente, às vezes ainda sinto vontade de me aventurar em alguns projetos pessoais.

Recentemente, assisti a um vídeo onde o youtuber usava a biblioteca JSON Server para criar um mock de back-end. Notei que ele estava gastando muito tempo para montar as APIs, especialmente na hora de alterar algum atributo. Toda vez que precisava fazer uma mudança, ele tinha que copiar registros existentes ou alterar manualmente, o que era bastante trabalhoso.

Foi aí que surgiu a ideia de criar uma ferramenta para facilitar esse processo de maneira visual e prática.

Apresento a vocês o JSON-Server Generator!

A JSON-Server Generator é simples e direta: você adiciona os endpoints, define os atributos de cada um e escolhe o tipo deles. Depois, é só clicar em "Generate JSON-Server Code" e pronto! O código do JSON Server estará gerado e pronto para uso. Se precisar fazer ajustes, basta modificar e gerar novamente.

Os dados do JSON gerado são bem robustos, pois utilizo a biblioteca faker.js para ter informações realistas.

Já tenho algumas melhorias no backlog, como adicionar novos tipos de dados(se tiverem alguma sugestão do que sentiram falta já, seria ótimo), criar relacionamentos entre endpoints e melhorar a experiência em dispositivos móveis. Mas adoraria receber feedbacks sobre o que acharam e sugestões de funcionalidades que vocês gostariam de ver.

Valeu!

PS(Edit01) Se puderem também dar um feedback sobre usabilidade será muito massa =D

Olá. Eu testei sua aplicação e eu senti falta de dados de datas.

De usabilidade eu gostei muito do visual e de como está. Acho que só destacaria um pouco mais o botão Generate JSON-Server Code.

Matheus, foi adicionado o tipo "Date" na criação o/ Valeeu
Show! Parabéns pelo projeto. Foi uma ideia muito criar esse gerador. Eu tava gerando essas coisas ou pelo chat-gpt, ou as vezes por recomendação do copilot.
Massa demais! Obrigado pelo feedback Matheus! Hoje mesmo vou adicionar o tipo data, realmente é algo bem relevante e faz sentido introduzir. Obrigado também pelo feedback sobre a usabilidade e visual, vou pensar em como destacar mais este botão. Valeeu

Não sei se serve de feedback, mas sugiro um tipo booleano como atributo para campos que precisamos True/False.

Com certeza é um feedback amigo! Bom ponto, não tinha colocado mesmo o boolean ainda. Vou adicionar hoje, obrigado :) E qualquer feedback é válido ok? Fique a vontade para mandar
Tipo Boolean adicionado @hbm!

Massa demais, Bruno! Gostaria de saber se o projeto é open source, e com quais tecnologias você o construiu. Gostaria de contribuir para o seu projeto, achei bastante promissor :D

Oi Matheus, que massa que você curtiu. Eu fiz com NextJS + RadixUI. Vi no seu perfil que você manja desta stack né? Eu nunca mantive um projeto open source mas pode ser interessante. Vou organizar as coisas pra ver como fazer e a gente bate um papo, seria massa ter contribuições =D PS: Eu fiz isso correndo e sem organização nenhuma, zero testes e tal, talvez eu precise dar uma arrumada na casa kkkkk Valeu o/
Show de bola, Bruno! Ficarei no seu aguardo, vamos a arrumar essa casa kkkkk

Massa, muito boa ideia!!

Gostei das cores, mas senti falta de responsividade pro mobile (testei no celular, e a caixa de atributos ficou estreita, mas não a ponto de impedir a usabilidade)

Só não consegui testar a geração de Lists, pois ao clicar nessa opção a caixa de cadastro de nova endpoint sumiu (achei inicialmente que foi algum bug introduzido recentemente, mas parece um caso bem sutil que tá acontecendo quando vc apaga todos os endpoints, cria um novo e tenta colocar como tipo Lists)!

Uma sugestão é considerar já deixar algum json de exemplo, contendo um atributo de cada tipo. Acho que isso pode ajudar o usuário a entender rapidamente qual o intuito da ferramenta e o que ela é capaz de fazer (daí precisaria de um botão de limpar todos os endpoints e outro pra restaurar pra esse default com endpoints de exemplo). Achei massa que tá salvando o estado no dispositivo!

Por fim, caso decida abrir como um projeto open-source, adoraria contribuir de alguma forma.

Oi Victor! Muito obrigado pelos feedbacks! A parte de ajustar para Mobile eu estou trabalhando nisso exatamente agora, em breve devo subir Vou fazer uma investigação sobre o ponto da geração de listas, por algum motivo não estou conseguindo replicar. Mas vou mais a fundo pra entender -- Sobre a sugestão do JSON de exemplo eu achei uma excelente ideia, vou adicionar no backlog. Obrigado E sim, eu to pensando fortemente em abrir opensource, assim como o @matheusscode sugeriu ali embaixo. Vou organizar para fazer isso pois nunca tive um projeto assim, e pingo aqui denovo. No mais, obrigado pelos feedbacks <3