Spaces:
Build error
Build error
| const express = require('express'); | |
| const cors = require('cors'); | |
| const path = require('path'); | |
| const fs = require('fs'); | |
| const app = express(); | |
| app.use(cors()); | |
| app.use(express.static(path.join(__dirname, 'public'))); | |
| // Tool registry | |
| const tools = [ | |
| { id: 'trending', name: 'Trending Apps', path: '/api/trending', file: 'trending.js' }, | |
| { id: 'search', name: 'Search Apps', path: '/api/search', file: 'search.js' } | |
| ]; | |
| // Load tools dynamically | |
| const toolsDir = path.join(__dirname, 'tools'); | |
| tools.forEach(tool => { | |
| const toolPath = path.join(toolsDir, tool.file); | |
| if (fs.existsSync(toolPath)) { | |
| require(toolPath)(app); | |
| console.log(`Loaded tool: ${tool.name}`); | |
| } | |
| }); | |
| app.get('/api/tools', (req, res) => { | |
| res.json({ tools: tools.map(t => ({ id: t.id, name: t.name, path: t.path })) }); | |
| }); | |
| app.get('*', (req, res) => { | |
| res.sendFile(path.join(__dirname, 'public', 'index.html')); | |
| }); | |
| const PORT = process.env.PORT || 7860; | |
| app.listen(PORT, '0.0.0.0', () => { | |
| console.log(`Server running on port ${PORT}`); | |
| }); | |