Skip to content

MarczalTSIGP/SGTCC

Repository files navigation

Maintainability Test Coverage Build Status

Sistema de Gestão de Processos de Trabalho de Conclusão de Curso (SGTCC)


O que é o SGTCC?

É um sistema de gestão de processos de trabalho de conclusão de curso de Tecnologia em Sistemas para Internet (TSI) da UTFPR Câmpus Guarapuava.


Índice

Sobre

O objetivo desse sistema foi aperfeiçoar o SGTCC do curso de TSI, de modo a eliminar o uso de documentos impressos e assinaturas físicas. Para este fim, foi utilizado a assinatura eletrônica.

Tecnologias

O projeto foi desenvolvido com as seguintes tecnologias:

Instalação local

Este sistema contém alguns requisitos para rodar localmente:

1. Requisitos

Primeiro é preciso instalar os seguintes pacotes

nodejs
libpq-dev
postgresql
postgresql-contrib
imagemagick
yarn

Também é necessário instalar o Bundler e o Rails

$ gem install bundler
$ gem install rails

2. Clonar o projeto

$ git clone https://github.com/utfpr-gp-tsi/SGTCC.git

3. Acessar a pasta do projeto

cd SGTCC

4. Instalar as dependências

Instalar as gems do ruby

$ bundle install

Instalar os pacotes JavaScript

$ yarn install

5. Configurar o PostgreSQL

Criar um arquivo chamado "application.yml" usando o examplo "appplication.yml.example"

$ cp config/appplication.yml.example config/application.yml

Nesse arquivo é preciso alterar o username e o password conforme seu usuário e senha do PostgreSQL

database: &database
  db.username: postgres
  db.password: postgres
  db.host: localhost

6. Configurar o envio de emails

No "application.yml" é preciso alterar o username e password. Nesse projeto está sendo usado o mailtrap para enviar emails.

mailer: &mailer
  mailer.smtp.username: 'username'
  mailer.smtp.password: 'password'

7. Criar o banco de dados e as tabelas

$ rails db:create
$ rails db:migrate

8. Popular a aplicação para testes

$ rails db:populate

9. Rodar a aplicação

$ rails s

e em outro terminal rodar o servidor do webpack:

$ yarn run webpack

10. Acessar a aplicação no navegador

Rodando os testes

Primeiro, é preciso criar a base de dados para os testes

$ rails db:create RAILS_ENV=test
$ rails db:migrate RAILS_ENV=test

Rodar testes do rspec

$ rspec

Qualidade do código

Ruby:

$ rubocop

JavaScript:

$ yarn run lint