Stuck in infinite error loop! Cannot deploy!

Here are my logs, even when I put it in a separate project and fill out all the environment keys I am still stuck with errors. Any idea on how to fix it? Do I change the framework? I am using Next.js

**HERE ARE THE LOGS
**
19:27:53.771 Running build in Washington, D.C., USA (East) – iad1
19:27:53.772 Build machine configuration: 2 cores, 8 GB
19:27:53.902 Retrieving list of deployment files…
19:27:53.905 Previous build caches not available.
19:27:54.409 Downloading 273 deployment files…
19:27:56.420 Running “vercel build”
19:27:56.814 Vercel CLI 48.8.2
19:27:57.175 Running “install” command: bun install
19:27:57.206 bun install v1.2.23 (cf136713)
19:27:57.236 Resolving dependencies
19:28:03.838 Resolved, downloaded and extracted [1732]
19:28:03.838 warn: incorrect peer dependency “react@19.2.0”
19:28:03.838
19:28:03.838 warn: incorrect peer dependency “react-dom@19.2.0”
19:28:16.774 Saved lockfile
19:28:16.775
19:28:16.775 + @tailwindcss/postcss@4.1.17
19:28:16.775 + @types/jsonwebtoken@9.0.10
19:28:16.776 + @types/node@22.19.0 (v24.10.0 available)
19:28:16.776 + @types/react@19.2.2
19:28:16.776 + @types/react-dom@19.2.2
19:28:16.776 + postcss@8.5.6
19:28:16.776 + prisma@6.18.0 (v6.19.0 available)
19:28:16.776 + tailwindcss@4.1.17
19:28:16.776 + tw-animate-css@1.3.3 (v1.4.0 available)
19:28:16.776 + typescript@5.9.3
19:28:16.776 + @aws-sdk/client-kms@3.925.0
19:28:16.776 + @aws-sdk/client-s3@3.925.0
19:28:16.776 + @aws-sdk/s3-request-presigner@3.925.0
19:28:16.776 + @hookform/resolvers@3.10.0 (v5.2.2 available)
19:28:16.776 + @prisma/client@6.19.0
19:28:16.776 + @radix-ui/react-accordion@1.2.2 (v1.2.12 available)
19:28:16.776 + @radix-ui/react-alert-dialog@1.1.4 (v1.1.15 available)
19:28:16.776 + @radix-ui/react-aspect-ratio@1.1.1 (v1.1.8 available)
19:28:16.776 + @radix-ui/react-avatar@1.1.2 (v1.1.11 available)
19:28:16.776 + @radix-ui/react-checkbox@1.1.3 (v1.3.3 available)
19:28:16.776 + @radix-ui/react-collapsible@1.1.2 (v1.1.12 available)
19:28:16.776 + @radix-ui/react-context-menu@2.2.4 (v2.2.16 available)
19:28:16.776 + @radix-ui/react-dialog@1.1.4 (v1.1.15 available)
19:28:16.776 + @radix-ui/react-dropdown-menu@2.1.4 (v2.1.16 available)
19:28:16.776 + @radix-ui/react-hover-card@1.1.4 (v1.1.15 available)
19:28:16.776 + @radix-ui/react-label@2.1.1 (v2.1.8 available)
19:28:16.776 + @radix-ui/react-menubar@1.1.4 (v1.1.16 available)
19:28:16.777 + @radix-ui/react-navigation-menu@1.2.3 (v1.2.14 available)
19:28:16.777 + @radix-ui/react-popover@1.1.4 (v1.1.15 available)
19:28:16.777 + @radix-ui/react-progress@1.1.1 (v1.1.8 available)
19:28:16.777 + @radix-ui/react-radio-group@1.2.2 (v1.3.8 available)
19:28:16.777 + @radix-ui/react-scroll-area@1.2.2 (v1.2.10 available)
19:28:16.777 + @radix-ui/react-select@2.1.4 (v2.2.6 available)
19:28:16.777 + @radix-ui/react-separator@1.1.1 (v1.1.8 available)
19:28:16.777 + @radix-ui/react-slider@1.2.2 (v1.3.6 available)
19:28:16.777 + @radix-ui/react-slot@1.1.1 (v1.2.4 available)
19:28:16.777 + @radix-ui/react-switch@1.1.2 (v1.2.6 available)
19:28:16.777 + @radix-ui/react-tabs@1.1.2 (v1.1.13 available)
19:28:16.777 + @radix-ui/react-toast@1.2.4 (v1.2.15 available)
19:28:16.777 + @radix-ui/react-toggle@1.1.1 (v1.1.10 available)
19:28:16.777 + @radix-ui/react-toggle-group@1.1.1 (v1.1.11 available)
19:28:16.777 + @radix-ui/react-tooltip@1.1.6 (v1.2.8 available)
19:28:16.777 + @supabase/ssr@0.7.0
19:28:16.777 + @supabase/supabase-js@2.80.0
19:28:16.777 + @vercel/analytics@1.5.0
19:28:16.777 + @vercel/blob@2.0.0
19:28:16.778 + autoprefixer@10.4.21
19:28:16.778 + child_process@1.0.2
19:28:16.778 + class-variance-authority@0.7.1
19:28:16.778 + clsx@2.1.1
19:28:16.778 + cmdk@1.0.4 (v1.1.1 available)
19:28:16.778 + crypto@1.0.1
19:28:16.778 + date-fns@4.1.0
19:28:16.778 + embla-carousel-react@8.5.1 (v8.6.0 available)
19:28:16.778 + fs@0.0.1-security
19:28:16.778 + hls.js@1.6.14
19:28:16.778 + immer@10.2.0
19:28:16.778 + input-otp@1.4.1 (v1.4.2 available)
19:28:16.778 + ioredis@5.8.2
19:28:16.778 + jsonwebtoken@9.0.2
19:28:16.778 + lucide-react@0.454.0 (v0.552.0 available)
19:28:16.778 + next@16.0.0 (v16.0.1 available)
19:28:16.778 + next-themes@0.4.6
19:28:16.778 + path@0.12.7
19:28:16.778 + react@19.2.0
19:28:16.778 + react-day-picker@9.8.0 (v9.11.1 available)
19:28:16.778 + react-dom@19.2.0
19:28:16.778 + react-hook-form@7.66.0
19:28:16.778 + react-resizable-panels@2.1.9 (v3.0.6 available)
19:28:16.778 + recharts@2.15.4 (v3.3.0 available)
19:28:16.778 + sonner@1.7.4 (v2.0.7 available)
19:28:16.778 + stream@0.0.3
19:28:16.778 + tailwind-merge@2.6.0 (v3.3.1 available)
19:28:16.778 + tailwindcss-animate@1.0.7
19:28:16.778 + use-sync-external-store@1.6.0
19:28:16.778 + util@0.12.5
19:28:16.779 + vaul@0.9.9 (v1.1.2 available)
19:28:16.779 + zod@3.25.76 (v4.1.12 available)
19:28:16.779 + zustand@5.0.8
19:28:16.779
19:28:16.779 409 packages installed [19.58s]
19:28:16.807 Detected Next.js version: 16.0.0
19:28:16.808 Running “bun run build”
19:28:16.813 $ next build
19:28:17.422 Attention: Next.js now collects completely anonymous telemetry regarding usage.
19:28:17.422 This information is used to shape Next.js’ roadmap and prioritize features.
19:28:17.422 You can learn more, including how to opt-out if you’d not like to participate in this anonymous program, by visiting the following URL:
19:28:17.422 Telemetry | Next.js by Vercel - The React Framework
19:28:17.423
19:28:17.435 ▲ Next.js 16.0.0 (Turbopack)
19:28:17.435
19:28:17.439 :warning: The “middleware” file convention is deprecated. Please use “proxy” instead. Learn more: Renaming Middleware to Proxy | Next.js
19:28:17.523 Creating an optimized production build …
19:28:42.322 Turbopack build encountered 1 warnings:
19:28:42.322 ./app/api/upload/route.ts:43:14
19:28:42.323 Next.js can’t recognize the exported config field in route. Page config in config is deprecated and ignored, use individual exports instead.
19:28:42.323 e[0m e[90m 41 |e[39m }
19:28:42.323 e[90m 42 |e[39m
19:28:42.323 e[31me[1m>e[22me[39me[90m 43 |e[39m e[36mexporte[39m e[36mconste[39m config e[33m=e[39m {
19:28:42.323 e[90m |e[39m e[31me[1m^e[22me[39me[31me[1m^e[22me[39me[31me[1m^e[22me[39me[31me[1m^e[22me[39me[31me[1m^e[22me[39me[31me[1m^e[22me[39m
19:28:42.323 e[90m 44 |e[39m apie[33m:e[39m {
19:28:42.323 e[90m 45 |e[39m bodyParsere[33m:e[39m e[36mfalsee[39me[33m,e[39m
19:28:42.323 e[90m 46 |e[39m }e[33m,e[39me[0m
19:28:42.323
19:28:42.323 The exported configuration object in a source file needs to have a very specific format from which some properties can be statically parsed at compiled-time.
19:28:42.323
19:28:42.323 File-system conventions: Route Segment Config | Next.js
19:28:42.323
19:28:42.323
19:28:42.349 ✓ Compiled successfully in 24.5s
19:28:42.372 Skipping validation of types
19:28:42.837
19:28:42.838 We detected TypeScript in your project and reconfigured your tsconfig.json file for you.
19:28:42.838 The following suggested values were added to your tsconfig.json. These values can be changed to fit your project’s needs:
19:28:42.838
19:28:42.838 - include was updated to add ‘.next/dev/types/**/*.ts’
19:28:42.839
19:28:42.839 The following mandatory changes were made to your tsconfig.json:
19:28:42.839
19:28:42.840 - jsx was set to react-jsx (next.js uses the React automatic runtime)
19:28:42.840
19:28:42.843 Collecting page data …
19:28:43.593 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:43.594 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:43.595 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:43.674 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:43.674 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:43.675 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:43.935 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:43.937 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:43.937 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:44.099 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:44.099 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:44.100 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:44.285 Generating static pages (0/73) …
19:28:44.315 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:44.315 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:44.315 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:44.554 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:44.555 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:44.556 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:44.856 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:44.858 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:44.858 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:44.871 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:44.872 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:44.872 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:45.114 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:45.114 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:45.114 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:45.170 Generating static pages (18/73)
19:28:45.209 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:45.210 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:45.210 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:45.289 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:45.290 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:45.290 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:45.487 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:45.488 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:45.488 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:45.611 [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
19:28:45.611 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16)
19:28:45.611 at TCPConnectWrap.callbackTrampoline (node:internal/async_hooks:130:17)
19:28:45.628 Error occurred prerendering page “/dashboard/artist/posts/new”. Read more: Prerender Error with Next.js | Next.js
19:28:45.632 Error: @supabase/ssr: Your project’s URL and API key are required to create a Supabase client!
19:28:45.632
19:28:45.632 Check your Supabase project’s API settings to find these values
19:28:45.632
19:28:45.632 Supabase
19:28:45.633 at (Supabase)
19:28:45.633 at cg (.next/server/chunks/ssr/21638769..js:34:47347)
19:28:45.633 at n (.next/server/chunks/ssr/0c74b665..js:1:3980) {
19:28:45.633 digest: ‘2977250879’
19:28:45.633 }
19:28:45.633 Export encountered an error on /dashboard/artist/posts/new/page: /dashboard/artist/posts/new, exiting the build.
19:28:45.652 ⨯ Next.js build worker exited with code: 1 and signal: null
19:28:45.681 error: script “build” exited with code 1
19:28:45.692 Error: Command “bun run build” exited with 1

Based on the error log this looks like you’re trying to set REDIS to a localhost url, which will work in development if you have a local redis instance running but will not work during production build

Where is your Redis server hosted?