Skip to content

API backend desenvolvida com NestJS para fornecer os dados do meu portfólio pessoal. Este projeto gerencia informações sobre mim, minhas habilidades e projetos, permitindo que o frontend, criado com Angular, busque e exiba os conteúdos de forma dinâmica e eficiente.

Notifications You must be signed in to change notification settings

CristianoMends/portifolio-api

Repository files navigation

Portifolio API

Introdução

Este repositório contém o código-fonte da API REST desenvolvida para gerenciar informações do portfólio. Essa API permite a criação, leitura e exclusão de dados relacionados a projetos, habilidades, experiências e outras informações relevantes.

Tecnologias Utilizadas

  • Node.js: Ambiente de execução JavaScript.
  • NestJS: Framework para construir aplicações Node.js escaláveis.
  • TypeORM: ORM para TypeScript e JavaScript.
  • VercelBlob: Storage para armazenamento de imagens.
  • PostgreSQL: Banco de dados relacional.

Funcionalidades

  • Projetos: Crie e delete seus projetos, incluindo informações como nome, descrição, tecnologias utilizadas e links para repositórios.
  • Habilidades: Liste suas habilidades técnicas e suas respectivas proficiências.
  • Repositórios: faça buscas aos seus repositorios do Github.
  • Certificações: Armazene informações sobre suas certificações.
  • Analises: Armazene informações sobre os acessos.
  • Sobre Mim: Crie uma seção "Sobre Mim" personalizada.

Objetivo

O sistema oferece uma experiência dinâmica para gerenciar portfólios, permitindo adição e remoção de informações sem a necessidade de redeploy. Isso facilita a manutenção e garante que o portfólio esteja sempre atualizado.

Como Rodar o Projeto

Pré-requisitos

  • Token do GitHub
  • Token do Vercel Blob
  • URL de conexão com banco PostgreSQL

Passos para Executar

  1. Clone o repositório:
git clone https://github.com/CristianoMends/portifolio-api
cd portifolio-api
  1. Configure as variaveis de ambiente

Crie um arquivo .env no diretório raiz do projeto e adicione as seguintes variáveis:

BLOB_READ_WRITE_TOKEN=token_do_vercel_blob
DATABASE_URL=jdbc:postgresql://host:port/database
GITHUB_TOKEN=seu_token_github
GITHUB_USER=seu_usuario_github
ALLOWED_DOMAIN=http://localhost:4200 # Dominio permitido para requisições
ALLOWED_IP=192.168.1.100 # IP permitido para requisições
ALLOWED_TOKEN=defina_uma_senha_para_requisicoes
  1. Inicie a aplicação:
npm install
npm run start
  1. Acesse a aplicação:
http://localhost:3000
  1. Acesse a documetação do swagger:
http://localhost:3000/api

About

API backend desenvolvida com NestJS para fornecer os dados do meu portfólio pessoal. Este projeto gerencia informações sobre mim, minhas habilidades e projetos, permitindo que o frontend, criado com Angular, busque e exiba os conteúdos de forma dinâmica e eficiente.

Resources

Stars

Watchers

Forks