All Projects → browserhtml → Browserhtml

browserhtml / Browserhtml

Licence: other
Experimental Servo browser built in HTML

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to Browserhtml

Servo
The Servo Browser Engine
Stars: ✭ 20,469 (+684.55%)
Mutual labels:  browser, servo
Popsicle
Simple HTTP requests for node and the browser
Stars: ✭ 238 (-90.88%)
Mutual labels:  browser
Cargo
🚂🚋🚋 A browser with almost no UI.
Stars: ✭ 221 (-91.53%)
Mutual labels:  browser
Use Ssr
☯️ React hook to determine if you are on the server, browser, or react native
Stars: ✭ 230 (-91.18%)
Mutual labels:  browser
Run Series
Run an array of functions in series
Stars: ✭ 223 (-91.45%)
Mutual labels:  browser
Supercookie
💭 Inspiration
Stars: ✭ 3,630 (+39.13%)
Mutual labels:  browser
Core
Midori Web Browser - a lightweight, fast and free web browser using WebKit and GTK+
Stars: ✭ 221 (-91.53%)
Mutual labels:  browser
Vue Firestore
☁️ Cloud Firestore binding in realtime with Vuejs
Stars: ✭ 239 (-90.84%)
Mutual labels:  browser
Gngr
a cross-platform browser focussed on privacy.
Stars: ✭ 238 (-90.88%)
Mutual labels:  browser
Jshistory Cn
🇨🇳 《JavaScript 二十年》中文版
Stars: ✭ 3,686 (+41.28%)
Mutual labels:  browser
Use Position
🌍 React hook usePosition() for fetching and following a browser geolocation
Stars: ✭ 230 (-91.18%)
Mutual labels:  browser
Oasis
Free, open-source, peer-to-peer social application that helps you follow friends and discover new ones on Secure Scuttlebutt (SSB).
Stars: ✭ 225 (-91.38%)
Mutual labels:  browser
Getsy
A simple browser/client-side web scraper.
Stars: ✭ 238 (-90.88%)
Mutual labels:  browser
Timidity
Play MIDI files in the browser w/ Web Audio, WebAssembly, and libtimidity
Stars: ✭ 221 (-91.53%)
Mutual labels:  browser
Extension Create
Create modern cross-browser extensions with no build configuration.
Stars: ✭ 167 (-93.6%)
Mutual labels:  browser
Webcompat.com
Source code for webcompat.com
Stars: ✭ 220 (-91.57%)
Mutual labels:  browser
Chromely
Build HTML Desktop Apps on .NET/.NET Core/.NET 5 using native GUI, HTML5, JavaScript, CSS
Stars: ✭ 2,728 (+4.56%)
Mutual labels:  browser
Svg2pdf.js
A javascript-only SVG to PDF conversion utility that runs in the browser. Brought to you by yWorks - the diagramming experts
Stars: ✭ 231 (-91.15%)
Mutual labels:  browser
Peertransfer
📦 • Send a file p2p and e2e encrypted in your browser using WebRTC.
Stars: ✭ 238 (-90.88%)
Mutual labels:  browser
Await Of
await wrapper for easier errors handling without try-catch
Stars: ✭ 240 (-90.8%)
Mutual labels:  browser

This project has been retired: https://groups.google.com/d/msg/mozilla.dev.servo/U5zhsBLXovM/HbRL69zZBAAJ


Browser.html

Browser.html is a research project aimed at building an experimental Servo browser in HTML. This project has 2 major pieces:

  • Graphene: a runtime for building native apps in HTML. It's currently in development and part of Servo.
  • Browser.html: an experimental browser UI for desktop.

This repository is for Browser.html (the front-end). Active development of Graphene happens in the Servo repository. Questions? Check out the FAQ.

browser

Contributing

We welcome contributions from anyone. See CONTRIBUTING.md for help getting started.

Development

There are two major components to the browser.html application.

  1. Local server that serves application UI.
  2. Client that is a application shell that connects to the server and renders served UI.

Server

If you're working on the Browser.html front-end, you'll need Node.js to install all dependencies and run the development toolchain.

git clone https://github.com/browserhtml/browserhtml.git
cd browserhtml
npm install --no-optional

Once all dependencies are installed, you can run the server component with the following command:

npm run build-server

Any changes to the source code will trigger a build, which is then automatically served. That will allow you to reload a client in order to see your changes. Alternatively you can use live-server to not only rebuild, but also trigger an automatic live code reload for the UI such that application state is preserved:

npm run live-server

Client

In order to run the browser.html application itself, you will need a client component. This would be a Servo binary with the Graphene runtime. You can either download pre-built nightly snapshots or build it yourself and run with the --browserhtml flag. Assuming you have a pre-built snapshot in the default location on a Mac you can run the browser.html application with the following command:

 /Applications/Servo.app/Contents/MacOS/servo -b -w --pref dom.mozbrowser.enabled --pref dom.forcetouch.enabled --pref shell.builtin-key-shortcuts.enabled=false http://localhost:6060

Gecko Client

Browser.html can also be run on top of a Gecko-based version of Graphene. We used to use this variant to test and debug features that were not yet in Servo. You can either download pre-built nightly snapshots or build it yourself. Assuming you have a pre-built snapshot in default location on a Mac you can run the browser.html application with the following command:

/Applications/B2G.app/Contents/MacOS/b2g-bin --start-manifest=http://localhost:6060/manifest.webapp --profile ./.profile

Electron Client

Browser.html can also run as an Electron application. Assuming you have electron installed you can run the browser.html application with the following command (must be run from the project root):

electron .

Browser Client

You can also just load http://localhost:6060/ in your favourite web browser, but be aware that many features will not work because they require APIs not available to web content.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].