Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 51 lines (29 sloc) 2.959 kb
4f4923b @domenic Add Contributing.md. Closes #504.
domenic authored
1 ## Mission
2
3 jsdom is, as said in our tagline, “A JavaScript implementation of the W3C DOM.” Anything that helps us be better at that is welcome.
4
5 ## Status
6
7 We're pretty happy with our DOM2 implementation, modulo bugs. DOM3 is nowhere near complete, and DOM4 is almost nonexistant.
8
9 ## Existing Tests
10
11 The DOM, thankfully, has lots of tests already out there. Those already included in the repository are of two types:
12
13 * Auto-generated or adapted from existing W3C tests.
14 * Written by contributors to plug gaps in the W3C tests.
15
16 Of these, of course, the first is preferable. When we find gaps, we usually add the tests at the bottom of the relevant auto-generated test suite, e.g. in `test/level2/html.js`.
17
18 Not all of the existing tests pass. The current test compliance is tracked [in the README](https://github.com/tmpvar/jsdom#test-compliance).
19
20 ## Contributing
21
22 When contributing, the first question you should ask is:
23
24 **Can I exhibit how the browsers differ from what jsdom is doing?**
25
26 If you can, then you've almost certainly found a bug in or missing feature of jsdom, and we'd love to have your contribution. In that case, move on to:
27
28 **What W3C spec covers this potential contribution?**
29
30 Some likely ones include:
31
32 * [DOM1](http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/cover.html)
33 * [DOM2 Core](http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/), [DOM2 HTML](http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/), [DOM2 Events](http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/), [DOM2 Style](http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/)
34 * [DOM3 Core](http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/), [DOM3 Events](http://www.w3.org/TR/DOM-Level-3-Events/)
35 * [DOM4](http://www.w3.org/TR/2012/WD-dom-20120405/)
90dd75b @domenic Add "DOM Living Standard" link to list of DOM specs.
domenic authored
36 * [DOM Living Standard](http://dom.spec.whatwg.org/)
4f4923b @domenic Add Contributing.md. Closes #504.
domenic authored
37 * [Other W3C Dom Specs](http://www.w3.org/standards/techs/dom)
38 * [HTML5](http://www.w3.org/TR/html5/)
39
40 Once you have those nailed down, you'll want to ask:
41
42 **Where can I get a W3C test for this functionality?**
43
44 We already have all the DOM1 and DOM2 tests. We even have some DOM3 ones, although sadly they are currently disabled, due to DOM3 not being complete. DOM4 has no official test suite yet, but many tests are found [on w3c-test.org](http://w3c-test.org/webapps/DOMCore/tests/). If you really can't find it, you can always ask [public-webapps-testsuite@w3.org](mailto:public-webapps-testsuite@w3.org), [like I did](http://lists.w3.org/Archives/Public/public-webapps-testsuite/2012Aug/0001.html).
45
46 If there is no W3C test covering the functionality you're after, then you can write your own, placing it in the appropriate level. But in this case you'll probably want to alert the authors of the relevant test suite that they missed something!
47
48 ## Issues
49
50 Finally, we have [an active and full issue tracker](https://github.com/tmpvar/jsdom/issues) that we'd love you to help with. Go find something broken, and fix it!
Something went wrong with that request. Please try again.