Skip to content

p2plabsxyz/peersky-browser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

PeerSky Browser

GitHub Actions Workflow Status platform GitHub Pre-release Mastodon Follow Ask DeepWiki A demo gif of the PeerSky P2P Editor showing HTML, CSS, and JavaScript panels, a live preview of a blue page with red ‘Spider-Man’ text, and AI code-generation controls

💻 Download

Roadmap

  • Basic browser navigation:

    • Back
    • Forward
    • Reload
    • Browser protocol (peersky://)
    • Home page (peersky://home)
    • Cross browser themeing (browser://theme/)
    • Search engine
      • DuckDuckGo (default)
      • Brave Search
      • Ecosia
      • Kagi
      • Startpage
    • Tabs
      • Vertical tabs toggle
  • IPFS protocol handler:

    • Run a local Helia node
    • ipfs:// / ipns:// native URLs support
    • Directory listings support
    • Native ENS domain resolution:
      • Resolve .eth domains directly to IPFS/IPNS content without centralized gateways (e.g., ipfs://vitalik.eth).
      • Local caching for resolved ENS content to enhance performance and reduce RPC calls.
  • Hypercore protocol handler:

    • Run a local hyper node
    • hyper:// native URLs support
  • Local file:// browsing with P2P publishing:

    • Custom file:// support with privileged access
    • Directory listings (Chrome-style)
    • One-click P2P publishing to:
      • IPFS (ipfs://)
      • Hypercore (hyper://)
  • Web3 protocol handler:

    • Run a local web3 protocol node
      • Access on-chain websites.
      • Fetch data from smart contracts using auto, manual, and resource request resolve modes.
      • Query account balances or other data directly from smart contracts.
  • P2P Applications:

    • peersky://p2p/chat/
      • Peer-to-peer messaging over Hyper
    • peersky://p2p/upload/
      • Decentralized file storage
    • peersky://p2p/editor/
      • Build and publish websites
    • peersky://p2p/wiki/
      • Browse Wikipedia over IPFS
    • reader.p2plabs.xyz
      • A p2p offline ActivityPub client for reading and following microblogs on the fediverse.
  • Electron’s Auto-updater:

    • Download and install the latest release from Github automatically
  • Context menu:

    • Back / Forward
    • Reload
    • Inspect
    • Undo / Redo
    • Cut / Copy / Paste
    • Copy Link Address
    • Open Link in New Tab
  • Find in page:

    • Search for text within a document or web page
  • Window state persistence:

    • Save and restore open windows on app launch
  • Keyboard shortcuts:

    • New Window: CommandOrControl+N
    • Back: CommandOrControl+[
    • Forward: CommandOrControl+]
    • Reload: CommandOrControl+R
    • Find in Page: CommandOrControl+F
    • Open Dev Tools: CommandOrControl+Shift+I
    • Focus URL Bar: CommandOrControl+L
    • Minimize: CommandOrControl+M
    • Close: CommandOrControl+W
    • Toggle Full Screen: F11
  • Settings (peersky://settings):

    • Switch search engines
    • Set custom home page wallpapers
    • Hide/show the home page clock
    • Change themes
    • Clear browser cache
  • Local LLM integration for P2P apps:

    • window.llm APIs (chat + streaming, complete)

    • Trusted-domain exposure (PeerSky-native + allowlist)

    • AI Chat app (peersky://p2p/ai-chat/)

    • P2P Editor integration (peersky://p2p/editor/)

      • New AI generator (ai-generator.js) to generate code with AI
    • 🚧 LLM Memory

      • llm.json to store prompts/responses across P2P apps
      • Reusable History component (P2P editor, AI chat, etc.)
      • Settings toggle to enable/disable memory
      • “Reset P2P Data” also clears llm.json
  • 🚧 Web extensions:

  • Bookmarks (peersky://bookmarks):

    • Option to add favourite pages in the nav bar (peersky://bookmarks)
  • QR Code generator:

    • Option to generate QR Code for every page in the URL prompt with plan1.
  • Archive (peersky://archive):

    • List and showcase published content from peersky://p2p/ apps for enhanced discoverability.
    • Provide metadata (e.g., creation date, content type) to improve navigation and usability.
    • Ability to download all the hashes of published data in a .json file.

Development

Node.js and npm Setup

Please refer to the Node.js official documentation to install Node.js. Once installed, npm (Node Package Manager) will be available, allowing you to run commands like npx and npm.

  • npm: Comes bundled with Node.js. Verify installation by running:
    node -v
    npm -v

Install dependencies

npm install

Start the app

npm start

Build

After development of the browser, run the following command. This will create a production build.

npm run build
# For Intel and Silicon macs
npm run build-all
# For macOS, Linux, and Windows

Now, the dist folder will appear in the root directory.

Contribute

  • Thanks for your interest in contributing to PeerSky Browser. There are many ways you can contribute to the project.
  • To start, take a few minutes to read the "contribution guide".
  • We look forward to your pull requests and / or involvement in our issues page.

License

PeerSky Browser is licensed under the MIT License.