Openbare
Decentralized web proxy network designed for censorship resistance, high availability. Deploy nodes on Vercel, Railway, Cloudflare Workers in seconds. Use community-maintained public nodes. Features automatic failover between nodes, <50ms edge latency, built-in health monitoring, full compatibility with Ultraviolet, other TompHTTP clients.
Install / Use
/learn @nirholas/OpenbareQuality Score
Category
OperationsSupported Platforms
README
🌐 OpenBare
A decentralized, censorship-resistant web proxy network
Deploy your own node in 30 seconds • Use community nodes • Browse freely
Quick Start • Deploy Your Node • Documentation • Contributing
</div>✨ Features
- 👀 Instant Setup - Deploy to Cloudflare Workers in 30 seconds
- 🌍 Decentralized - Community-run nodes across the globe
- ⚡ Edge Performance - Cloudflare Workers for <50ms latency worldwide
- 🔄 Automatic Failover - Client seamlessly switches between nodes
- 📊 Built-in Monitoring - Health checks, metrics, and status dashboard
- 🔒 Production Ready - Rate limiting, security headers, graceful shutdown
- 🤝 UV Compatible - Works with Ultraviolet and other TompHTTP clients
🏗️ Architecture
┌─────────────────────────────────────────────────────────────────────────┐
│ YOUR APPLICATION │
│ (SperaxOS, Ultraviolet, etc.) │
└─────────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────┐
│ OPENBARE CLIENT │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Server Pool │──│ Failover │──│ Discovery │ │
│ │ Manager │ │ Logic │ │ Client │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────────────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Node 1 │ │ Node 2 │ │ Node 3 │
│ (US) │ │ (EU) │ │ (Asia) │
│ Vercel │ │ Cloudflare│ │ Railway │
└───────────┘ └───────────┘ └───────────┘
│ │ │
└───────────────┼───────────────┘
▼
┌───────────────────────────────┐
│ OPENBARE REGISTRY │
│ (Optional - Node Discovery) │
└───────────────────────────────┘
🚀 Quick Start
Option 1: Use Public Nodes
Use community-maintained nodes without deploying anything:
import { OpenBareClient } from '@openbare/client';
const client = new OpenBareClient({
// Auto-discover nodes from registry
registry: 'https://registry.openbare.dev'
});
// Fetch any URL through the proxy network
const response = await client.fetch('https://example.com');
Option 2: Run Locally
# Clone the repo
git clone https://github.com/nirholas/openbare.git
cd openbare
# Start the server
cd server
npm install
npm start
# Server running at http://localhost:8080
# Bare endpoint at http://localhost:8080/bare/
Option 3: Deploy Your Own (see below)
🌐 Deploy Your Own Node
Recommended: Cloudflare Workers
| Platform | Deploy | Best For | |----------|--------|----------| | Cloudflare Workers ⭐ | Deploy to Workers → | Global edge, WebSocket support, free tier | | Render | render.com | Persistent servers, easy setup | | Fly.io | fly.io | Global, WebSocket support | | Self-hosted | Docker → | Full control |
⚠️ Note: Vercel and Railway don't work well for proxy servers (serverless limitations / banned dependencies).
Cloudflare Workers (Recommended)
Deploy to 300+ edge locations worldwide with WebSocket support:
cd edge
npm install
npx wrangler login
npx wrangler deploy
You'll get a URL like: https://openbare-edge.YOUR_SUBDOMAIN.workers.dev
Live Example: https://openbare.xyz
Docker
docker run -d \
-p 8080:8080 \
-e NODE_ID=my-node \
-e REGION=us-east \
ghcr.io/nirholas/openbare:latest
Manual Deployment
cd server
npm install
npm start
See Self-Hosting Guide for detailed instructions.
📦 Components
| Package | Description | Location |
|---------|-------------|----------|
| @openbare/server | Node.js bare server with metrics | /server |
| @openbare/client | Client library with failover | /client |
| @openbare/edge | Cloudflare Workers server | /edge |
| @openbare/registry | Node discovery service | /registry |
🔧 Configuration
Environment Variables
# Node Identification
NODE_ID=my-bare-node # Unique node ID
REGION=us-east # Geographic region
NODE_URL=https://example.com # Public URL
# Rate Limiting
RATE_LIMIT_MAX=100 # Requests per minute
RATE_LIMIT_WINDOW_MS=60000 # Window size
# Registry (Optional)
REGISTRY_URL=https://registry.openbare.dev
# Logging
LOG_LEVEL=info # trace/debug/info/warn/error
See .env.example for all options.
📊 API Endpoints
Every OpenBare node exposes these endpoints:
| Endpoint | Method | Description |
|----------|--------|-------------|
| / | GET | Server info and status |
| /bare/ | * | Bare Server protocol |
| /health | GET | Health check (for load balancers) |
| /status | GET | Detailed metrics |
| /info | GET | Node information |
Example Response: GET /
{
"status": "ok",
"name": "OpenBare Server",
"version": "1.0.0",
"node_id": "us-east-abc123",
"region": "us-east",
"uptime_seconds": 86400,
"requests_served": 150000,
"healthy": true,
"bare_endpoint": "/bare/"
}
📖 Documentation
- Architecture - How OpenBare works
- Self-Hosting - Deployment guide
- API Reference - Full API documentation
- Client Usage - Client library guide
🤝 Contributing
We welcome contributions! See CONTRIBUTING.md for guidelines.
Development Setup
# Clone the repo
git clone https://github.com/nirholas/openbare.git
cd openbare
# Install all workspace dependencies
npm install
# Start server in dev mode
npm run dev:server
# Run tests
npm test
Areas for Contribution
- 🌍 Run a public node
- 🐛 Report bugs
- 💡 Suggest features
- 📝 Improve documentation
- 🔧 Submit PRs
🔒 Security
OpenBare is designed with security in mind:
- Rate limiting prevents abuse
- Helmet.js sets security headers
- No logging of proxied content
- Registry validation prevents malicious nodes
Report security issues to: security@openbare.dev
📄 License
MIT License - see LICENSE for details.
🙏 Acknowledgments
- TompHTTP - Bare Server protocol
- Ultraviolet - Web proxy framework
- Titanium Network - Proxy community
<div align="center">
Made with ❤️ by the OpenBare community
</div> <details> <summary>.</summary> # ERC-8004 Keywords & SEO TermsComprehensive keyword list for ERC-8004 Trustless Agents ecosystem
Core Protocol Keywords
ERC-8004, ERC8004, EIP-8004, EIP8004, Trustless Agents, trustless agent, trustless AI, trustless AI agents, agent protocol, agent standard, Ethereum agent standard, blockchain agent protocol, on-chain agents, onchain agents, on-chain AI, onchain AI, decentralized agents, decentralized AI agents, autonomous agents, autonomous AI agents, AI agent protocol, AI agent standard, agent discovery, agent trust, agent reputation, agent validation, agent identity, agent registry, identity registry, reputation registry, validation registry, agent NFT, ERC-721 agent, agent tokenId, agentId, agentURI, agentWallet, agent registration, agent registration file, agent-registration.json, agent card, agent metadata, agent endpoints, agent discovery protocol, agent trust protocol, open agent protocol, open agent standard, permissionless agents, permissionless AI, censorship-resistant agents, portable agent identity, portable AI identity, verifiable agents, verifiable AI agents, accountable agents, accountable AI, agent accountability
Blockchain & Web3 Keywords
Ethereum, Ethereum mainnet, ETH, EVM, Ethereum Virtual Machine, smart contracts, Solidity, blockchain, decentralized, permissionless, trustless, on-chain, onchain, L2, Layer 2, Base, Optimism, Polygon, Linea, Arbitrum, Scroll, Monad, Gnosis, Celo, Sepolia, testnet, mainnet, singleton contracts, singleton deployment, ERC-721, NFT, non-fungible token, tokenURI, URIStorage, EIP-712, ERC-1271, wallet signature, EOA, smart contract wallet, gas fees, gas sponsorship, EIP-7702, subgraph, The Graph, indexer, blockchain indexing, IPFS, decentralized storage, content-addressed, immutable data, public registry, public good, credibly neutral, credibly neutral infrastructure, open protocol, open standard, Web3, crypto, cryptocurrency, DeFi, decentralized finance
AI & Agent Technology Keywords
AI agents, artificial intelligence agents, autonomous AI, AI autonomy, LLM agents, large language model agents, machine learning agents, ML agents, AI
