New internet protocol with an emphasis on simplicity.
- JavaScript 82.1%
- HTML 16.8%
- CSS 1.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| browser | ||
| cli | ||
| hub | ||
| readme.md | ||
Ghost Protocol POC
This repository demonstrates Ghost Protocol, a custom web protocol (ghost://) where anyone can host a site and claim any domain as long as it's available. This is a proof-of-concept with three main components:
1. Ghost Hub (Backend)
- Node.js server that manages hosted sites
- Handles resolve requests for ghost:// URLs
- Keeps track of which domains are being hosted
- Stores HTML content in memory for simplicity
Run Hub: npm install node hub.js
The hub runs on http://localhost:7777.
2. Ghost CLI (Hosting Tool)
- CLI tool to host HTML files to the hub
- Maintains a session (heartbeat) so the domain is reserved
- Can host subpages under a domain
Example Usage: node cli/ghost.js host wrld.dev index.html node cli/ghost.js host wrld.dev about.html octo
Hosted pages are served via ghost://wrld.dev or ghost://wrld.dev:octo.
3. Ghost Browser (Electron Frontend)
- Electron app with a single webview
- URL input at the top; page auto-loads whenever input changes
- Supports ghost:// URLs
- Minimal POC UI for testing sites
Run Browser: npx electron browser
Type or paste ghost:// URLs into the input field; pages load automatically. Links inside pages pointing to ghost:// URLs also load in the webview.
Notes
- This is a proof-of-concept, not production-ready.
- No authentication is implemented — any user can claim any available domain.
- When hosting stops, anyone can claim the domain.
- The hub must be running for hosting and browsing to work.
Quick Start Guide
- "node hub/index.js" (runs the hub server on localhost)
- "node cli/ghost.js host wrld.dev index.html" - Hosts a simple html test.
- Install Electron Fiddle (just google it) and file > open > select the browser folder. Click run for simple browser GUI.