import path from 'path'; import os from 'os'; // Detect environment const IS_PROD = process.env.NODE_ENV === 'production'; const IS_DOCKER = process.env.DOCKER === 'true' || process.env.HF_SPACE === 'true'; /** * Data paths configuration * In production (HF Spaces/Docker): uses /app/data * In development: uses local Desktop paths */ export const DROPZONE_PATH = IS_PROD || IS_DOCKER ? path.resolve('/app/data/dropzone') : path.join(os.homedir(), 'Desktop', 'WidgeTDC_DropZone'); export const VIDENSARKIV_PATH = IS_PROD || IS_DOCKER ? path.resolve('/app/data/vidensarkiv') : path.join(os.homedir(), 'Desktop', 'vidensarkiv'); export const AGENTS_PATH = IS_PROD || IS_DOCKER ? path.resolve('/app/data/agents') : path.join(process.cwd(), 'agents'); export const DATA_ROOT = IS_PROD || IS_DOCKER ? path.resolve('/app/data') : path.join(os.homedir(), 'Desktop'); // Export environment flags for convenience export const config = { isProduction: IS_PROD, isDocker: IS_DOCKER, paths: { dropzone: DROPZONE_PATH, vidensarkiv: VIDENSARKIV_PATH, agents: AGENTS_PATH, dataRoot: DATA_ROOT }, server: { port: parseInt(process.env.PORT || '7860', 10), host: '0.0.0.0' } }; export default config;