@story-telling-reporter/cms-core
Version:
43 lines (27 loc) • 2.26 kB
Markdown
# [@mirrormedia/lilith-core](https://www.npmjs.com/package/@mirrormedia/lilith-core) · 
### Installation
`yarn install`
### Development
`@mirrormedia/lilith-core` 被 `@mirrormedia/lilith-(vision|mesh|editools)` 所依賴,因此,在開發 lilith-core 的程式碼時,
可以透過 lilith-(vision|mesh|editools) 來協助開發。
舉 lilith-editools 為例,
我們可以先起 lilith-editools server,接著修改 lilith-core 的程式碼,
修改到一個階段,想要測試,便在 `packages/core` 底下跑 `yarn build`,產生新的 transpiled 程式碼。
因為 lilith-editools 和 lilith-core 都在 monorepo 中,yarn workspaces 會為 lilith-core pkg 建立 soft link,
將 `node_modules/@mirrormedia/lilith-core` 指到 `packages/core`,所以 `yarn build` 產生的新的程式碼,
可以不需要透過 npm publish 和 yarn install 的方式,立即讓 lilith-editools 使用。
等到確定程式碼修改完畢後,我們再將最新的程式碼上傳(`npm publish`)到 npm registry 去,讓 lilith-editools 的 CI/CD 可以下載到最新的版本。
#### After v1.2.6
使用 `@mirrormedia/lilith-core` 的 richTextEditor 時,需要帶入 `website` 的參數以便 `@mirrormedia/lilith-core` 引用的對應網站的 draft-editor 版本,
在新增 keystone 的情況下,可以暫時填入既有的 `website` 值先快速建立,日後若有需求可以再另外新增 website 在 `@mirrormedia/lilith-core`, `@mirrormedia/lilith-draft-editor` 和 `@mirrormedia/lilith-renderer` 中。
### Build
`yarn build`
### Publish
`npm run publish`
在 publish 前,請根據 conventional commits 的規範,將 package.json#version 升版。
### Notable Details
#### For those files under `views/` folder, we transpile them specifically.
For those files under `views/` folder, we transpile them by babel according to different configuation.
The specific babel configuration is `.views.babelrc.js`.
In `.views.babelrc.js`, we tell babel not to transpile `import` and `export` es6 codes into commonJS codes.
The Keystone server won't start server well if those files under `views/` are transpiled into commonJS codes.