Watch files, restart the server, refresh the browser, and control exactly which port and host you use.
01
Start the live server
Live mode watches your application, restarts Node.js when something changes, and reloads the open browser once the server answers again.
TERMINAL
npm run live
# Live development: http://localhost:3000
# Watching: enabled
NOTE
npm run dev is the same thing with watching enabled; use whichever name your team prefers.
02
Choose a port
Pass the port after -- when using an npm script, or use the flag form directly.
TERMINAL
npm run live -- 8080
npx noderyx live 8080
npx noderyx live --port=8080
NOTE
Noderyx prints the URL it selected before the application boots.
03
Take the first free port
Automatic selection starts at 3000 and walks upward until it finds a port it can bind. When a requested numeric port is busy, live mode also moves on by default and tells you it did.
TERMINAL
npm run live -- auto
# Requested port was unavailable; selected 3001.
04
Require an exact port
OAuth callbacks, webhooks, CORS allowlists, and MOBILE_API_URL all expect a fixed address. --strict-port stops with an error rather than silently moving.
TERMINAL
npm run live -- 8080 --strict-port
05
Check a port without starting
Useful in scripts and deployment checks: the command exits with a failing status when the port is taken.
TERMINAL
npx noderyx port:check 3000
# Port 3000 on 0.0.0.0 is available.
06
Set defaults in .env
Host and port both read the environment, and command-line options override it.
.env
HOST=0.0.0.0
PORT=8080
NOTE
0.0.0.0 lets other devices on your network reach the server—handy when testing a phone against your machine.
07
Choose a host deliberately
Bind to 127.0.0.1 while working alone, and to 0.0.0.0 when a device or colleague on the same network needs to connect.
TERMINAL
npx noderyx live 3000 --host=127.0.0.1 # this computer only
npx noderyx live 3000 --host=0.0.0.0 # the local network
NOTE
Never expose a debug server directly to the public internet—stack traces are visible outside production mode.
08
How the refresh works
In development Noderyx injects a small reload client into rendered HTML. It opens a same-origin event connection, waits for /health after a restart, and reloads once the server is ready.
The client lives in public/untitled-live.js and is excluded from packaged mobile builds.
It is never injected when NODE_ENV=production.
The reload waits for a healthy server, so you do not see a connection error mid-restart.
09
What the watcher monitors
The watch list covers everything that can change behavior, including configuration and packages.
.env and noderyx.config.js
server.js and every module it imports
app/, resources/, packages/, database/, and public/
local framework files when you are developing the framework itself
10
Troubleshooting
When the browser stops refreshing, work down this list before restarting anything.
Confirm the terminal printed Watching: enabled.
Check that public/untitled-live.js still exists.
Verify /health returns a successful response.
Look in the browser console for a blocked event connection.
Disable proxy caching for local development.
If a port is held by another process, pick another port or use auto—Noderyx never kills other applications.