From c6ab60dbfc6da7b4f800c9e40893c8b58413960c Mon Sep 17 00:00:00 2001 From: Jack Moffitt Date: Thu, 28 Aug 2014 09:34:23 -0600 Subject: Cargoify servo --- ORGANIZATION.md | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 ORGANIZATION.md (limited to 'ORGANIZATION.md') diff --git a/ORGANIZATION.md b/ORGANIZATION.md new file mode 100644 index 00000000000..9e237010d5c --- /dev/null +++ b/ORGANIZATION.md @@ -0,0 +1,40 @@ +# Servo code organization + +## Servo components + +* `src/bin.rs`: Servo's entry point +* `src/lib.rs`: libservo entry point +* `components/layout`: The layout system. +* `components/style`: The CSS styling system. +* `components/script`: The JavaScript and DOM systems. +* `components/compositing`: The compositor and windowing systems. +* `components/gfx`: Graphics rendering, fonts, and text shaping. +* `components/net`: Networking, caching, image decoding. +* `components/msg`: Message structure definitions for inter-task communication. +* `components/*_traits`: Trait definitions to break crate dependencies. +* `components/macros`: Macros used by the rest of Servo. +* `components/util`: Various utility functions used by other Servo components. + +## Supporting libraries + +These libraries are either internal but used by Servo or external and need +special integration: + +* `support/glfw-rs`: Wrapping for the GLFW library. Will eventually move to + being completely out of tree. +* `support/rust-task_info`: A binding to the task_info library on OS X. + +## Tests + +* `tests/contenttest.rs`: Content (JavaScript) test runner +* `tests/contenttest`: Content tests +* `tests/reftest.rs`: Reference (layout) test runner +* `tests/reftest`: Reference tests +* `tests/html`: Manual test cases and examples +* `tests/power`: Tests for measuring power usage +* `tests/wpt`: Web platform tests and harness + +## Miscellaneous + +* `etc`: Various scripts and files that don't belong anywhere else. +* `etc/patches`: Patches for upstream libraries. -- cgit v1.2.3