OLD | NEW |
1 Sky | 1 Sky |
2 === | 2 === |
3 | 3 |
4 Sky is an experiment in building a UI framework for Mojo. The approach we're | 4 Sky is an experiment in building a UI framework for Mojo. The approach we're |
5 exploring is to create a layered framework based around a retained hierarchy of | 5 exploring is to create a layered framework based around a retained hierarchy of |
6 semantic elements. We're experimenting with different ideas and exploring | 6 semantic elements. We're experimenting with different ideas and exploring |
7 various approaches, many of which won't work and will need to be discarded, but, | 7 various approaches, many of which won't work and will need to be discarded, but, |
8 if we're lucky, some of which might turn out to be useful. | 8 if we're lucky, some of which might turn out to be useful. |
9 | 9 |
10 Sky has three layers, each of which also adds progressively more opinion. At | 10 Sky has three layers, each of which also adds progressively more opinion. At |
(...skipping 10 matching lines...) Expand all Loading... |
21 to create custom elements. The following elements are built into the engine: | 21 to create custom elements. The following elements are built into the engine: |
22 | 22 |
23 - ``script``: Executes script | 23 - ``script``: Executes script |
24 - ``style``: Defines style rules | 24 - ``style``: Defines style rules |
25 - ``import``: Loads a module | 25 - ``import``: Loads a module |
26 - ``iframe``: Embeds another Mojo application | 26 - ``iframe``: Embeds another Mojo application |
27 - ``template``: Captures descendants for use as a template | 27 - ``template``: Captures descendants for use as a template |
28 - ``content``: Visually projects descendents of the shadow host | 28 - ``content``: Visually projects descendents of the shadow host |
29 - ``shadow``: Visually projects older shadow roots of the shadow host | 29 - ``shadow``: Visually projects older shadow roots of the shadow host |
30 - ``img``: Displays an image | 30 - ``img``: Displays an image |
| 31 - ``div``: Neutral element for hooking styles in shadow trees |
| 32 - ``span``: Neutral element for hooking styles in shadow trees |
31 - ``a``: Links to another Mojo application | 33 - ``a``: Links to another Mojo application |
32 - ``title``: Briefly describes the current application state to the user | 34 - ``title``: Briefly describes the current application state to the user |
33 - ``t``: Preserve whitespace (by default, whitespace nodes are dropped) | 35 - ``t``: Preserve whitespace (by default, whitespace nodes are dropped) |
| 36 - ``error``: Represents a parse error |
34 | 37 |
35 ### Additional Elements ### | 38 ### Additional Elements ### |
36 | 39 |
37 In addition to the built-in elements, frameworks and applications can define | 40 In addition to the built-in elements, frameworks and applications can define |
38 custom elements. The Sky framework contains a number of general-purpose | 41 custom elements. The Sky framework contains a number of general-purpose |
39 elements, including ``input``, ``button``, ``menu``, ``toolbar``, ``video``, and | 42 elements, including ``input``, ``button``, ``menu``, ``toolbar``, ``video``, and |
40 ``dialog``. However, developers are free to implement their own input fields, | 43 ``dialog``. However, developers are free to implement their own input fields, |
41 buttons, menus, toolbars, videos, or dialogs with access to all the same engine | 44 buttons, menus, toolbars, videos, or dialogs with access to all the same engine |
42 features as the frame because the framework does not occupy a privileged | 45 features as the frame because the framework does not occupy a privileged |
43 position in Sky. | 46 position in Sky. |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 We're documenting Sky with a [set of technical specifications](specs) that | 160 We're documenting Sky with a [set of technical specifications](specs) that |
158 define precisely the behavior of the engine. Currently both the implementation | 161 define precisely the behavior of the engine. Currently both the implementation |
159 and the specification are in flux, but hopefully they'll converge over time. | 162 and the specification are in flux, but hopefully they'll converge over time. |
160 | 163 |
161 Contributing | 164 Contributing |
162 ------------ | 165 ------------ |
163 | 166 |
164 Instructions for building and testing Sky are contained in [HACKING.md](HACKING.
md). For | 167 Instructions for building and testing Sky are contained in [HACKING.md](HACKING.
md). For |
165 coordination, we use the ``#mojo`` IRC channel on | 168 coordination, we use the ``#mojo`` IRC channel on |
166 [Freenode](https://freenode.net/). | 169 [Freenode](https://freenode.net/). |
OLD | NEW |