[ClojureScript] Re: Isomorphic ClojureScript

2015-05-20 Thread Zubair Quraishi
On Tuesday, May 19, 2015 at 7:17:10 PM UTC+2, marc fawzi wrote: Is anyone out there working on a pattern of framework for isomorphic ClojureScript? My sense so far is that most are happy running Clojure on back end and ClojureScript on front end. But Matt's recent post made me think of

[ClojureScript] OnsenUI (or Ionic) with ClojureScript/Reagent

2015-05-20 Thread Henrik Mohr
Hi there! I've started building a hybrid mobile app using Cordova, ClojureScript and React via Reagent. Most parts work perfectly. To make my mobile UI speedy and nice to look at, I've tried using OnsenUI (http://onsen.io). OnsenUI uses web components, just as Ionic does. So I have to call

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Matthew Phillips
Yes, if I wasn't clear, when I say server side rendering I do mean server side rendering of SPA (Om, Reagent) applications. If we're just talking about old-school server-rendered sites I would agree Clojure would be the way to go. The interesting thing about using ClojureScript is that you can

Re: [ClojureScript] Using a state machine to design/program UI ?

2015-05-20 Thread Jamie Orchard-Hays
For local state, I mean state that has to do only with the component itself, nothing to do with the data itself. For example, if I have a component that can switch between editing/reading states, I can't imagine why I would want this information stored outside of the component itself. Jamie

Re: [ClojureScript] Using a state machine to design/program UI ?

2015-05-20 Thread Khalid Jebbari
You would want it if you want to inspect/debug/transmit/replay the whole the state of your application. Having nothing encapsulated and everything in a global state permits this. Khalid aka DjebbZ @Dj3bbZ On Wed, May 20, 2015 at 3:51 PM, Jamie Orchard-Hays jamie...@gmail.com wrote: For local

Re: [ClojureScript] Using a state machine to design/program UI ?

2015-05-20 Thread Jamie Orchard-Hays
Thanks, Khalid. Jamie On May 20, 2015, at 9:58 AM, Khalid Jebbari khalid.jebb...@gmail.com wrote: You would want it if you want to inspect/debug/transmit/replay the whole the state of your application. Having nothing encapsulated and everything in a global state permits this. Khalid aka

Re: [ClojureScript] reagent-nodejs feedback request

2015-05-20 Thread Marc Fawzi
Matt, I forgot to mention, if SEO is the priority and you enjoy building SPAs in Reagent, Google has had a way (for many years now) to crawl client-side JS generated pages where you use #! in your urls (or use the fragment meta tag) to tell google that to ask the server for the server-rendered

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Marc Fawzi
Use CLJX/CLJC to split what goes to the JVM and what goes to the browser from the same source. Nice, and you get Clojure everywhere I love this idea in principle but seeing how confusing reader conditionals can be to a beginner I would personally stick with the Om/Reagent isomorphic path

Re: [ClojureScript] Using a state machine to design/program UI ?

2015-05-20 Thread Marc Fawzi
Yup, well captured. On Wed, May 20, 2015 at 6:58 AM, Khalid Jebbari khalid.jebb...@gmail.com wrote: You would want it if you want to inspect/debug/transmit/replay the whole the state of your application. Having nothing encapsulated and everything in a global state permits this. Khalid aka

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Jamie Orchard-Hays
Didn't read like a rant, but rather as some well thought-out points. :) On May 19, 2015, at 6:00 PM, Matt Ho matt...@gmail.com wrote: Let me give a slightly different take on it. My sense is we got to SPAs because the industry wanted more responsive and more dynamic web sites. That said,

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread David Nolen
On Wed, May 20, 2015 at 9:56 AM, Khalid Jebbari khalid.jebb...@gmail.com wrote: Something lacking with CLJX/CLJC AFAIK is that you can't target *both* Node.js and the browser from the same Clojure code base. Not entirely true. The the cljs.core/*target* dynamic var will be bound to the

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Khalid Jebbari
@David, I didn't know this feature. Good to know ! @Marc : it's a matter of trade-offs. Node.js and the JVM are very different platforms. If developer convenience is very important, isomorphic the node.js way with Nashorn or Node could be a good thing. Depends on the developers :) Khalid aka

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Marc Fawzi
@khalid true re: trade offs... also, good to diversify thinking in just one tech all day can be a path to ideological stuckness ... :) On Wed, May 20, 2015 at 7:11 AM, Khalid Jebbari khalid.jebb...@gmail.com wrote: @David, I didn't know this feature. Good to know ! @Marc : it's a matter

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Khalid Jebbari
That's right ! Ideology leads nowhere. And we'll all have to write javascript (for browsers) one way or the other anyway :) Le 20 mai 2015 à 16:25, Marc Fawzi marc.fa...@gmail.com a écrit : @khalid true re: trade offs... also, good to diversify thinking in just one tech all day can be

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Daniel Kersten
Sounds great. Definitely looking forward to blog post when you get to it! On Wed, 20 May 2015 17:59 Dustin Getz dustin.g...@gmail.com wrote: Is anyone out there working on a pattern of framework for isomorphic ClojureScript? Yes, I am, it's basically a shell Clojure/Pedestal app that calls

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Dustin Getz
Is anyone out there working on a pattern of framework for isomorphic ClojureScript? Yes, I am, it's basically a shell Clojure/Pedestal app that calls into a specific ClojureScript interface where the entire application is defined as a single page app, it prefetches the initial ajax

Re: [ClojureScript] reagent-nodejs feedback request

2015-05-20 Thread Marc Fawzi
So if SEO is the overriding priority then u could have a proxy in front that looks for the _escaped_fragment thing in the get request and route all those to a bot-dedicated nodejs/express app that serves pre-rendered page content. This is based on the Google scheme. Sent from my iPhone On

Re: [ClojureScript] reagent-nodejs feedback request

2015-05-20 Thread Matthew Phillips
For me SEO isn't the priority, user experience is. SSR eliminates the flash of no-content you traditionally get from SPAs. On Wed, May 20, 2015, at 11:55 AM, Marc Fawzi wrote: So if SEO is the overriding priority then u could have a proxy in front that looks for the _escaped_fragment thing in

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Marc Fawzi
Hey Dustin, That's awesome. I had used some of your stuff before so familiar with the quality of your work! What's the github url? :) On Wed, May 20, 2015 at 9:59 AM, Dustin Getz dustin.g...@gmail.com wrote: Is anyone out there working on a pattern of framework for isomorphic ClojureScript?

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Marc Fawzi
Ok, please do! Thank you. On Wed, May 20, 2015 at 11:44 AM, Dustin Getz dustin.g...@gmail.com wrote: Marc, Unfortunately I wrote this for a client so it's not open source yet. I'll post here when I get around to it. -- Note that posts from new members are moderated - please be patient with

Re: [ClojureScript] Isomorphic ClojureScript

2015-05-20 Thread Dustin Getz
Marc, Unfortunately I wrote this for a client so it's not open source yet. I'll post here when I get around to it. -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups

Re: [ClojureScript] reagent-nodejs feedback request

2015-05-20 Thread Marc Fawzi
So Matt's idea of what he'd like to do has finally sunk in. Isomorphism (or maybe we should call it automorphism?) together with Google's bot ability to explicitly request server-rendered pages from SPA URLs (during crawling) means that you can serve pre-rendered pages to the bot from one