Enviar arquivos para "/"

This commit is contained in:
2026-04-26 16:08:00 +00:00
commit b9378955dc
5 changed files with 1498 additions and 0 deletions

17
.env.example Normal file
View File

@@ -0,0 +1,17 @@
# 🎮 CONFIGURAÇÃO DO AMBIENTE - Biblioteca do Usuário GameVerse
# Este arquivo mostra quais configurações eu preciso para funcionar
# Configurações do Banco de Dados MySQL
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=
DB_NAME=gameverse_library
# Porta onde eu rodo (porta 3005 para não conflitar com outros serviços)
PORT=3005
# Configurações de CORS (para aceitar requisições de outros serviços)
CORS_ORIGIN=*
# Modo de desenvolvimento
NODE_ENV=development

35
.gitignore vendored Normal file
View File

@@ -0,0 +1,35 @@
# Arquivos do Node.js
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Arquivos de ambiente
.env
.env.local
.env.development.local
.env.test.local
.env.production.local
# Arquivos do sistema operacional
.DS_Store
Thumbs.db
# Logs da aplicação
logs/
*.log
# Arquivos temporários
tmp/
temp/
# Arquivos de backup
*.bak
*.backup
# Arquivos do VS Code (opcionais - descomente se quiser ignorar)
# .vscode/
# Arquivos de teste locais (não subir para o repositório)
test-results/
coverage/

29
app.js Normal file
View File

@@ -0,0 +1,29 @@
const express = require('express');
const cors = require('cors');
const routes = require('./routes/libraryRoutes');
// Este é o coração do nosso microsserviço da Biblioteca do Usuário!
// Aqui eu configuro o servidor Express que vai gerenciar todas as rotas da nossa API.
// É como o porteiro do prédio - recebe as requisições e direciona para os andares certos.
const app = express();
// CORS é fundamental para permitir que outros microsserviços (como o frontend ou Laravel central)
// façam requisições para nossa API sem problemas de segurança do navegador.
app.use(cors());
// Este middleware transforma o corpo das requisições JSON em objetos JavaScript
// que podemos usar facilmente nos nossos controllers.
app.use(express.json());
// Todas as rotas da biblioteca ficam sob o prefixo '/library'
// Isso organiza nossa API e deixa claro que tudo aqui é sobre a biblioteca do usuário.
app.use('/library', routes);
// O serviço roda na porta 3005 - escolhi uma porta alta para não conflitar
// com outros serviços que podem estar rodando na máquina.
app.listen(3005, () => {
console.log('Library Service rodando na porta 3005');
});
// Desenvolvido por: André de Oliveira Braga e Izadora Lima de Mendonça
// Projeto GameVerse - Microsserviços - Centro Universitário Uninorte - Curso de Sistemas de Informação

1387
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

30
package.json Normal file
View File

@@ -0,0 +1,30 @@
{
"name": "library-service",
"version": "1.0.0",
"description": "🎮 Microsserviço da Biblioteca do Usuário - GameVerse. Gerencia jogos comprados e gift cards dos usuários.",
"main": "app.js",
"scripts": {
"start": "node app.js",
"dev": "nodemon app.js",
"test": "echo \"Para testar, use o arquivo tests.http com REST Client\"",
"setup-db": "echo \"Execute o arquivo schema.sql no MySQL Workbench\""
},
"keywords": ["gameverse", "library", "microservice", "nodejs", "mysql"],
"author": "André de Oliveira Braga e Izadora Lima de Mendonça",
"contributors": [
"André de Oliveira Braga",
"Izadora Lima de Mendonça"
],
"license": "MIT",
"dependencies": {
"express": "^4.18.2",
"mysql2": "^3.9.0",
"cors": "^2.8.5"
},
"devDependencies": {
"nodemon": "^3.0.0"
},
"engines": {
"node": ">=14.0.0"
}
}