Skip to content

Aplicação FullStack capaz de gerenciar links, com a URL e um título/label, os dados desses links ficam armazenados em um banco de dados na nuvem. O usuário é capaz de criar uma conta e fazer login na plataforma utilizando autenticação JWT para gerenciar seus links.

Notifications You must be signed in to change notification settings

GuilhermeRX/Gerenciador-Links

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LinkManager

Aplicação FullStack capaz de gerenciar links, com a URL e um título/label, os dados desses links ficam armazenados em um banco de dados na nuvem. O usuário é capaz de criar uma conta e fazer login na plataforma utilizando autenticação JWT e pode gerenciar todos os seus links através de uma interface bastante intuitiva e pensada para propor uma melhor experiência para o usuário.
Explore a documentação da API»

Ver Aplicação · Reportar Bug ·

Índice
  1. Sobre o Projeto
  2. Começando
  3. API Endpoints
  4. Futuras Implementações
  5. Contribuições
  6. Contatos

Sobre o Projeto

LinkManager Este repositório conta com duas aplicações, o primeiro é o Back-End onde temos uma API que foi desenvolvida seguindo os melhores padrões de código, como arquitetura MSC, Eslint, clean code, programação orientada a objetos e principios SOLID, além disso contamos com um processo de automação chamado CI/CD(Integração contínua/Entrega contínua), utilizando Actions. Uma CI é realizada com sucesso quando novas mudanças no código são desenvolvidas e testadas, após esses passos, temos o CD que realizará o deploy da aplicação automaticamente. Em nossa aplicação Front-End temos uma interface que foi pensada para proporcionar a melhor experiência possivel para a pessoa usuária, também seguindo os melhores padrões de código e utilizando um dos melhores frameworks do mercado.

(voltar para o topo)

Ferramentas utilizadas

  • JavaScript
  • React
  • Styled
  • Node
  • TypeScript
  • Docker
  • Express
  • Sequelize
  • Mocha
  • Chai
  • Heroku
  • Supabase
  • Swagger
  • Eslint

(voltar para o topo)

Começando

Pré-requisitos

  1. É necessário que você tenha um banco de dados relacional ativo

Para rodar a aplicação localmente, siga estas etapas.

Instalação

  1. Clone o repositório
    git clone [email protected]:GuilhermeRX/Gerenciador-Links.git
  2. Instale os pacotes NPM
    npm install
  3. Configurar o dialeto do sequelize de acordo com o banco de dados que estiver utilizando.
  • Acesse o diretório.

    cd ./Back-End/src/database/config/
  • Abra o arquivo config/database.ts e faça as modificações necessárias na chave 'dialect' na linha 10.

    dialect-screen

  1. Configure as variávies de ambiente no arquivo ./Back-End/.env
     PORT=portaDoServidorExpress
     DB_USER=userNameDeAcessoAoBanco
     DB_PASS=passwordDeAcessoAoBanco
     DB_HOST=hostDoBanco
     DB_PORT=portaDeAcessoAoBanco
     JWT_SECRET=segredoDoTokenJwt
     DB_DATABASE=nomeDoSeuBancoDeDados;
  2. Configure as variáveis de ambiente no arquivo ./Front-End/.env
    REACT_APP_API_URL=http://localhost:backendport
  3. Entre no repositório ./Back-End, execute o script que realizará a transpilação do código typescript para javascript e criará as tabelas de nosso banco.
    npm run dev
  4. Entre no repositório ./Back-End e execute os testes de integração.
    npm test
  • A saida deve ser a seguinte:

    testes-screen

  1. Ainda no repositório ./Back-End execute o comando para iniciar o servidor.
    npm start
  2. Agora em ./Front-End execute o comando para iniciar a aplicação React.
    npm start

(voltar para o topo)


API Endpoints

Você pode conhecer melhor a documentação da API e seus endpoints Neste Link!

(voltar para o topo)

Futuras implementações

  • Página para editar dados da pessoa usuária.
  • Automatizar o processo de salvar links com um web crawler.
  • Testes End-to-End

(voltar para o topo)

Contribuições

As contribuições são o que tornam a comunidade de código aberto um lugar incrível para aprender, inspirar e criar. Quaisquer contribuições que você fizer são muito bem-vindas.

Se você tiver uma sugestão, faça um fork do repositório e crie uma solicitação pull. Você também pode simplesmente abrir uma Issues com a tag "melhoria". Não se esqueça de dar uma estrela ao projeto! Muito Obrigado!

  1. Fork do Projeto
  2. Crie uma nova branch (git checkout -b feature/nomeDaFeature)
  3. Commit suas mudanças (git commit -m 'feat: suaNovaFeature')
  4. Faça um Push (git push origin feature/nomeDaFeature)
  5. Abra um Pull Request

(voltar para o topo)

Contatos

Luiz Guilherme Avelino - LinkedIn - [email protected]

(voltar para o topo)

About

Aplicação FullStack capaz de gerenciar links, com a URL e um título/label, os dados desses links ficam armazenados em um banco de dados na nuvem. O usuário é capaz de criar uma conta e fazer login na plataforma utilizando autenticação JWT para gerenciar seus links.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published