flitch icon indicating copy to clipboard operation
flitch copied to clipboard

[Feature Request] Algumas idéias

Open RickyM7 opened this issue 4 years ago • 20 comments

Olá, primeiramente gostaria de agradecer pelo projeto, finalmente encontrei um projeto (muito bem feito, por sinal) sobre animes que seja open-source e em Português. Mal posso esperar pelas futuras atualizações. De verdade, parabéns e obrigado pelo ótimo trabalho.

Sobre as idéias:

  • [ ] 1. Integração com o MyAnimeList/Anilist: apenas uma integração básica que atualizará as informações dos animes no MAL/Anilist após assistir algum episódio. Esta função teria as opções de alterar o estado, episódios assistidos e nota, assim como no Tachiyomi.
Aba de Integração Estado/Situação Capítulos/Episódios Pontuação/Nota
integração estado eps Nota
  • [ ] 2. Backup/Restauração de favoritos, histórico, etc: Seria ótimo se alguma forma de exportar e importar os favoritos, histórico, etc. para a memória interna/externa fosse adicionada. Esta função seria extremamente útil e bem melhor que uma opção de backup em nuvem (na minha opinião). O Tachiyomi tem um ótimo sistema de backup, talvez seja útil dar uma olhada.

  • [ ] 3. Novas fontes: Eu estou ciente de que alguns sites não podem ser usados por conta da falta de alguns componentes (não sei quais, pois não sou programador), mas vou listar alguns sites de animes que conheço (vou atualizando a medida que for descobrindo mais) e espero que algum deles sirva como uma fonte:

Fontes

Sites em Português
https://animeshouse.net
https://goyabu.com
https://www.anitube.site
https://betteranime.net
https://animefire.net
https://anihub.tv
https://nowanimes.com
https://animesup.net

Outros

  • Anime Piracy Index (Inglês): This index is a listing of sites that provide free anime streams, manga reading, some applications, and even hentai. (Basicamente uma lista com inúmeros sites para assistir animes, ler mangás, etc.)

  • AnimeThemes (Inglês): A simple and consistent repository of anime opening and ending themes. (Basicamente uma lista com aberturas e encerramentos de animes)

  • AniChart (Inglês): Basicamente um site que lista a data e horário de lançamento dos animes. (Pode vir a ser útil)

  • LiveChart (Inglês): Basicamente um site que lista a data e horário de lançamento dos animes. (Pode vir a ser útil)

  • [ ] 4. Melhorias no Player e UI:

Melhorias (Player) Descrição Exemplo
Botões de próximo/anterior Botões para ir para o próximo episódio e voltar para o episódio anterior proximo-anterior
botão de engrenagem Ao clicar neste botão um menu flutuante abrirá e nele estará as opções para mudar a qualidade de exibição do episódio e a opção para baixar o episódio (a qualidade do episódio baixado será definida pela qualidade selecionada no player) engrenagem
Melhoria na rotação de tela Basicamente o player giraria tanto em landscape quanto em reverse landscape, mesmo com a rotação de tela desativada
Mover para avançar/retroceder Ao mover o dedo na tela na horizontal (direita ou esquerda) o tempo do episódio avançará ou retrocederá e será mostrado na tela o tempo que foi avançado/retrocedido e o tempo que o episódio se encontra depois dessa ação moverparaavançar
Melhorias (UI) Descrição Exemplo
Menu flutuante Este seria um menu de três pontos que ficaria no canto superior direito da tela e te daria acesso às configurações, ao futuro feed de noticias (#7) e qualquer outra opção extra (talvez o histórico (#8) também). Ele serve para deixar opções extras em segundo plano, assim o foco principal do app ficará na sua principal proposta, que é assistir animes Menu de 3 pontos
Mover o botão de busca para cima Isso basicamente fará a UI um pouco mais agradável de se usar. O botão de busca ficaria ao lado do botão do menu flutuante busca
Mesclar a descrição do anime, lista de episódios e recomendados em uma única página A página que abre ao clicarmos em um episódio de algum anime seria removida pois as funções ali presentes seriam movidas para o player (veja acima os tópicos de melhoria do player). Ao clicarmos em um anime agora veriamos as informações do anime (nome, descrição, etc), a lista de episódios ficaria logo abaixo disso e teria a opção para ser colapsada (para que os animes recomendados que ficaria abaixo sejam vistos mais facilmente) e os animes recomendados ficariam logo abaixo da lista de episódios MyAnimeList
  • [ ] 5. Melhorias na lista de episódios: Se o quarto ponto for adicionado, os animes que clicarmos abrirão direto na lista de episódios e por isso seria util fazer algumas melhorias. Estas melhorias seriam:

  • Mostrar com mais clareza quais episódios já foram assistidos: Isso pode ser feito acinzentando o episódio assistido, assim como é feito no Tachiyomi. Outra coisa util seria uma tag de assistido.

  • Botão para marcar/desmarcar o episódio como assistido: Acho que aquela parte de Você já assistiu: x% deva ficar em cada episódio e, ao chegar em 100% ele se torne a tag Assistido e o episódio em questão fique acizentado. Ou talvez, para simplificar seja melhor adicionar a tag Não assistido na cor vermelha que, ao clicar sobre ela marque o episódio como visto e faça ele ficar acizentado.

Exemplo 1 Exemplo 2
Dart Tachiyomi tags exemplo

Obs: Estes exemplos estão mal feitos, porém eles servem apenas para dar uma idéia do que pode ser feito aqui.

  • Botão Retomar: Este botão serviria para continuar a assistir o anime, isto é, clicar neste botão faria o episódio depois do ultimo marcado como visto começar a torcar (por exemplo, se você assistiu um certo anime até o episódio 3, quando você clicar no botão Retomar o episódio 4 começará a tocar). Isso é baseado no recurso de retomar que está presente no Tachiyomi.
Exemplo (No exemplo: Tachiyomi)
Retomar
  • [ ] 6. Multiplas opções de ordenação nos favoritos: Basicamente uma opção que altera a forma de como os favoritos são mostrados. Seria útil ter pelo menos 3 opções. Elas seriam:

  • Ordem alfabética (A-Z): Os favoritos seriam mostrados em ordem alfabética.

  • Atualizado recentemente: Os favoritos que tiveram um episódio assistido ou um novo episódio lançado seriam listados primeiro.

  • Adicionado recentemente: Os favoritos adicionados recentemente seriam listados primeiro.

  • [ ] 7. Abas de Assistindo/Concluído nos favoritos: Seria incrivel se a aba de Favoritos fosse dividida em duas abas:

  • Assistindo: Aqui serão listados apenas os animes que você ainda não assistiu todos os episódios ou os que ainda estão em lançamento (mesmo que você já tenha visto todos os episódios lançados até o momento).

  • Concluído: Aqui serão listados apenas os animes que você viu todos os episódios e que já não estão mais em lançamento.

Obs 1: Para saber quais animes ainda estão em lançamento eu acho que dá para usar a API do MyAnimeList ou a do AniList.

Obs 2: Para implementar isso sem modificar muito a UI eu creio que dá para colocar um botão em algum lugar para alternar entre as abas.

  • [ ] 8. Opção para encontrar qual é o anime, mangá, etc. a partir de imagens, gifs e/ou vídeos: Não sei se isso é possível de ser implementado, mas seria incrível se fosse. Existe um bot do Twitter para isso e um site também e ambos são até quem bem precisos ao encontrar qual é a obra da imagem, vídeo, etc.

RickyM7 avatar Dec 21 '20 13:12 RickyM7

Olá @RickyM7! Muito obrigado pelo feedback. Fico realmente feliz com seu apoio ao projeto. Tenho planejamento de atualmente construir um servidor à parte para este aplicativo para permitir a autenticação e a utilização de múltiplas fontes.

Será muito útil as fontes que você citar, pois elas provavelmente também irão estar na release da versão 2.0

Muito obrigado pela issue organizada e bem descritiva, espero que possamos aproveitar destes recursos em breve =)

alexrintt avatar Dec 21 '20 13:12 alexrintt

Tenho planejamento de atualmente construir um servidor à parte para este aplicativo para permitir a autenticação e a utilização de múltiplas fontes.

Isso é muito interessante. Ter fontes alternativas vai ser muito útil.

Será muito útil as fontes que você citar, pois elas provavelmente também irão estar na release da versão 2.0

Isso é ótimo, fico feliz que posso ajudar.

Muito obrigado pela issue organizada e bem descritiva, espero que possamos aproveitar destes recursos em breve =)

Eu quem agradeço. Mal posso esperar pelas próximas atualizações.

RickyM7 avatar Dec 21 '20 14:12 RickyM7

@LaksCastro Adicionei o tópico sobre a função de retomar (citado no issue #8) e adicionei também o tópico sobre o menu flutuante (citado no issue #7), além disso eu fiz algumas pequenas mudanças em alguns pontos para ficar melhor de entender as propostas.

Agora algo um pouco fora do contexto. Você falou sobre ter feito este app em apenas 10 dias no issue #8 (trabalhando por cima da primeira versão deste app que era bem bugada). Eu vi esta informação na primeira vez que abri o app e fiquei espantado, pois independentemente de ter feito por cima de uma outra versão, esse app está muito bem trabalhado, principalmente levando em conta a linguagem em que ele é escrito (dart) (obs: não sou programador, então talvez eu fale alguma besteira). A maioria dos projetos que sigo que são feitos em dart são bem bugados, pesados e até um pouco esquisitos, mas o seu app é bem agradável de se usar. É comum que apps feitos para celulares (android e ios) sejam feitos em kotlin por ser mais compatível com a plataforma e por aparentemente ser mais fácil de programar. Minha pergunta é, porque você não usou a linguagem kotlin para programar este app, visto que você sabe programar nesta linguagem?

RickyM7 avatar Jan 02 '21 12:01 RickyM7

Ótimo! Valeu @RickyM7 . Aproveitei e marquei essa issue no projeto de UI e Features, não tem ideia de como esses requisitos iluminam na hora de programar algo, valeu mesmo keke

Aplicativos híbridos vs Aplicativos nativos

Basicamente um aplicativo nativo é feito utilizando a linguagem da plataforma, no caso do Android, o Kotlin (ou Java). Enquanto aplicativos híbridos são feitos utilizando outra linguagem (No meu caso, o Dart).

Diferenças

Não tenho muita experiência com aplicativos nativos, mas as principais diferenças entre estes dois tipos de aplicativos são:

  1. Aplicativos nativos são compatíveis somente com uma plataforma (No caso de aplicativos feitos em Kotlin, este app só é disponível para Android). E aplicativos híbridos conseguem ser compatíveis tanto com Android e IOS.
  2. Gerenciamento de estado. Este entre outros, são tópicos mais técnicos e relacionados ao Dart em si, então caso tenha curiosidade vou deixar o link

Por que Dart?

  1. Tanto por fatores técnicos quanto fatores do contexto do projeto.
  2. No meu trabalho é utilizado o Dart; então faz mais sentido focar apenas em Dart e aprimorar cada vez mais meu conhecimento nesta linguagem para conseguir entregar um resultado melhor tanto neste projeto quanto para a empresa, do que estudar duas linguagens distintas com várias diferenças e acabar meio que não conseguindo realizar um bom trabalho em nenhum dos projetos.
  3. O aplicativo será compatível com Android e IOS; Apesar de ainda não ser possível baixar o executável do IOS (Por eu não ter um Iphone e nem um MacOS), é possível gerar ele com um MacOS. Apesar de ser uma boa vantagem oferecida pelo Dart, acredito que neste projeto essa vantagem é meio... não é tão grande assim, pois a maioria do público utiliza Android e não é um projeto comercial que precisa de fluxo constante e compra do máximo de usuários possível. Então essa é uma vantagem boa, mas não uma vantagem essencial, então caso eu estivesse trabalhando com Kotlin, eu utilizaria neste projeto também.

Notas

  1. Utilizei o nome Dart várias vezes, mas o aplicativo não é feito em Dart puro, ele é construído por cima de um conhecido framework: O Flutter, que acredito que torna o desenvolvimento mobile extremamente simples e fácil.
  2. Acredito que a linguagem não fará muita diferença. Ambas as ferramentas e linguagens oferecem um poderoso ecossistema que permite criar qualquer tipo de aplicativo da melhor forma possível, claro, cada uma apresenta desvantagens e vantagens, mas todas deixam criar um produto excelente se souber utilizá-la. (Ps: acho Android nativo com Kotlin estiloso demais, tava estudando escondido uns dias desses kekek)

alexrintt avatar Jan 02 '21 14:01 alexrintt

@LaksCastro De verdade, muito obrigado por todas as explicações. É ótimo saber que programar esse app também acaba te ajudando no trabalho. Eu não tenho conhecimento suficiente para entender as partes mais técnicas, mas planejo aprender (espero começar a estudar ainda esse ano), o meu maior problema é não ter um notebook bom (o que tem aqui na minha casa provavelmente explodiria se eu executasse o Android Studio por exemplo, kkkkkk). Eu já conhecia o Flutter e sei que ele realmente facilita na hora de programar um app mobile (talvez eu use ele para começar a programar). Enfim, mais uma vez obrigado pelas respostas e obrigado por trabalhar neste projeto, é realmente muito gratificante ver um programador brasileiro trabalhando em algo que eu gosto.

RickyM7 avatar Jan 02 '21 14:01 RickyM7

Kkkkkk, entendo perfeitamente, iniciei no Flutter com 4gb de ram e um pentium, aguentou sofrendo mas aguentou.

Fico feliz que tenha planos em aprender essa área mobile; e quem sabe, em breve possamos contribuir juntos no código. Nestas próximas semanas vou postar umas atualizações nas issues sobre alguns tópicos do projeto, então conto contigo kekke.

alexrintt avatar Jan 02 '21 15:01 alexrintt

Fico feliz que tenha planos em aprender essa área mobile; e quem sabe, em breve possamos contribuir juntos no código.

Com certeza, ajudar os projetos que gosto é muito gratificante e programação e uma coisa que me empolga muito.

Nestas próximas semanas vou postar umas atualizações nas issues sobre alguns tópicos do projeto, então conto contigo kekke.

Sem problemas, vou ajudar sempre que puder.

RickyM7 avatar Jan 02 '21 16:01 RickyM7

opa @RickyM7 tudo certo mano? Gostaria de saber contigo o que acha de adicionar além de animes, adicionar também mangás e light novels. Acha que seria uma ideia válida? O que acha?

alexrintt avatar Jan 13 '21 01:01 alexrintt

@LaksCastro Ter tudo junto seria bem legal, porém eu ainda acho que ter aplicativos separados seja a melhor opção por conta de alguns fatores:

  1. Difenças entre mídias: Cada um desses itens possuem mídias diferentes (vídeo (animes), imagem (mangás) e texto (novels)) e eu acho que isso pode causar alguns problemas e deixar o aplicativo muito pesado (não é um grande problema para mim, mas pode ser para os outros).

  2. Manutenção: Cada mídia tem suas peculiaridades e isso pode gerar muitas manutenções em um curto espaço de tempo, fazendo com que o aplicativo precise ser atualizado toda hora.

Existem outros fatores, porém eu não estou lembrando, mas o que eu disse acima deve dar uma idéia do que penso.

Um detalhe importante: Com a existência do Tachiyomi, que é um aplicativo insanamente completo para leitura de mangás eu creio que não faz muito sentido trabalhar em algo parecido, então eu acho que focar na criação de um leitor de novels seja melhor, porém, em relação ao leitor de novels também existe um problema, a falta de sites que traduzem novels para português. Uma idéia para contornar isso seria adicionar os diversos sites internacionais de tradução de novels ao leitor e criar uma opção para traduzir as novels (parecido com as extensões de tradução de páginas vistas em navegadores). De qualquer jeito eu tenho algumas ideias para o leitor de novels e criarei um novo issue se for decidido que isso será feito.

RickyM7 avatar Jan 13 '21 04:01 RickyM7

É, realmente. Faz mais sentido um aplicativo diferente para cada um. Vou manter o foco no Streaming de vídeo mesmo por enquanto. Obrigado @RickyM7 tinha pontos que nem me dava conta pelo foco estar totalmente no desenvolvimento, como foi a parte do Tachiyomi hehe.

alexrintt avatar Jan 13 '21 12:01 alexrintt

@LaksCastro Ótimo. Aliás, se por acaso você criar um leitor de novels em algum momento, por favor me fale pois eu vou quer acompanhar esse projeto também.

RickyM7 avatar Jan 13 '21 12:01 RickyM7

@LaksCastro Removi as fontes em Inglês do item 3. e adicionei o site Anime Piracy Index no tópico Outros para compensar. Também adicionei uma nova coisa no item 4. no tópico Melhorias (Player) e por último eu adicionei os itens 6. e 7..

RickyM7 avatar Jan 18 '21 22:01 RickyM7

Perfeito, tinha adicionado umas sources em Inglês, pois como estou criando o aplicativo bem tranquilo (sem pressa kk), tá sendo possível criar uma arquitetura limpa, com isso o app vai suportar tranquilamente internacionalização; claro, o app vai ser focado no português com certeza, mas também vou adicionar outros idiomas a medida do possível.

E obrigado pelos ajustes! Cara, esse player vai ficar uma belezura, pode ter certeza que cada detalhe vai ser considerado em desenvolvimento. Então quanto mais detalhado, melhor, obrigado mesmo =)

alexrintt avatar Jan 18 '21 23:01 alexrintt

Perfeito, tinha adicionado umas sources em Inglês, pois como estou criando o aplicativo bem tranquilo (sem pressa kk), tá sendo possível criar uma arquitetura limpa, com isso o app vai suportar tranquilamente internacionalização; claro, o app vai ser focado no português com certeza, mas também vou adicionar outros idiomas a medida do possível.

O site que adicionei tem muitas fontes em Inglês e outras coisas, vale a pena dar uma olhada depois. Acho que é ótimo ter suporte a outros idiomas (principalmente Inglês e Chinês, pois esses são os idiomas mais falados do mundo) pois isso dá mais visibilidade ao aplicativo e também pode atrair outros programadores para ajudar um pouco no desenvolvimento.

E obrigado pelos ajustes! Cara, esse player vai ficar uma belezura, pode ter certeza que cada detalhe vai ser considerado em desenvolvimento. Então quanto mais detalhado, melhor, obrigado mesmo =)

Eu quem agradeço, fico muito feliz que minhas ideias estejam sendo aceitas. Muito obrigado por estar trabalhando com tanto empenho nesse aplicativo, mal posso esperar para ver os frutos do seu trabalho.

RickyM7 avatar Jan 19 '21 00:01 RickyM7

@RickyM7 Falando sobre o design, o aplicativo está sendo construído dessa forma: eu avalio as issues, vejo e revejo o que deve ser construído, movo isto para a aba Projects, e de lá começo a construir o design em um site chamado Figma, o design está disponível neste link. Então caso tenha curiosidade ou interesse em alterar/documentar qualquer coisa no Design, saiba que está disponível bem aí. Você pode:

  • Criar caixas de texto explicando funcionalidades de botões/ícones/indicadores/qualquer coisa
  • Adicionar qualquer coisa na interface e deixar um cardzinho explicando a razão.
  • Criar qualquer página que achar necessário no aplicativo
  • Criar o player inclusive

Essa ferramenta é bastante livre e leve, então fique totalmente a vontade.

Esse design é basicamente um spoiler de como ficará o aplicativo, então caso tenha interesse em contribuir com o produto final, saiba que é possível através desse link.

Caso queira editar o design pelo link, preciso que mande seu e-mail para eu adicionar à lista de pessoas autorizadas, aí consigo te dar a permissão pra editar e não somente visualizar. Isso é necessário para evitar que qualquer pessoa entre no link e edite as coisas.

Se preferir não mostrar seu e-mail nessa thread você pode enviar o seu e-mail pelo Discord se tiver (Laks#1618) ou entrar em contato comigo diretamente no meu e-mail que está na descrição do meu perfil: [email protected]

Mas claro, se preferir manter as sugestões somente nas issues, não vejo problema algum, ajuda da mesma forma, essa é somente uma alternativa que estou mostrando como forma de te incluir mais no projeto visto que contribui bastante =)

Valeu @RickyM7

alexrintt avatar Jan 19 '21 00:01 alexrintt

Caramba, sensacional! Não sei se aquele será o design final, mas eu gostei demais do que vi, está muito bonito e organizado, além de não ter nada de exagerado (como por exemplo muitas informações em pouco espaço, fontes de texto estranhas ou animações demais, coisas que na minha opinião não são agradáveis). Sobre essa ferramenta, eu não vou modificar nada diretamente, mas vou dar uma olhada nesse site de tempos em tempos e se eu tiver alguma ideia para aprimorar o design eu comento aqui.

RickyM7 avatar Jan 19 '21 01:01 RickyM7

Sim, kkkk, gostei do design também apesar de ainda faltar bastante coisa, mas acredito que vai ficar legal, as issues tão dando um bom norte. Mas é isso, sinta-se livre pra modificar e continuar contribuindo aqui pelo Gh =D

alexrintt avatar Jan 19 '21 01:01 alexrintt

@LaksCastro Opa, beleza? Eu gostaria de saber se existe alguma novidade do projeto ou alguma estimativa da data de lançamento da v2.0. Aliás, se existir um grupo no Telegram sobre o projeto eu gostaria de participar.

RickyM7 avatar Apr 27 '21 00:04 RickyM7

Opa, beleza @RickyM7? O projeto hoje tá numa situação complicada, atualmente estou trabalhando pra duas empresas (Comecei a trabalhar para outra neste meio período), ambas consomem 11~12h diariamente, isso toma o tempo e energia (bastante energia). Então atualmente a situação está mais no sentido:

  1. Trabalhar
  2. Gerar renda
  3. Investir esta renda
  4. Futuramente conseguir financiar este projeto (Principalmente contratar mais desenvolvedores para as áreas necessárias, back-end e mobile)
  5. Conseguir pagar uma melhor infraestrutura (Servidor, custos de manutenção e principalmente oferecer um melhor conteúdo/experiência, eu até pensei em inicialmente dentro do aplicativo uma pequena doação, mas infelizmente essas pequenas doações não seriam suficientes para gerar uma renda constante que pudessem financiar um desempenho que honrasse a generosidade de cada doador, afinal tenho as mesmas 24h que todo mundo).

Infelizmente eu não posso levar este projeto sozinho, ele é bem grandinho e não possui nenhum patrocínio ou qualquer intuito comercial.

Não dou conta de conseguir cumprir uma carga horária de 11~12h por dia e ainda manter este projeto sozinho, então prefiro por enquanto focar somente na geração de renda e multiplicação da mesma pra então pensar em financiar este projeto.

Afinal, este projeto foi iniciado/construído na época que eu ainda não trabalhava e tinha minha carga horária totalmente livre, o que não é o caso atualmente :(

alexrintt avatar Apr 27 '21 03:04 alexrintt

Entendi, é ótimo saber que você não abandonou o projeto, mas sim apenas o colocou em segundo plano por enquanto e eu entendo completamente seus motivos. Sobre as doações, creio que mesmo que não sejam suficientes para financiar o projeto por completo, talvez pelo menos forneçam o suficiente para trabalhar em uma ou duas coisas com mais tranquilidade, inclusive tem uma plataforma legal sobre isso, a Bountysource, se você não conhece eu recomendo que dê uma olhada. Enfim, obrigado pela resposta e por não abandonar o projeto e boa sorte no trabalho.

RickyM7 avatar Apr 27 '21 08:04 RickyM7