Urgent.News

What's breaking now, across thousands of outlets.

Tech

Supabase confirmation or reset email opens localhost:3000? Here's the fix

A user signs up for your live app, clicks the confirmation link, and the browser says: localhost:3000 refused to connect Password reset emails do the same. Nothing is wrong with your deploy. Supabase builds email links from the project's Site URL , and a new project starts with that set to http://localhost:3000 . Set the Site URL to your live domain, add every address you redirect to under…

When a user signs up for a Supabase live application, clicks the confirmation link, or requests a password reset, they are directed to the localhost:3000 URL. This occurs because Supabase builds email links from the project's Site URL, which defaults to localhost:3000 for new projects. This issue affects apps built with various frameworks like Lovable, Bolt, and Replit on Supabase, particularly after the first real users arrive.

The Site URL is set to localhost:3000 by default. Every confirmation and reset link falls back to this URL, causing them to all point to localhost:3000. The redirect address isn't allowed in Supabase. If your app redirects to a location not on the Redirect URLs list, Supabase uses the Site URL instead. A customised email template uses {{ .SiteURL }}, which ignores the redirect passed by the app.

To resolve this issue, you can either set the Site URL to your live domain, add every redirect address under Redirect URLs, and pass a redirect address that is on that list, or pass the redirect address from the app using window.location.origin.

After making these changes, check by signing up with a new email address. The confirmation link should open your live site and sign the user in. Similarly, requesting a password reset should open the reset page on the live domain. This fix does not require redeployment, as it's a project setting that new emails use immediately. However, emails already sent keep their old links, so affected users should request a new confirmation or reset email.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

This story

This is one outlet's version. Read the fullest account.

Read the original at dev.to →

More in Tech

Running a Python or LangGraph Agent as a Flisk Worker, With Dependencies Declared

Not every agent answers HTTP requests. Some work through a queue: they pick up a task, call a model, write a result, and wait for the next one. Flisk's worker resource type fits that shape.

  • Worker agents differ from HTTP-response agents, using a queue system for task execution.
  • Flisk worker resource requires Postgres and NATS services as dependencies, declared in service.json.
  • Worker must be idempotent, logging task execution with unique IDs and enforcing a retry limit.

Flisk as a Control Plane: Let Your Coding Assistant Run the Whole Local Stack

The mcp resource puts an agent's tools inside your stack. The flisk mcp command does the reverse: it lets an assistant control the stack.

  • Flisk MCP enables coding assistants to control local development stack
  • Assistant can check status, start services, read statuses, fetch logs
  • Restrict assistant access to sensitive operations like volume deletion

Flisk MCP Resources: Give Your Agents Tools That Run Next to Your Services

Agents are only as useful as the tools they can call. An mcp resource in Flisk is a Model Context Protocol server that runs in the same local stack as your services.

  • Flisk MCP Resources offer tools running alongside services in a single local stack.
  • MCP server built with Docker, launched by flisk up, routed via Traefik.
  • Server includes health check at /health, placeholder tool named echo.

How Flisk Routes Agent Traffic: A Sequence Diagram of One Turn

The earlier articles covered the agent, the MCP resource, and the control plane. This one follows a single turn: one request from a client to an agent, through the gateway, the checkpoint store, and…

  • Client sends POST request with session ID to gateway
  • Agent loads or creates session checkpoint from store
  • Agent appends user input to checkpoint and processes with model

How 3D Vision Lets Painting Robots Program Themselves

Painting a part with a robot used to start with a long teaching session. A programmer would guide the arm through each pass, save every waypoint, and then adjust the spray by trial and error.

  • 3D vision technology enables robots to autonomously program painting tasks.
  • Depth camera or laser scanner captures part as point cloud within seconds.
  • Software refines point cloud, identifies surfaces for coating without CAD files.

More from Saturday 24 October →