PNode makes it easy to expose your local applications, APIs, or static frontends to the world without dealing with firewalls, NAT, or complicated deployments. Think of it as your own personal gateway to the Internet.
To use PNode, you will need:
Go to pnode.site and sign up. Once logged in, you can create projects. Each project represents one exposed site or service.
When creating a project you will:
yourname.pnode.site
). If you enable frontend/backend separation:
xxx.pnode.site
will serve your frontend (static files). api-xxx.pnode.site
will proxy backend requests to your local service. You can deploy frontend files by uploading a ZIP archive or connecting a Git repository for auto-deployment.
Install and run the agent directly with npx
:
npx start-pnode --project <project-id> --port <local-port>
The agent will connect your local service on <local-port>
to the public domain xxx.pnode.site
.
For security, your credentials must be passed as environment variables:
export AGENT_ID=your-agent-id
export AGENT_TOKEN=your-agent-token
Never hardcode these into your scripts or applications.
Depending on your plan, there are daily quotas:
If you exceed limits, requests may be throttled or blocked until the next day.
# Run your app locally
node server.js --port 5000
# Expose it via PNode
export AGENT_ID=...
export AGENT_TOKEN=...
npx start-pnode --project myapi --port 5000
Now your API is reachable at myapi.pnode.site
or api-myapi.pnode.site
if you enabled separation.
myapp
.myapp.pnode.site
.api-myapp.pnode.site
. Yes. Connections between the Agent and PNode are encrypted. Your Agent ID and Token ensure only you can start tunnels for your projects.
Yes. Each project has its own domain and credentials. You can run multiple agents at once if needed.
Limits reset daily. For heavier usage, you can upgrade your plan once paid tiers are available.