31 lines
928 B
JavaScript
31 lines
928 B
JavaScript
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}`);
|
|
});
|