ninabreznik / dweb-browser

A minimal web browser for the distributed web

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

dweb-browser

A minimal web browser for the distributed web

Running

  • Clone the repo
  • npm install
  • bash ./rebuild.sh
  • npm run start

Supported protocols

  • hyper://
    • Able to read from archives
    • Able to resolve dat-dns domains
  • dat://
    • Able to read from archives
    • Able to resovle dat-dns domains
    • 😢 No DatArchive support.
    • A bunch of websites are probably broken.
  • ipfs
    • Working on reading from URLs

PRs for more protocols are welcome.

Roadmap

  • Basic browser features
    • Navigate to URL
    • Back / Forward
    • Welcome page
  • Basic hypercore-protocol / dat support
  • Basic IPFS support
    • Loading files
    • Directory listing
    • Loading pretty urls with index.html
    • IPNS?
  • Basic BitTorrent support (loading)
  • Keyboard shortcuts
    • Dev tools
    • Navigation
    • Customization?
  • Make sure protocol handlers open correct URL
  • Multiple windows
  • Better browser history
    • Save history to a DB
    • Search through history?
    • Provide history suggestions when typing in URL bar
  • fetch API for hyperdrives GH issue
    • Creating an archive (scoped to page origin)
    • PUT/DELETE methods for files / folders
    • Track created archives for origin in a DB
    • Access control prompt for writing to origin
  • WebXR - Make sure it's working!
  • Web extension support via electron-extensions
    • Somewhere to render badges
    • Developer options page
    • Track extensions in a DB
    • Drag and drop extension folder
  • Persist browser settings / history to Hyperdrive
  • Load extensions from p2p protocols.

About

A minimal web browser for the distributed web

License:GNU Affero General Public License v3.0


Languages

Language:JavaScript 82.5%Language:HTML 13.5%Language:Shell 4.0%