Skip to content

Commit 5cff36f

Browse files
committed
Added some explanations for various crates.
Signed-off-by: Narfinger <[email protected]>
1 parent 52dd13a commit 5cff36f

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

src/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131

3232
# Servo’s architecture
3333

34+
- [Crates under Servo\*](architecture/crates.md)
3435
- [Architecture overview\*](architecture/overview.md)
3536
- [Concurrency and parallelism\*](architecture/concurrency-and-parallelism.md)
3637
- [Further reading\*](architecture/further-reading.md)

src/architecture/crates.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Architecture overview
2+
3+
The servo browser owns a couple of crates that are either mostly independent or based on some upstream project. This gives a list of them.
4+
We highlight crates with **crate** for crates that are used throughout the rust ecosystem and _crate_ for crates used in Firefox work.
5+
You should use a bit more care before changing them.
6+
7+
- servo: The main browser
8+
- _mozjs_: Spidermonkey, servos JavaScriptEngine based on Spidermonkey with a small patchset.
9+
- ci-runners: Various things for servo CI (Continuous Integration).
10+
- wpt: Servo's fork the the Web Platform Tests
11+
- _stylo_: Servos CSS engine based on Firefox CSS engine.
12+
- html5ever: HTML5 high-performance parser.
13+
- media: media backends and similar that servo uses.
14+
- book: This book!
15+
- _webrender_: A fork of Firefox's webrender with a small patchset
16+
- **Ipc-channel**: Crate for the rust ecosystem of making IPC work.
17+
- **Surfman**: Low-Level cross platform Rust library for managing graphic surfaces.
18+
- **unicode-bidi**: Unicode Bidirectional Algorithm implementation.
19+
- rust-content-security-policy: Content Security Policy crate.
20+
- **string-cachen**: String interning library.
21+
- **MallocSizeOf**: Measuring the runtime size of a value to use memory calculation.
22+
- **Euclid**: Geometric types.
23+
- **Pathfinder**: GPU-based rasterizer for fonts and vector graphics.

0 commit comments

Comments
 (0)