Code Monkey home page Code Monkey logo

intranet's Introduction


Intranet

A intranet é um sistema cujo principal objetivo é prover serviços digitais para a comunidade do curso de Ciência da Computação da Universidade Federal da Fronteira Sul (UFFS). Entre os serviços estão páginas pessoais, assistente virtual e agregação de informações.

IMPORTANTE: o serviço está em funcionamento em: cc.uffs.edu.br/intranet.

✨ Features

A intranet possui um conjunto modesto de features:

  • Autenticação a partir do idUFFS;
  • Controle de páginas pessoais (tipo Github Pages);
  • Acesso à assistente virtual do curso;
  • Informações de perfil;

Página inicial da intranet

🚀 Começando

1. Dependências

Para executar o projeto, você precisa ter o seguinte instalado (preceisa php >= 8.0).:

IMPORTANTE: se sua distribuição linux não tem PHP 8.x disponível, rode sudo add-apt-repository ppa:ondrej/php antes de começar.

Você precisa de várias extensões PHP instaladas também:

sudo apt-get update
sudo apt install php8.0-cli php8.0-mbstring php8.0-zip php8.0-xml php8.0-curl php8.0-sqlite3 php8.0-curl

2. Configuração

Feito a instalação das dependências, é necessário obter uma cópia do projeto. A forma recomendada é clonar o repositório para a sua máquina.

Para isso, rode:

git clone --recurse-submodules https://github.com/ccuffs/intranet && cd intranet

Isso criará e trocará para a pasta intranet com o código do projeto.

2.1 PHP

Instale as dependências do PHP usando o comando abaixo:

composer install

2.2 Banco de Dados

O banco de dados mais simples para uso é o SQLite. Para criar uma base usando esse SGBD, rode:

touch database/database.sqlite

2.3 Node

Instale também as dependências do NodeJS executando:

npm install

2.4 Laravel

Crie o arquivo .env a partir do arquivo .env.example gerado automaticamente pelo Laravel:

cp .env.example .env

Criação as tabelas do banco de dados com as migrações esquemas:

php artisan migrate

Rode os seeders (que crias as categorias/serviços padrão):

php artisan db:seed

Gere os recursos JavaScript e CSS:

npm run dev

DICA: enquanto estiver desenvolvendo, rode npm run watch para manter os scripts javascript sendo gerados sob demanda quando alterados.

Por fim, garanta que o storage do Laravel está disponível para acesso web:

php artisan storage:link

3. Utilizacão

3.1 Rodando o projeto

Depois de seguir todos os passos de instalação, inicie o servidor do Laravel:

php artisan serve

Após isso a aplicação estará rodando na porta 8000 e poderá ser acessada em localhost:8000.

🤝 Contribua

Sua ajuda é muito bem-vinda, independente da forma! Confira o arquivo CONTRIBUTING.md para conhecer todas as formas de contribuir com o projeto. Por exemplo, sugerir uma nova funcionalidade, reportar um problema/bug, enviar um pull request, ou simplemente utilizar o projeto e comentar sua experiência.

Veja o arquivo ROADMAP.md para ter uma ideia de como o projeto deve evoluir.

🎫 Licença

Esse projeto é licenciado nos termos da licença open-source MIT e está disponível de graça.

🧬 Changelog

Veja todas as alterações desse projeto no arquivo CHANGELOG.md.

🧪 Links úteis

Abaixo está uma lista de links interessantes e projetos similares:

intranet's People

Contributors

dependabot[bot] avatar dovyski avatar vieir4ndo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

joao-messias

intranet's Issues

Garantir melhor sanitização de usuário do github

A página de configurações aceita qualquer valor para o campo github. Se o usuário informar a URL completa do seu usuário, por exemplo, o sistema tende a se perder em outros locais (como no sistema de sites).

O objetivo é fazer uma sanitização mínima desse campo antes deles ser gravado. Talvez uma regex para garantir que apenas o username do github é salvo, não qualquer url.

Bug ao salvar campo de github no perfil do usuário

Descreva o bug/problema
Bug ao salvar campo de github no perfil do usuário. Depois de informar o campo e apertar no botão salvar, ao recarregar a tela, o campo contínua vazio. Além disso, não é possível ativar o site pessoal pois o campo não foi preenchido no bd.

Reproduzir
Etapas para reproduzir o problema:
Vídeo abaixo.

Comportamento esperado
Depois de informar o campo e apertar no botão salvar, ao recarregar a tela, o campo deve seguir preenchido. Além disso, deve ser possível ativar o site pessoal.

Capturas de tela
Vídeo abaixo.

Desktop (preencha as seguintes informações):
  - Sistema operacional: WIndows 10
  - Navegador Chrome
  - Versão 100.0.4896.127

Smartphone (preencha as seguintes informações):
  - Dispositivo: Redmi note 10 pro
  - Sistema operacional: Android 12
  - Navegador Chrome
  - Versão 99.0.4844.73

WhatsApp.Video.2022-04-25.at.1.30.37.PM.mp4

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.