Skip to content

Commit 6b704a5

Browse files
committed
FOSDEM 2026: More changes to slides
Signed-off-by: Manuel Rego Casasnovas <[email protected]>
1 parent a00ce5c commit 6b704a5

File tree

5 files changed

+102
-32
lines changed

5 files changed

+102
-32
lines changed
160 KB
Loading
6.71 KB
Loading
26.9 KB
Loading
1.97 KB
Loading

slides/2026-02-fosdem-servo-web-platform.md

Lines changed: 102 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,14 @@ Manuel Rego (he/him) <[email protected]>
5050

5151
### What is Servo❓
5252

53+
<div class="fragment">
54+
5355
A **web rendering engine** written in **Rust**
5456

55-
<div style="display: flex; flex-wrap: wrap; width: 15em; gap: 1em; margin-inline: auto; margin-block: 1em; background: white; padding: 1em; padding-top: 0.5em; border-radius: 1em;">
57+
</div>
58+
59+
<div class="fragment" style="display: flex; flex-wrap: wrap; width: 15em; gap: 1em; margin-inline: auto; margin-top: 1em; background: white; padding: 1em; padding-top: 0.5em; border-radius: 1em; justify-content: center;
60+
">
5661
<div class="feature">
5762
<img src="/img/home-embeddable.png" alt="Embeddable icon"/>
5863
<strong style="color: #4fc066;">Embeddable</strong>
@@ -100,6 +105,11 @@ A **web rendering engine** written in **Rust**
100105

101106
TODO: Video showing Servo opening some pages and windows
102107

108+
- Open servo.org
109+
- Browse a bit, opening a blog post, maybe open GitHub, usual wikipedia search
110+
- Open a new window, open lichess, start to play
111+
- Go back to the other window, search for FOSDEM or go to the website, and browse a bit more
112+
103113
----
104114

105115
### Main highlights (2023-) ✨
@@ -130,7 +140,32 @@ TODO: Video showing Servo opening some pages and windows
130140

131141
----
132142

133-
TODO: WebDriver demo
143+
### WebDriver demo 🤖
144+
145+
* Open Servo with `--webdriver=7002`
146+
* Command line commands to take a screenshot:
147+
148+
```sh
149+
SESSIONID=$(curl -H 'Content-Type: application/json' -X POST
150+
-d '{"capabilities": {}}'
151+
http://127.0.0.1:7002/session
152+
| jq -r ".value.sessionId")
153+
154+
curl -v http://127.0.0.1:7002/session/${SESSIONID}/screenshot
155+
| jq -r ".value" | base64 -d > screenshot.png
156+
```
157+
158+
Check [`servo-screenshot` experiment](https://github.com/mrego/servo-toys/tree/main/servo-screenshot)
159+
160+
----
161+
162+
### New projects using Servo 🚧
163+
164+
* [**Servo GTK**](https://github.com/nacho/servo-gtk): A GTK4 library that embeds the Servo web engine
165+
* [**Slint Servo Example**](https://github.com/slint-ui/slint/tree/master/examples/servo): Integrate Servo web engine as WebView component for Slint
166+
* [**Polo**](https://github.com/Ranrar/Marco/tree/servo): A lightweight Markdown viewer
167+
168+
See [`servo.org/made-with`](https://servo.org/made-with/) for more examples
134169

135170
-----
136171

@@ -139,13 +174,17 @@ TODO: WebDriver demo
139174

140175
----
141176

142-
### Wider scope 🦀
177+
### Rust 🦀
143178

144179
* **Rust programming language**
145-
* Started by Mozilla in parallel with the Servo project
146-
* Language has been influenced by Servo's needs
147-
* Servo as a proof that is a serious systems programming language
148-
* [**Popular Servo crates/libraries**](https://crates.io/teams/github:servo:cargo-publish): rust-url, html5ever, etc.
180+
* Started by Mozilla in parallel with
181+
the Servo project
182+
* Language design was influenced
183+
by Servo's requirements
184+
* Servo proved that Rust could be
185+
a serious systems-level language
186+
* [**Popular Servo crates/libraries**](https://crates.io/teams/github:servo:cargo-publish):
187+
rust-url, html5ever, etc.
149188
* Chromium is **starting to use Rust**
150189

151190
----
@@ -155,7 +194,8 @@ TODO: WebDriver demo
155194
* **Show it is possible** to start from scratch
156195
* **Similar principles**: closely follow specs terminology and structure
157196
* **Innovation**:
158-
* Architectural: multi-core and parallel since the beginning
197+
* Architectural: multi-core and parallel
198+
since inception
159199
* Allow experimentation
160200
* New ways to implement the web platform
161201

@@ -176,7 +216,8 @@ TODO: WebDriver demo
176216

177217
* Shared test suite for the web platform
178218
* Servo auto-syncs WPT in both directions ↔️
179-
* More than **450 PRs** by `servo-wpt-sync` (261 in 2025)
219+
* More than **450 PRs** by `servo-wpt-sync`
220+
(261 in 2025)
180221
* Infra: Update docker image to Ubuntu 22.04
181222

182223
----
@@ -193,52 +234,81 @@ TODO: WebDriver demo
193234

194235
----
195236

196-
TODO Examples
237+
#### Example: Session history
238+
239+
<div style="font-size: smaller;">
240+
<img style="border-radius: 1em; box-shadow: 0.25em 0.25em 1em black; width: 50%; float: right; margin-top: 1.2em;" src="/img/a-model-of-navigation-history.png" alt="Screenshot of paper 'A model of navigation history' by Connor G. Brewster & Alan Jeffrey, August, 2016" />
241+
<ul style="display: inline;">
242+
<li style="margin-left: 1em;">Paper: <a href="https://arxiv.org/abs/1608.05444"><strong>A Model of Navigation History</strong></a><br>by Connor G. Brewster<br>&amp; Alan Jeffrey</li>
243+
<li style="margin-left: 1em;">Helped to solve a long standing issue:<br><a href="https://github.com/whatwg/html/issues/1454"><code>whatwg/html#1454</code></a></li>
244+
</ul>
245+
</div>
246+
247+
----
248+
249+
#### Example: CSS2 tables interop issues
197250

198-
https://github.com/whatwg/html/issues/1454#issuecomment-241317285
251+
<div style="font-size: smaller; width: 70%;">
199252

200-
https://github.com/w3c/css-houdini-drafts/issues?q=is%3Aissue%20state%3Aclosed%20author%3Aasajeffrey
253+
* CSS tables implementation
254+
* Found many interop issues:
255+
* [`w3c/csswg-drafts#11489`](https://github.com/w3c/csswg-drafts/issues/11489)
256+
* [`w3c/csswg-drafts#11799`](https://github.com/w3c/csswg-drafts/issues/11799)
257+
* [`w3c/csswg-drafts#12689`](https://github.com/w3c/csswg-drafts/issues/12689)
258+
* ...
259+
* **Better WPT pass-rate than WebKit**
201260

202-
https://github.com/whatwg/html/issues/12016
261+
<br>
262+
<br>
263+
<br>
264+
<br>
265+
<br>
266+
<br>
203267

204-
https://github.com/w3c/csswg-drafts/issues/13149
268+
</div>
205269

206-
https://github.com/w3c/csswg-drafts/issues/12852
270+
<img style="border-radius: 1em; box-shadow: 0.25em 0.25em 1em black; position: absolute; right: 1em; top: 3em; padding: 0.5em; background: white; width: 7em;" src="/img/css-talbes-issue-11489.png" alt="Screenshot of example on issue https://github.com/w3c/csswg-drafts/issues/11489" />
271+
<img style="border-radius: 1em; box-shadow: 0.25em 0.25em 1em black; position: absolute; left: 3em; top: 10.5em; padding: 0.5em; background: white; width: 11em;" src="/img/css-talbes-issue-11799.png" alt="Screenshot of example on issue https://github.com/w3c/csswg-drafts/issues/11799" />
272+
<img style="border-radius: 1em; box-shadow: 0.25em 0.25em 1em black; position: absolute; right: 2em; top: 11.5em; padding: 0.5em; background: white; width: 5em;" src="/img/css-talbes-issue-12689.png" alt="Screenshot of example on issue https://github.com/w3c/csswg-drafts/issues/12689" />
207273

208274
----
209275

210276
### Conclusions 📌
211277

212278
* New web engines **help the wider ecosystem**
213-
* **Improve specs** and identify interop issues
214-
* **Increase test coverage** covering corner cases
215-
* Provide **new ways to use the web platform**
279+
* **Improve specs** and identify **interop issues**
280+
* **Increase test coverage**
281+
including missing corner cases
282+
* Provide **novel approaches to use the Web**
216283
* **Diversification**: healthier platform
217284

218285
-----
219286

220-
## Join the project 🤝
287+
### Join the project 🤝
221288

222-
* GitHub: [`github.com/servo`](https://github.com/servo)
223-
* Chat: [`servo.zulipchat.com`](https://servo.zulipchat.com/)
224-
225-
* Sponsor: [GitHub](https://github.com/sponsors/servo) & [Open Collective](https://opencollective.com/servo)
289+
* GitHub 💻: [`github.com/servo`](https://github.com/servo)
290+
* Chat 💬: [`servo.zulipchat.com`](https://servo.zulipchat.com/)
291+
* Email 📧: [`[email protected]`](mailto:[email protected])
292+
* Sponsor 💰: [GitHub](https://github.com/sponsors/servo) & [Open Collective](https://opencollective.com/servo)
226293

227-
<div style="text-align: center; margin: 1em;">
294+
<div style="text-align: center; margin: 1em; margin-bottom: 0em;">
228295

229296
Looking into **growing a healthy community around the project**
230297

231298
</div>
232299

233-
-----
300+
----
234301

235-
## Test Servo & Report issues 🧪
302+
### Test Servo & Report issues 🧪
236303

237-
* Download: [`servo.org/download`](https://servo.org/download)
238-
* Issues: [`github.com/servo/servo/issues`](https://github.com/servo/servo/issues)
239-
* Discussions: [`github.com/servo/servo/discussions`](https://github.com/servo/servo/discussions)
304+
* Download ⬇️
305+
[`servo.org/download`](https://servo.org/download)
306+
* Issues 🐛
307+
[`github.com/servo/servo/issues`](https://github.com/servo/servo/issues)
308+
* Discussions 🗫:
309+
[`github.com/servo/servo/discussions`](https://github.com/servo/servo/discussions)
240310

241-
<div style="text-align: center; margin: 1em;">
311+
<div style="text-align: center; margin: 1em; margin-bottom: 0em;">
242312

243313
**Play with Servo** and
244314
**let us know your experience**
@@ -251,7 +321,7 @@ Looking into **growing a healthy community around the project**
251321

252322
## Thanks 🙏
253323

254-
<div style="float: left; font-size: 70%; text-align: left; padding: 0.5em;">
324+
<div style="float: left; text-align: left;">
255325

256326
**[`servo.org`](https://servo.org)**
257327

@@ -261,7 +331,7 @@ Looking into **growing a healthy community around the project**
261331

262332
</div>
263333

264-
<img src="/img/servo-qr.png" style="width: 20%; margin-left: 3em;" alt="QR code with Servo logo pointing to servo.org website" />
334+
<img src="/img/servo-qr.png" style="width: 20%; margin-left: 1em;" alt="QR code with Servo logo pointing to servo.org website" />
265335

266336
<img src="/img/servo-color-positive-no-container.svg" style="width: 30%; margin: 1em;" alt="Servo logo" />
267337

0 commit comments

Comments
 (0)