csbl-br / wikiora

Flask app for gene over-representation analysis based on Wikidata.
https://wikiora.sysbio.tools
MIT License
23 stars 2 forks source link

feat: Make an R package that generates the WikiORA html file given a list of genes. #5

Open lubianat opened 3 months ago

lubianat commented 3 months ago

via @jvfe

Minha sugestão é mais ter algo assim como output do WikiOraR:

jvfe commented 3 months ago

Só uma ideia de como refatoraria seu código para separar a parte que gera a tabela da parte que renderiza a página:

Eu extrairia toda a lógica aqui embaixo para uma rota separada, talvez /table que recebe os parâmetros e retorna o JSON da tabela, eaí a rota /enrich só requisitaria esse endpoint, receberia o JSON e renderizava o HTML. https://github.com/lubianat/wikiora/blob/0562525068d4465170e1084cffe8f20c85697d02/www/python/src/app.py#L143-L158

Isso faria com que a plataforma ficasse mais versátil. Pois teria uma API que independe de você ter que acessar com um navegador. Então no pacote você poderia ter uma função que só faz um request a esse endpoint da API, retornando a tabela.

Pra ir um pouco além tu pode ter outro endpoint que só recebe o JSON da tabela e retorna só a figura, mas aí talvez já esteja indo longe demais kkkkk

Não tô dizendo que seria a melhor solução, mas é uma que me apetece pois vai com o príncipio de separation of concerns e single responsibility