Servo (software)
64px | |
Original author(s) | Mozilla Corporation |
---|---|
Developer(s) | Linux Foundation and volunteers[1][2] |
Stable release | Lua error in Module:Wd at line 405: invalid escape sequence near '"^'. / Lua error in Module:Wd at line 405: invalid escape sequence near '"^'. |
Written in | Rust |
Operating system | Cross-platform |
Type | Browser engine |
License | MPL 2.0[3] |
Website | {{ |
Servo is an experimental browser engine designed to take advantage of the memory safety properties and concurrency features of the Rust programming language. It seeks to create a highly parallel environment, in which rendering, layout, HTML parsing, image decoding, and other engine components are handled by fine-grained, isolated tasks.[4][5] It also makes use of GPU acceleration to render web pages quickly and smoothly.[6][7]
Servo has always been a research project. It began at the Mozilla Corporation in 2012, and its employees did the bulk of the work until 2020.[8] This included the Quantum project, when portions of Servo were incorporated into the Gecko engine of Firefox.[9][10]
After Mozilla laid off all Servo developers in 2020,[8] governance of the project was transferred to the Linux Foundation.[1] Development work officially continues at the same GitHub repository with the project itself entirely volunteer driven.[2]
History
Development of Servo began at the Mozilla Corporation in 2012.[11][12] The project was named after Tom Servo, a robot from the television show Mystery Science Theater 3000.[13]
In 2013, Mozilla announced that Samsung was collaborating on the project.[14] Samsung's main contribution was porting Servo to Android and ARM processors.[15] A Samsung developer also attempted to re-implement the Chromium Embedded Framework API in Servo,[16] but it never reached fruition and the code was eventually removed.[17]
The Acid2 test was passed in 2014,[4] and Servo could render some websites faster than the Gecko engine of Firefox.[18] By 2016, the engine had been further optimized.[19] The same year, Mozilla began the Quantum project, which incorporated stable portions of Servo into Gecko.[9][10]
Servo was the engine of two augmented reality browsers. The first was for a Magic Leap headset in 2018.[20] Then the Firefox Reality browser was released in 2020.[21]
In August 2020, Mozilla laid off many employees, including the Servo team, to "adapt its finances to a post-COVID-19 world and re-focus the organization on new commercial services".[8] Governance of the Servo project was thus transferred to the Linux Foundation.[1]
In January 2023, the Servo project announced that new external funding had enabled a team of developers to reactivate the project.[22] The initial roadmap focused on selecting one of the two existing layout engines for further development, followed by working towards basic CSS2 conformance.[23]
References
- ↑ 1.0 1.1 1.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 4.0 4.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 8.0 8.1 8.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 9.0 9.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 10.0 10.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
External links
Wikimedia Commons has media related to Servo (layout engine). |
- No URL found. Please specify a URL here or add one to Wikidata.
- 2016 podcast about Servo