85adbbf084
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
34 lines
1.0 KiB
JavaScript
34 lines
1.0 KiB
JavaScript
const path = require('path');
|
|
const express = require('express');
|
|
require('./db');
|
|
|
|
const campaignsRouter = require('./routes/campaigns');
|
|
const charactersRouter = require('./routes/characters');
|
|
const threadsRouter = require('./routes/threads');
|
|
const npcsRouter = require('./routes/npcs');
|
|
const notesRouter = require('./routes/notes');
|
|
const tablesRouter = require('./routes/tables');
|
|
const systemsRouter = require('./routes/systems');
|
|
|
|
const app = express();
|
|
const PORT = 4000;
|
|
|
|
app.use(express.json());
|
|
app.use(express.static(path.join(__dirname, '..', 'public')));
|
|
|
|
app.get('/health', (req, res) => {
|
|
res.json({ status: 'ok' });
|
|
});
|
|
|
|
app.use('/api/campaigns', campaignsRouter);
|
|
app.use('/api/characters', charactersRouter);
|
|
app.use('/api/campaigns/:campaignId/threads', threadsRouter);
|
|
app.use('/api/campaigns/:campaignId/npcs', npcsRouter);
|
|
app.use('/api/notes', notesRouter);
|
|
app.use('/api/tables', tablesRouter);
|
|
app.use('/api/systems', systemsRouter);
|
|
|
|
app.listen(PORT, () => {
|
|
console.log(`Mythic Oracle running at http://localhost:${PORT}`);
|
|
});
|