6 ms·
Morpheus – Isomorphic web publishing platform, built with React and Flux
- gadders 12y agoI may be thick, but what does isomorphic mean in this context?
- thirdtruck 12y agoIt's not just you. It's too abstract of a word to tell me anything without more context. Edit: Here's the definition they're using: http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/ http://nerds.airbnb.com/isomorphic-javascript-future-web-app.... In short, "JavaScript that runs on both the client and the server." This goes beyond "using node" to mean that (e.g.) everything is rendered on the server, but that you can also render only parts and send them to the client to handle on its own.
- isomorphic 12y agoTo be pedantic, when I picked my handle back in the /. days, I thought it meant "a bijective homomorphism." Or, less opaquely, an invertible structure-preserving map (in the context of abstract algebra). When I read about "isomorphic JavaScript" as, essentially, views rendered with the same code on the client or server (and yet a separate API), I can't help but think "You keep using that word. I do not think it means what you think it means." Perhaps "symmetric JavaScript" would be better? But then the API is still an asymmetry...
- deleted 12y ago[deleted]
- thirdtruck 12y agoAgreed. The software doesn't strike me as really symmetrical or isomorphic. Perhaps a whole different metaphor is in order, assuming the idea is even concrete enough to warrant a short label in the first place. Not all labels need to be (or can be) reduced to a single word.
- mambodog 12y agoBasically, they can leverage the same code on the server and in the browser. Google 'isomorphic javascript'.
- vesparny84 12y agoHi, here is Morpheus creator. Isomorphic means an application able to share the same state between client/server, and render static html on the first load for attaching to the DOM Javascript behaviors once the DOM is available.
- duaneb 12y agoThat's an awfully strange way of putting it, I would just call it "cross-platform library". Isomorphism usually has the constraints of full inversion—this seems to imply you can render it on the server and serve it from the browser, and that's not being fulfilled at all. It's not even clear how anything would, as browsers are not typically set up to serve. It's also misleading to people who use the term outside of node servers. I strongly recommend using "fully shared state" or "client-server application" or something to not imply anything more than DRY logic in javascript across the state of the blog. Otherwise it devalues both your work (doesn't fulfill people's expectations of isomorphism) and the word (it no longer has any meaning). EDIT: To put it another way, I would expect a server to NOT BE NECESSARY for the client to work, just like clients aren't necessary for the server to function correctly.
- vesparny84 12y agoThe server is needed for serving responses to api calls when the user navigates pages. If you don't have server, you won't be able to have a SPA, but just a static generated website.
- duaneb 12y agoExactly, so it's not isomorphic. An isomorphic application wouldn't depend on its inverse to work.
- vesparny84 12y agoIsomorphic means corresponding or similar in form and relations, not independently of each other.
- chubot 12y agoThis is the second time I've seen the word "isomorphic" used like this. https://news.ycombinator.com/item?id=8238239 https://news.ycombinator.com/item?id=8238239 Not trying to be a snob, but this usage is annoying. I use and like JavaScript, unlike other math snobs :)
- mambodog 12y agoI had a similar idea a while ago[1], the main ideas being: - to use Postgres JSON columns for storing documents (rather than the typical CMS approach of a complex EAV/table-per-field structure), and - to use React components for rendering the public-facing content views, which could then also be used for inline editing or a live split preview/editor – like a markdown editor, but capable of turning arbitrary fields of input into arbitrary output - embeddable content types/entities which know how to render themselves - live collaborative editing 1. https://github.com/jsdf/cosmos https://github.com/jsdf/cosmos
- bonif 12y agoPlease, just stop using isomorph* with anything regarding javascript ! Really, please stop.
- dugmartin 12y agoI'm working on a React powered "isomorphic" static site generator now and I hope to make it public in the next few days. The approach I'm taking is that each page is a composed component using data files (json, yaml and js/coffee for dynamic data) to provide the state, js/coffee mixin files to provide the logic and js/jsx/coffee/cjsx files to render the body content. Its working now but I need to generate the documentation and built some better example sites.
- mjohn 12y agoSounds interesting, look forward to seeing it.