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 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
65 exported by that module. | 65 exported by that module. |
66 | 66 |
67 ```html | 67 ```html |
68 SKY MODULE | 68 SKY MODULE |
69 <import src=”/sky/framework” /> | 69 <import src=”/sky/framework” /> |
70 <import src=”/another/module.sky” as=”foo” /> | 70 <import src=”/another/module.sky” as=”foo” /> |
71 <sky-element name=”my-element”> | 71 <sky-element name=”my-element”> |
72 class extends SkyElement { | 72 class extends SkyElement { |
73 constructor () { | 73 constructor () { |
74 this.addEventListener('click', (event) => this.updateTime()); | 74 this.addEventListener('click', (event) => this.updateTime()); |
75 this.createShadowTree().appendChild('Click to show the time'); | 75 this.shadowRoot.appendChild('Click to show the time'); |
76 } | 76 } |
77 updateTime() { | 77 updateTime() { |
78 this.shadowTree.firstChild.replaceWith(new Date()); | 78 this.shadowRoot.firstChild.replaceWith(new Date()); |
esprehn
2014/10/31 23:13:44
I assume this does a toString() since it's not a N
| |
79 } | 79 } |
80 } | 80 } |
81 </sky-element> | 81 </sky-element> |
82 <script> | 82 <script> |
83 class AnnualReport { | 83 class AnnualReport { |
84 constructor(bar) { | 84 constructor(bar) { |
85 this.sheet = new foo.BalanceSheet(bar); | 85 this.sheet = new foo.BalanceSheet(bar); |
86 } | 86 } |
87 frobinate() { | 87 frobinate() { |
88 this.sheet.balance(); | 88 this.sheet.balance(); |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
157 We're documenting Sky with a [set of technical specifications](specs) that | 157 We're documenting Sky with a [set of technical specifications](specs) that |
158 define precisely the behavior of the engine. Currently both the implementation | 158 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. | 159 and the specification are in flux, but hopefully they'll converge over time. |
160 | 160 |
161 Contributing | 161 Contributing |
162 ------------ | 162 ------------ |
163 | 163 |
164 Instructions for building and testing Sky are contained in [HACKING.md](HACKING. md). For | 164 Instructions for building and testing Sky are contained in [HACKING.md](HACKING. md). For |
165 coordination, we use the ``#mojo`` IRC channel on | 165 coordination, we use the ``#mojo`` IRC channel on |
166 [Freenode](https://freenode.net/). | 166 [Freenode](https://freenode.net/). |
OLD | NEW |