mirror of
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools.git
synced 2025-12-16 05:25:11 +00:00
Arquivos adicionados: - server.js: Servidor Express para servir a enciclopédia - package.json: Dependências Node.js (Express + compression) - Procfile: Configuração de processo para Scalingo - scalingo.json: Configurações específicas do Scalingo - .gitignore: Ignorar node_modules e arquivos desnecessários - DEPLOY.md: Guia completo de deploy no Scalingo Recursos implementados: ✅ Servidor Express otimizado ✅ Compressão GZIP para melhor performance ✅ Health check endpoint (/health) ✅ Cache de arquivos estáticos ✅ Tratamento de erros ✅ Redirecionamento de rotas ✅ Pronto para produção Como fazer deploy: 1. scalingo login 2. scalingo create enciclopedia-ai-prompts 3. git push scalingo main Veja DEPLOY.md para instruções detalhadas.
48 lines
1.3 KiB
JavaScript
48 lines
1.3 KiB
JavaScript
const express = require('express');
|
|
const path = require('path');
|
|
const compression = require('compression');
|
|
|
|
const app = express();
|
|
const PORT = process.env.PORT || 3000;
|
|
|
|
// Middleware para compressão GZIP
|
|
app.use(compression());
|
|
|
|
// Servir arquivos estáticos
|
|
app.use(express.static(__dirname, {
|
|
maxAge: '1d', // Cache de 1 dia para melhor performance
|
|
etag: true
|
|
}));
|
|
|
|
// Rota principal - serve a enciclopédia
|
|
app.get('/', (req, res) => {
|
|
res.sendFile(path.join(__dirname, 'enciclopedia.html'));
|
|
});
|
|
|
|
// Rota de health check para o Scalingo
|
|
app.get('/health', (req, res) => {
|
|
res.status(200).json({ status: 'ok', message: 'Enciclopédia de IA rodando!' });
|
|
});
|
|
|
|
// Redirecionar qualquer outra rota para a página principal
|
|
app.get('*', (req, res) => {
|
|
res.sendFile(path.join(__dirname, 'enciclopedia.html'));
|
|
});
|
|
|
|
// Iniciar servidor
|
|
app.listen(PORT, () => {
|
|
console.log(`🚀 Servidor rodando na porta ${PORT}`);
|
|
console.log(`📚 Enciclopédia disponível em http://localhost:${PORT}`);
|
|
});
|
|
|
|
// Tratamento de erros
|
|
process.on('uncaughtException', (err) => {
|
|
console.error('❌ Erro não capturado:', err);
|
|
process.exit(1);
|
|
});
|
|
|
|
process.on('unhandledRejection', (err) => {
|
|
console.error('❌ Promise rejection não tratada:', err);
|
|
process.exit(1);
|
|
});
|