PNode Documentation

PNode lets you expose local applications, APIs, or static frontends to the Internet without configuring firewalls, NAT, or deployment pipelines.
You can use PNode in two distinct modes: Anonymous (temporary domain, no account) and Authorized (fixed domain tied to your project).



Getting Started

To use PNode, you only need:

  • A running local service (API or frontend)
  • The PNode Agent

The Agent can run without registration (Anonymous mode) or using your credentials (Authorized mode).
Choose depending on whether you need a temporary or fixed public domain.

Operation Modes

Anonymous Mode

Anonymous mode requires no account and no credentials.
Simply run the agent with a port, and PNode will assign a temporary domain of the form tmp-xxxxx.pnode.site.
This temporary domain:

  • is valid for 12 hours
  • automatically refreshes after expiration
  • always points to the port you specify
  • does not support frontend/backend domain separation

Example: npx start-pnode --port 3000

Authorized Mode

Authorized mode uses a project created in your PNode account.
You provide PROJECT_ID, AGENT_ID, and AGENT_TOKEN via environment variables or CLI flags.

  • Gives you a fixed public domain (e.g., yourname.pnode.site)
  • Supports optional frontend/backend separation
  • Allows deploying static frontend files
  • Has higher limits compared to anonymous mode

Creating an Account

Visit pnode.site and sign up.
After logging in, create a project — each project corresponds to one public domain.
The project page provides your Agent ID and Agent Token.

Projects & Domains

When creating a project you will:

  • Choose the project name (becoming yourname.pnode.site)
  • Receive a unique Agent ID and Token
  • Optionally enable frontend/backend separation

Frontend + Backend Separation

If enabled (Authorized mode only):

  • xxx.pnode.site serves your frontend (static files)
  • api-xxx.pnode.site proxies backend traffic to your local service

You can upload frontend builds as a ZIP file or connect a Git repository for automatic deployments.

Running the Agent

Anonymous Mode

# Start a temporary tunnel
npx start-pnode --port 3000

# A temporary 12-hour domain will be assigned:
#   tmp-abc123.pnode.site

Authorized Mode

# Using environment variables
export PROJECT_ID=your-project-id
export AGENT_ID=your-agent-id
export AGENT_TOKEN=your-agent-token
export LOCAL_PORT=3000

npx start-pnode

# Using CLI arguments
npx start-pnode --project your-project-id --agent your-agent-id --token your-agent-token --port 3000

Available Options

Options:
  --project <id>   Project id (env: PROJECT_ID)
  --agent <id>     Agent id (env: AGENT_ID)
  --token <token>  Agent token (env: AGENT_TOKEN)
  --port <port>    Local forwarded port (default: 3000, env: LOCAL_PORT)
  -t, --test       Test mode (env: TEST_MODE)
  -h, --help       Display help

Environment Variables

Anonymous Mode

No variables required.
Only LOCAL_PORT is optional.

export LOCAL_PORT=5000
npx start-pnode

Authorized Mode

export PROJECT_ID=your-project-id
export AGENT_ID=your-agent-id
export AGENT_TOKEN=your-agent-token
export LOCAL_PORT=3000

Usage Limits

Limits depend on the mode:

  • Anonymous mode: temporary domain lasts 12 hours
  • Authorized mode: daily request quota
  • Authorized mode: total transfer quota (upload + download)
  • Authorized mode: maximum request size

Examples

Expose a Local API (Anonymous Mode)

node server.js --port 5000

npx start-pnode --port 5000
# Temporary domain will be assigned automatically

Expose a Local API (Authorized Mode)

export AGENT_ID=...
export AGENT_TOKEN=...
npx start-pnode --project your-project-id --port 5000

Serve a Static Frontend (Authorized Mode)

  1. Create a project named myapp.
  2. Upload your build output as a ZIP archive.
  3. Your frontend becomes available at myapp.pnode.site.
  4. API calls can go to api-myapp.pnode.site.

FAQ

Can I use PNode without registration?

Yes. Anonymous mode works with no account and provides a temporary public domain for 12 hours.

What is the difference between Anonymous and Authorized modes?

Anonymous mode offers temporary domains with minimal configuration.
Authorized mode provides fixed domains, project control, and additional features such as frontend deployments and domain separation.

Is it secure?

Yes. All traffic between your Agent and PNode servers is encrypted. Only users with your Agent ID and Token can start authorized tunnels.

Can I run multiple projects?

Yes. Each project has its own credentials and domain. You can run several agents simultaneously if needed.

What happens if I hit usage limits?

Limits reset daily for authorized projects.
Anonymous domains simply expire after 12 hours and a fresh one will be assigned on the next run.