Skip to content
/ servox Public
forked from servo/servo

Fork of official Servo browser (engine) with Wasm and TypeScript baked in

Notifications You must be signed in to change notification settings

pannous/servox

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Servox - Servo Fork with WASM GC & TypeScript

Fork of official servo browser (engine) with the following modifications:

Features

✅ <script type="text/wast"> ✅ <script type="text/typescript"> ✅ <script type="application/wasm" src="…">

E.g.

  <script type="text/wast">
(module
  (func $getValue (result i32)
    i32.const 123)
  (export "getValue" (func $getValue)))
  </script> 

    <script type="text/typescript">
        const greeting: string = "Hello from TypeScript!";
        const version: number = getValue()
        console.log(`${greeting} (v${version})`);
    </script>

💡exports are immediately available to TypeScript, even gc objects!

<script type="text/wast">
(module
  (type $Box (struct (field $val (mut i32))))
  (global $box (export "box") (ref $Box) (struct.new $Box (i32.const 42)))
)
  </script>
<script type="text/typescript">
  console.log(box.val);
</script>

Installation

brew tap pannous/servox
brew install servox

Tests

servox https://raw.githack.com/pannous/servox/main/test-all.html

See tests/extensions folder

About

Fork of official Servo browser (engine) with Wasm and TypeScript baked in

Topics

Resources

Security policy

Stars

Watchers

Forks

Languages

  • Rust 59.3%
  • HTML 33.3%
  • Python 4.3%
  • WebIDL 2.3%
  • JavaScript 0.4%
  • CSS 0.2%
  • Other 0.2%