Protótipo funcional de uma aplicação web para o espaço de Coworking do Campus da UFC/Sobral.
Após baixar o repositório, será necessário instalar as dependências do NODE para o pleno funcionamento do protótipo. Para isso, utilizamos o npm i, tanto para o backend quanto frontend.

Logo após instaladas as dependências, crie uma cópia do arquivo env_file, localizado na pasta backend. Renomeie a cópia para .env, este será o arquivo de configuração onde será feita a conexão com banco de dados. Ele deve seguir o seguinte padrão:
O valor de authSecret pode ser qualquer coisa, ele servirá para gerar um token de validação para conexão com o banco. Serve como parâmetro de segurança. O formato .env é utilizado, pois ele não é enviado para o repositório git com as informações de conexão com o banco. Logo, é uma forma de proteger dados sensíveis.
O sistema de gerenciamento de banco de dados utilizado foi o Postgres, que deverá ser instalado na máquina. Clique aqui para instalar a versão 13.2 para Windows 64bits.
Durante a instalação do postgres, será necessário cadastrar um usuário e senha para acesso ao banco. Neste protótipo, utilizamos o usuário padrão de nome 'postgres' e senha 1234. Após a instalação, é necessário adicionar o caminho de instalação do postgres nas variaveis de ambiente do sistema. A pasta geralmente se encontra em C:\Program Files\PostgreSQL\13\bin
Com as dependências do node instaladas e o postgres devidamente configurado, o banco deve ser criado utilizando o CMD. Abaixo, seguem os comandos para utilizar o postgres no CMD.
psql -U postgres // para acessar o postgres
1234 // senha exigida
create database coworkingUFC // banco criado
Abaixo, seguem outros comandos interessantes para uso no postgres. Outros comandos básicos podem ser acessados aqui.
\l // visualizar todos os DB's existentes
\c coworkingufc // comando para conectar ao banco coworkingUFC
\dt // visualizar todas as tabelas do banco
select * from table(indicar nome da tabela requerida) // visualizar todos os campos de uma tabela
Com o banco criado, também precisaremos do MongoDB, que é utilizado para gerenciar as estatísticas do projeto(Quantidade de programas, projetos e reservas). Clique aqui para baixar o MongoDB versão Windows 64Bits.
Após a instalação do MongoDB, será necessário criar uma pasta no diretório C: com o nome data, e dentro da mesma, uma outra pasta com nome db. O mongoDB precisa desse local para inicializar e salvar dados importantes.
Agora, adicione o caminho de instalação do mongo nas variáveis de ambiente, assim como foi feito com o postgres. A pasta usualmente será C:\Program Files\MongoDB\Server\4.4\bin. Então, acesse a pasta bin do programa e execute o arquivo .exe mongod. Ele irá iniciar na porta 27017.
Agora, para executarmos o projeto, basta inserir o comando npm start na pasta backend e npm run serve -- --port 8080
Após o comando npm start no backend, todas as tabelas do projeto serão criadas, pois está sendo utilizado o Knex JS, um query builder que cria todas as tabelas por meio das migrations, arquivos da pasta backend em que são definidas as tabelas e seus campos.
Inicialmente, com o banco vazio, não teremos nenhum usuário administrador para logar no sistema e realizar certas ações(insert, update e remove de usuários, por exemplo). Logo, para adicionarmos um usuário administrador, siga os passos a seguir:
1ª Adicione um usuário na pagina de cadastro.
2ª modifique a variável admin do usuário criado. Para isso, utilize o comando a seguir, lembrando de setar o ID corretamente. Como é o primeiro usuário, então o ID será 1.
Com isso, o usuário criado se torna administrador, podendo realizar todas as operações basicas do CRUD, além de ter acesso ao menu de Administração. Todos os usuários cadastrados na tela de cadastro são, por padrão, definidos como não administradores.
Agora, é possível acessar as funcionalidades do projeto, seja inserir programas, projetos e reservas, bem como definir novos usuários(administradores ou não).













