{"action":"created","issue":{"url":"https://api.github.com/repos/paldepind/snabbdom/issues/6","labels_url":"https://api.github.com/repos/paldepind/snabbdom/issues/6/labels{/name}","comments_url":"https://api.github.com/repos/paldepind/snabbdom/issues/6/comments","events_url":"https://api.github.com/repos/paldepind/snabbdom/issues/6/events","html_url":"https://github.com/paldepind/snabbdom/issues/6","id":86259347,"number":6,"title":"Support JSX compilation","user":{"login":"theadam","id":850881,"avatar_url":"https://avatars.githubusercontent.com/u/850881?v=3","gravatar_id":"","url":"https://api.github.com/users/theadam","html_url":"https://github.com/theadam","followers_url":"https://api.github.com/users/theadam/followers","following_url":"https://api.github.com/users/theadam/following{/other_user}","gists_url":"https://api.github.com/users/theadam/gists{/gist_id}","starred_url":"https://api.github.com/users/theadam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/theadam/subscriptions","organizations_url":"https://api.github.com/users/theadam/orgs","repos_url":"https://api.github.com/users/theadam/repos","events_url":"https://api.github.com/users/theadam/events{/privacy}","received_events_url":"https://api.github.com/users/theadam/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-06-08T17:11:40Z","updated_at":"2015-09-02T14:30:59Z","closed_at":null,"body":"JSX almost works already using a pragma that instructs the compiler to use ```snabbdom/h```, there are just 2 edge cases I have found.\r\n* If no attributes are added to a JSX element, the data argument is null.  This causes snabbdom to throw an error.\r\n* Children are not provided as an array, they are provided as any arguments after the selector and data.\r\n\r\nA basic example of what this would look like can be found [here](http://babeljs.io/repl/#?experimental=true&evaluate=true&loose=false&spec=false&playground=false&code=%2F**%20%40jsx%20h%20*%2F%0A%0A%3Cdiv%3E%0A%20%20%3Cspan%20testProp%3D%22testval%22%20%2F%3E%0A%20%20%3Cspan%20%2F%3E%0A%3C%2Fdiv%3E)."},"comment":{"url":"https://api.github.com/repos/paldepind/snabbdom/issues/comments/137103408","html_url":"https://github.com/paldepind/snabbdom/issues/6#issuecomment-137103408","issue_url":"https://api.github.com/repos/paldepind/snabbdom/issues/6","id":137103408,"user":{"login":"paldepind","id":521604,"avatar_url":"https://avatars.githubusercontent.com/u/521604?v=3","gravatar_id":"","url":"https://api.github.com/users/paldepind","html_url":"https://github.com/paldepind","followers_url":"https://api.github.com/users/paldepind/followers","following_url":"https://api.github.com/users/paldepind/following{/other_user}","gists_url":"https://api.github.com/users/paldepind/gists{/gist_id}","starred_url":"https://api.github.com/users/paldepind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paldepind/subscriptions","organizations_url":"https://api.github.com/users/paldepind/orgs","repos_url":"https://api.github.com/users/paldepind/repos","events_url":"https://api.github.com/users/paldepind/events{/privacy}","received_events_url":"https://api.github.com/users/paldepind/received_events","type":"User","site_admin":false},"created_at":"2015-09-02T14:30:59Z","updated_at":"2015-09-02T14:30:59Z","body":"snabbdom-jsx looks awesome to me. I've just added it to the readme."}}