bizualのCMSを作成
何を作ったか
既存のCMSでは
- ディレクターが記事を発注
- 外注のライターが受注・執筆・提出
- ディレクターが記事を差し戻しor受理
- 記事を公開
という流れだったが,いずれの段階でもGoogleSpreadSheetが使用されていた.この時点で頭が頭痛で痛くなったわけで,ディレクターの技量に依存せずに円滑な作業を行えないかと感じた.そこで.
- なるべくSpreadSheetは使用しない
- 以下の作業がCMS内で完結する
- 発注
- 受注
- 執筆
- 検品
- 差し戻し
- 受理
- 公開
- 修正 etc...
を満たす物を作れないかと考え始めた.
使用しているもの
- front - languages
- typescript
- sass
- pug
- front - frameworks
- react.js
- react-router
- react-redux
- ant design
- front - bundler
- webpack
- front - design pattern
- atomic design
- DDD(当分エンジニアは1人なのでオーバースペックだと感じたが,勉強も兼ねて採用)
- infra
- firebase!!!111(インフラわからないのでGoogleに任せた.本当に便利.ありがとうGoogle)
- hosting
- netlify
- others
- draft.js(note.muやwantedlyで用いられている,リアルタイムで入力やスタイルが反映されるテキストエディタ)
- 正確にはdraft.jsを強化したmegadraft.jsというもの
開発スケジュール
キックオフMTGを含めて15時間ほど意識のすり合わせを行った.
最低限の機能として
- 発注
- 受注
- 執筆
- 検品
- 差し戻し
- 受理
を含めた物を設計に20時間,開発に30時間ほどかけて作成.特にパブリックな物ではないため,スタイルはそこまで凝っておらず,最低限.
難しかったこと
1つのCMSでディレクターとライターの2役職に対応する必要があったため,state管理をちょっぴり悩んだ(結局,ログインした際に役職読み込んで完全に違う物を参照できるようにした.当たり前).
draft.jsを初めて触り,note.muやwantedlyなどの開発者を崇めたくなった.