# Dyolink — Frontend (Next.js) ## Prerequisites - **Node.js 20+** and **npm** ## First-time setup 1. **Clone the monorepo** and go to the frontend app: ```bash git clone dyolink cd dyolink/frontend ``` 2. **Install dependencies** ```bash npm install ``` 3. **Environment** Create **`.env.local`** in this folder (not committed to git) with the public URLs your browser will use: ```env NEXT_PUBLIC_APP_URL=http://localhost:3001 NEXT_PUBLIC_API_URL=http://localhost:3000/api NEXT_PUBLIC_APP_NAME=Dyolink ``` - Adjust **`NEXT_PUBLIC_API_URL`** if the Nest API runs on another host/port. - These values are baked in at **build time** for production images; for local dev, restart `npm run dev` after changing them. ## Run (development) ```bash npm run dev ``` Open **`http://localhost:3001`** (dev server uses port **3001** so it does not clash with the API on 3000). Ensure the backend is running and `NEXT_PUBLIC_API_URL` matches its base URL (including `/api` if your API is mounted there). ## After pulling latest `main` ```bash git pull npm install ``` ## Useful commands | Command | Purpose | |--------|---------| | `npm run dev` | Development server (port 3001) | | `npm run build` | Production build | | `npm run start` | Serve production build (port 3000 — used inside Docker) | | `npm run lint` | ESLint | ## Docker Image build and build-args (`NEXT_PUBLIC_*`) are documented in the **repository root `README.md`**.