{"action":"created","issue":{"url":"https://api.github.com/repos/optimizely/nuclear-js/issues/24","labels_url":"https://api.github.com/repos/optimizely/nuclear-js/issues/24/labels{/name}","comments_url":"https://api.github.com/repos/optimizely/nuclear-js/issues/24/comments","events_url":"https://api.github.com/repos/optimizely/nuclear-js/issues/24/events","html_url":"https://github.com/optimizely/nuclear-js/issues/24","id":69526132,"number":24,"title":"Story for Isomorphic applications?","user":{"login":"rattrayalex","id":704302,"avatar_url":"https://avatars.githubusercontent.com/u/704302?v=3","gravatar_id":"","url":"https://api.github.com/users/rattrayalex","html_url":"https://github.com/rattrayalex","followers_url":"https://api.github.com/users/rattrayalex/followers","following_url":"https://api.github.com/users/rattrayalex/following{/other_user}","gists_url":"https://api.github.com/users/rattrayalex/gists{/gist_id}","starred_url":"https://api.github.com/users/rattrayalex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rattrayalex/subscriptions","organizations_url":"https://api.github.com/users/rattrayalex/orgs","repos_url":"https://api.github.com/users/rattrayalex/repos","events_url":"https://api.github.com/users/rattrayalex/events{/privacy}","received_events_url":"https://api.github.com/users/rattrayalex/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-04-20T07:29:28Z","updated_at":"2015-04-20T19:32:11Z","closed_at":null,"body":"Hi, \r\n\r\nNuclear looks incredibly exciting. I was wondering what the story around creating Isomorphic applications (same code for server and client) might look like. \r\n\r\nSince events shouldn't be necessary, I would primarily hope that:\r\n\r\n1. Using the Mixin won't break the application on the server.\r\n1.  `getDataBindings` could allow an alternative source on the server, OR `getInitialState` could work on the server, OR an alternative would be provided. \r\n\r\n(I'm asking as someone who hasn't yet built complex isomorphic apps and hasn't yet used Nuclear, I apologize for any gaps in my knowledge!)\r\n\r\nThanks!"},"comment":{"url":"https://api.github.com/repos/optimizely/nuclear-js/issues/comments/94548258","html_url":"https://github.com/optimizely/nuclear-js/issues/24#issuecomment-94548258","issue_url":"https://api.github.com/repos/optimizely/nuclear-js/issues/24","id":94548258,"user":{"login":"rattrayalex","id":704302,"avatar_url":"https://avatars.githubusercontent.com/u/704302?v=3","gravatar_id":"","url":"https://api.github.com/users/rattrayalex","html_url":"https://github.com/rattrayalex","followers_url":"https://api.github.com/users/rattrayalex/followers","following_url":"https://api.github.com/users/rattrayalex/following{/other_user}","gists_url":"https://api.github.com/users/rattrayalex/gists{/gist_id}","starred_url":"https://api.github.com/users/rattrayalex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rattrayalex/subscriptions","organizations_url":"https://api.github.com/users/rattrayalex/orgs","repos_url":"https://api.github.com/users/rattrayalex/repos","events_url":"https://api.github.com/users/rattrayalex/events{/privacy}","received_events_url":"https://api.github.com/users/rattrayalex/received_events","type":"User","site_admin":false},"created_at":"2015-04-20T19:32:11Z","updated_at":"2015-04-20T19:32:11Z","body":"Awesome! I think `loadState` sounds like a terrific/simple solution. Would\n`hydrateStores` be called on the `Reactor` object?\n\nOn Mon, Apr 20, 2015 at 11:58 PM Jordan Garcia <notifications@github.com>\nwrote:\n\n> hm I haven't thought of that pattern. It would definitely work. I dont see\n> too big of a downside to it either.\n>\n> One pattern I was thinking of was implementing a method on the reactor\n> that is reactor.loadState that would take the entire state map. That way\n> you could use the same actions on the server to load the state of your\n> stores and not bypass the store handling the state responsibility.\n>\n> Hydrating state clientside from serverside is pretty direct. I dont see\n> the need to do it at a store level it seems like 99% of the use cases would\n> simply be taking the entire app state server side and dumping it in client\n> side whenever the page loads.\n>\n> I think I will plan to put a hydrateStores or loadState method on the\n> reactor in 0.6.0\n>\n> —\n> Reply to this email directly or view it on GitHub\n> <https://github.com/optimizely/nuclear-js/issues/24#issuecomment-94530972>\n> .\n>\n"}}