README.md
1 Mojo Public API
2 ===============
3
4 The Mojo Public API is a binary stable API to the Mojo system. There are
5 several components to the API:
6
7 Bindings
8 --------
9
10 This directory contains a static library that clients can link into their
11 binary. The contents of this directory are not binary stable because each
12 client is free to use whichever version they prefer.
13
14 This directory also contains a compiler that translates mojom interface
15 definition files into idiomatic bindings for various languages, including
16 C++ and JavaScript. Clients are expected to statically link with the generated
17 code, which reads and writes the binary stable IPC message format.
18
19 GLES2
20 -----
21
22 The IPC protocol used to communicate between Mojo client and the GLES2
23 service is not binary stable. To insulate themselves from changes in this
24 protocol, clients are expected to link dynamically against the standard GLES2
25 headers from Khronos and the headers in this directory, which provide an
26 adaptor between the GLES2 C API and the underlying IPC protocol.
27
28 System
29 ------
30
31 This directory defines the interface between Mojo clients and the Mojo IPC
32 system. Although the Mojo IPC message format is binary stable, the mechanism
33 by which these messages are transported is not stable. To insulate themselves
34 from changes in the underlying transport, clients are expected to link against
35 these headers dynamically.
36
37 Tests
38 -----
39
40 This directory contains tests for code contained in the public API. Mojo
41 clients are expected to ignore this directory.
42