mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-17 06:19:41 +02:00
All standalone SvelteKit web apps have been superseded by the unified ManaCore app (apps/manacore/apps/web). Moved to web-archived/ within each project to preserve history while removing from active workspace. Archived: calc, cards, chat, citycorners, contacts, context, guides, inventar, moodlit, mukke, news, nutriphi, photos, picture, planta, presi, questions, skilltree, storage, times, zitare, todo, calendar, uload, memoro Moved to apps-archived/: wisekeep (not integrated, inactive) Kept active: manacore (unified), matrix, manavoxel, arcade (separate containers) Server, landing, and package directories remain active for each project. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
28 lines
839 B
TypeScript
28 lines
839 B
TypeScript
import { Hono } from 'hono';
|
|
import { cors } from 'hono/cors';
|
|
import { loadConfig } from './config';
|
|
import { errorHandler } from './middleware/error-handler';
|
|
import { jwtAuth } from './middleware/jwt-auth';
|
|
import { TranscribeService } from './services/transcribe';
|
|
import { healthRoutes } from './routes/health';
|
|
import { createTranscribeRoutes } from './routes/transcribe';
|
|
|
|
const config = loadConfig();
|
|
const transcribeService = new TranscribeService(config);
|
|
|
|
const app = new Hono();
|
|
|
|
app.onError(errorHandler);
|
|
app.use('*', cors({ origin: config.cors.origins, credentials: true }));
|
|
|
|
// Public
|
|
app.route('/health', healthRoutes);
|
|
|
|
// Protected
|
|
app.use('/api/v1/*', jwtAuth(config.manaAuthUrl));
|
|
app.route('/api/v1/transcribe', createTranscribeRoutes(transcribeService));
|
|
|
|
export default {
|
|
port: config.port,
|
|
fetch: app.fetch,
|
|
};
|