From 5d18ebbe4ea949a05b979c4c2992dbeceb5a9565 Mon Sep 17 00:00:00 2001 From: Davide Marcoli <69892203+davidemarcoli@users.noreply.github.com> Date: Fri, 20 Jun 2025 14:16:07 +0200 Subject: [PATCH] refactor: add env variables for easier development (#204) Co-authored-by: Viren070 --- packages/frontend/src/context/status.tsx | 4 +++- packages/frontend/src/services/api.ts | 2 +- packages/server/src/app.ts | 6 ++++++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/frontend/src/context/status.tsx b/packages/frontend/src/context/status.tsx index 68571d63..045851ed 100644 --- a/packages/frontend/src/context/status.tsx +++ b/packages/frontend/src/context/status.tsx @@ -22,13 +22,15 @@ const StatusContext = createContext({ export const useStatus = () => useContext(StatusContext); +const baseUrl = process.env.NEXT_PUBLIC_BACKEND_BASE_URL || '/api/v1'; + export function StatusProvider({ children }: { children: ReactNode }) { const [status, setStatus] = useState(null); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); useEffect(() => { - fetch('/api/v1/status') + fetch(`${baseUrl}/status`) .then((res) => { if (!res.ok) throw new Error('Failed to fetch status'); return res.json(); diff --git a/packages/frontend/src/services/api.ts b/packages/frontend/src/services/api.ts index a4c1c78a..8a66472f 100644 --- a/packages/frontend/src/services/api.ts +++ b/packages/frontend/src/services/api.ts @@ -17,7 +17,7 @@ interface LoadUserResponse { } export class UserConfigAPI { - private static BASE_URL = '/api/v1'; + private static BASE_URL = process.env.NEXT_PUBLIC_BACKEND_BASE_URL || '/api/v1'; static async loadConfig( uuid: string, diff --git a/packages/server/src/app.ts b/packages/server/src/app.ts index ec0a23eb..37e99b1a 100644 --- a/packages/server/src/app.ts +++ b/packages/server/src/app.ts @@ -41,6 +41,12 @@ app.use(loggerMiddleware); app.use(express.json()); app.use(express.urlencoded({ extended: true })); +// Allow all origins in development for easier testing +if (Env.NODE_ENV === 'development') { + logger.info('CORS enabled for all origins in development'); + app.use(corsMiddleware); +} + // API Routes const apiRouter = express.Router(); apiRouter.use('/user', userApi);