C++/Vue.js/Webpack/FireBaseで自作のナレッジベースを作った。

C++/Vue.js/Webpack/FireBaseで自作のナレッジベースを作ってみた。

 

github.com

 

バックエンドをcpp-httplibを使ってる。

 

github.com

 

といってもC++側での処理は、assetsディレクトリ以下のindex.htmlを展開させるようにルーティングしてるだけ。

なので、C++のコード自体は非常に短い。

 

で、フロントエンドを最近はまってるVue.jsで書いた。

github.com

 

assets以下にwebpack.config.jsとpackage.jsonを作成してyarn経由でライブラリを追加してコーディングしていった。

おおよその手順は、こちらでまとめたものと同じ。

qiita.com

 

ただ、上記の記事で使ったLunaってWebフレームワークと違い、cpp-httplibはSPA風にルーティングを処理させるのができなかった(ほんとはできるかもしれない・・・・・・)

 

なので、Bootstrapのtabsを使い、タブで画面切り替えを実装。

getbootstrap.com

 

最後に、ナレッジを保存するDBとかの処理をどうしようかと考えてたんだけど

firebase.google.com

そういや、FireBase使ったことないなと思い、FireBaseでやってみた。

 

キーとかをソースに直接書きたくなかったのでdotenv-webpackを使い、環境変数で処理。

github.com

 

あとは、assets/components/web/tabs/index.vueでFireBaseのキーを使う。

github.com

 

残りのフロント周りのデザインとかはBootstrapでよしなにさせた。

 

 

 

今後はPWA対応とかを勧めていこうかと思う