descjop
是一個 lein
的模板,使用這個模板生成的項目包括了符合要求的目錄結構,以及完備的依賴。
能夠方便的開發基於 cljs/om
以及 electron
的桌面應用程序。html
使用很是簡單,只須要一句命令:npm
$> lein new descjop YOUR_APP_NAME +om // +om 是添加 om 支持
lein
會更據模板自動生成目錄結構,文件。json
. +-- README.md +-- app | +-- index.html // entry html file | +-- js | | +-- cljsbuild-main.js // compiled JavaScript | | +-- externs.js | | +-- main.js | +-- package.json // for Desktop app +-- package.json // for Compile +-- project.clj // compile settings desktop app +-- src | +-- NAMESPACE | +-- core.cljs // ClojureScript for Electron in here +-- src_front +--NAMESPACE_om直接使用官方的圖。很是清晰明瞭拉。app
使用命令:frontend
$> lein trampoline figwheel frontend
上面的命令能夠啓動一個 figwheel
.electron
figwheel
會監控 (watch) src_fontend
命名空間中文件的改動,並在每次修改時從新編譯,實時顯示到界面上。因此咱們的主要開發工做都是在 src_forntend
命名空間中完成的grunt
figwheel
的好。不用過是不會了解的。你們都去用用看吧。工具
當 figwheel
啓動以後,進程就在等待咱們的客戶端運行起來。事不宜遲,就讓咱們開始運行應用吧。ui
$> npm install -g grunt-cli #安裝 grunt-cli 命令行工具。固然裝過就不用裝了 $> npm install #安裝須要的 npm packages $> grunt download-electron # 下載 electron 的運行環境。
$ lein externs > app/js/externs.js
編譯下啓動須要的 cljs 文件命令行
$ lein cljsbuild once
運行嘍,走起!
$ ./electron/electron app
以上運行完以後就能夠看到窗口出現了,而且打印出了大大的 Hello OM