require('dotenv').config(); const express = require('express'); const cors = require('cors'); const path = require('path'); const recognizeRoute = require('./routes/recognize'); const metadataRoute = require('./routes/metadata'); const suggestionsRoute = require('./routes/suggestions'); const coverRoute = require('./routes/cover'); require('./workers/poll-quota'); // Start quota worker const app = express(); const port = process.env.PORT || 3000; app.use(cors()); app.use(express.json()); // Serve static frontend app.use(express.static(path.join(__dirname, '../public'))); app.use('/shared', express.static(path.join(__dirname, '../shared'))); // API Routes app.use('/api/recognize', recognizeRoute); app.use('/api/metadata', metadataRoute); app.use('/api/suggestions', suggestionsRoute); app.use('/api/cover', coverRoute); app.listen(port, () => { console.log(`KeySelector backend listening on port ${port}`); });