Skip to content

IFRS-CampusFarroupilha/if_torrent

Repository files navigation

IFTorrent - Compartilhando Arquivo e Ideias

O projeto IFTorrent tem por finalidade a criação de um cliente torrent para o compartilhamento de arquivos nos campi da rede federal de institutos de educação, ciência e tecnologia.

A aplicação foi desenvolvida em linguagem Java, mas há a utilização de outras linguagens, como CSS e FXML para a estruturação da interface gráfica. Além disso, foi desenvolvido um site para download de arquivos torrents, este em HTML, CSS, PHP e MySQL.

Para mais detalhes, acesse a nossa documentação aqui.

Download

Sinta-se livre para baixar o código-fonte da nossa aplicação no link abaixo. *Obs: necessita da IDE NetBeans e do Java Development Kit instalados.

https://github.com/IFRS-CampusFarroupilha/-if_torrent

Ou, se preferir, baixe apenas o cliente (sem instalação) no seguinte link:

http://web.farroupilha.ifrs.edu.br/paginas/~temp1/IFTorrent.rar

Requisitos de Sistema

Requisito Mínimo Recomendado
Sistema Operacional Windows Windows
Processador Intel Core i7-5500U Intel Core i9-7900x
Memória RAM 2GB 8GB
Espaço em Disco 9MB 9MB
Placa de Vídeo nenhum nenhum
Softwares adicionais Java Runtime Environment Java Runtime Environment
Hardwares adicionais nenhum nenhum

Como usar

Após o download do cliente, basta abrir a pasta e dar um duplo clique no arquivo IFTorrent (arquivo com extensão .jar). Caso tenha optado pelo download do projeto, o arquivo IFTorrent se encontrará dentro da pasta dist.

Em caso de algum erro ou dúvida, o cliente torrent possui a opção para contato no menu "Ajuda".

Desenvolvimento

O projeto foi desenvolvido principalmente em Java através da IDE NetBeans. Para a implementação da parte Web não houve um editor fixo, permitindo que os integrantes da equipe escolhessem qual usar.

Foram usadas também algumas ferramentas para auxiliar o desenvolvimento do projeto:

  • Wiki (para a documentação do projeto);
  • Bugzilla (para a organização de bugs do projeto);
  • Repositório SVN (para o controle de versões do software e para organizar o desenvolvimento em equipe);
  • Java Scene Builder (para a construção da interface gráfica do cliente);
  • Balsamiq Mockups 3 (para a prototipação do cliente);
  • Google Drive (para a organização de documentos gerados durante o projeto);
  • Google Planilhas (para a organização das tarefas do projeto).

Além disso, foram usadas algumas bibliotecas para dispensar a necessidade de desenvolver recursos desejáveis:

  • bt - biblioteca que implementa o protocolo BitTorrent desenvolvida pelo Andrei Tomashpolskiy;
  • Commons Email - biblioteca para envio de e-mails desenvolvida pela Apache e que, por sua vez, necessita das bibliotecas mail e activation, ambas desenvolvidas pela Oracle;
  • Bouncy Castle - biblioteca para criptografia desenvolvida pela The Legion of the Bouncy Castle;
  • MySQL Connector/J - biblioteca para realizar a conexão com o banco de dados desenvolvida pela MySQL.

A equipe optou pela Metodologia Ágil como forma de desenvolvimento do cliente por ser mais eficiente no quesito adaptação.

Possíveis implementações

  • Permitir as ações pausar e reiniciar no download de um arquivo;
  • Permitir a alteração da estrutura da interface gráfica (como ocultar alguns componentes);
  • Melhorar o gráfico referente as velocidades de download e upload;
  • Tornar o cliente compatível com o sistema Linux.

Sobre o cliente

Para facilitar, no próprio cliente é disponibilizado um pequeno tutorial de uso do programa. Para acessá-lo, basta clicar na opção "Ajuda" no menu superior e após selecionar a opção "Fazer um Tour". Como maneira alternativa, também é possível iniciar o tour através do conjunto de teclas "Ctrl + F1".

Interface do cliente Torrent

Sobre o site

O site para download de arquivos torrents se encontra no link abaixo:

http://web.farroupilha.ifrs.edu.br/paginas/~iftorrent/

Interface do site

Licença

O nosso cliente torrent é distribuído segundo a licença The MIT License (Licença MIT). Abaixo segue a tradução literal da licença:

Copyright © 2018 <detentores de direitos autorais>

A permissão é concedida gratuitamente a qualquer pessoa que obtenha uma cópia deste 
software e arquivos de documentação associados (o “Software”), para lidar com o 
Software sem restrições, incluindo, sem limitação, os direitos de uso, cópia, 
modificação, fusão, publicação, distribuição, sublicenciar e/ou vender cópias do 
Software, e permitir que pessoas a quem o Software esteja fornecido para tal, 
sujeito às seguintes condições:

O aviso de copyright acima e este aviso de permissão devem ser incluídos em todas 
as cópias ou partes substanciais do Software.

O SOFTWARE É FORNECIDO “COMO ESTÁ”, SEM GARANTIA DE QUALQUER TIPO, EXPRESSA OU 
IMPLÍCITA, INCLUINDO NÃO LIMITADA ÀS GARANTIAS DE COMERCIALIZAÇÃO, ADEQUAÇÃO A UM 
FIM ESPECÍFICO E NÃO INFRAÇÃO. EM NENHUMA CIRCUNSTÂNCIA, OS AUTORES OU OS TITULARES 
DOS DIREITOS AUTORAIS SERÃO RESPONSÁVEIS POR QUALQUER RECLAMAÇÃO, DANOS OU OUTRAS 
RESPONSABILIDADES, SEJA EM AÇÃO DE CONTRATO, DELITO OU OUTRO, DECORRENTE DE, FORA OU 
RELACIONADA COM O SOFTWARE OU O USO OU OUTRAS CONCESSÕES NO SOFTWARE.

Para acessar o conteúdo original da licença (em inglês) acesse o seguinte link:

https://mit-license.org/

Equipe

A nossa equipe é composta, atualmente, por nove integrantes:

Há alguns membros que não integram mais a equipe, mas que merecem créditos:

  • Sérgio Brunetta (aluno voluntário);
  • Cléber Masieski (aluno voluntário);

Contate-nos

Para qualquer problema que nosso cliente ou nosso site possa vir a gerar, pedimos que nos avise. Ademais, estamos abertos para novas ideias e impressões sobre o programa. Seu feedback é muito importante!

E-mail: [email protected]