Multiple ClojureScript (sub)projects with shared CLJS libraries per single clojure project

2012-03-30 Thread Tom Krestle
Hi, The project I envision would consist of multiple completely independent conglomerates of CLJS scripts compiled into several separate final production .js with one single Clojure server. The reason for that is: 1. Smaller size of .js to load at each stage 2. Each time a browser transitions fr

Re: Multiple ClojureScript (sub)projects with shared CLJS libraries per single clojure project

2012-03-30 Thread Stuart Sierra
At Relevance we are working on a project with just this structure. The project has a custom build script that produces mulitple advanced-mode-compiled .js files. We have not developed anything that would be generally reusable, but it's not hard to create custom code to do this. The ClojureScrip

Re: Multiple ClojureScript (sub)projects with shared CLJS libraries per single clojure project

2012-03-30 Thread Mark Rathwell
I haven't tried yet, but lein-cljsbuild [1] is meant to support multiple builds, and I believe something like the below config would be what you are looking for: :cljsbuild { :builds [{:source-path "src/cljs/project1" :compiler {:output-to "resources/public/cljs/script1.js"

Re: Multiple ClojureScript (sub)projects with shared CLJS libraries per single clojure project

2012-03-30 Thread Evan Mezeske
I can confirm Mark Rathewell's note; that's part of what lein-cljsbuild is meant to do. With his configuration, the script1.js and script2.js files would both be built, and each would only contain the code from the project1 or project2 directories, respectively (unless they require code from ou

Re: Multiple ClojureScript (sub)projects with shared CLJS libraries per single clojure project

2012-05-13 Thread Robert Stuttaford
I'm planning a base app which loads and unloads cljs mini-apps into the main app, one at a time. The problem domain is such that there are simply too many mini-apps to load upfront. Is lein-cljs build clever enough to generate exports and externs so that these modules can talk to each other? Fo