LoginSignup
1
0

More than 5 years have passed since last update.

CueというWeb開発をよしなにするオレオレフレームワークを作った話

Posted at

はじめに

「C++/Vue.jsでWeb開発とかできるようになってきたけど、もうちょい楽になりたいなぁ」と思い、オレオレフレームワークなものを作ってみました

作ったもの

Cueというものを作りました

実装にあたってはC++17から導入されたfilesystemcpp-httplibを使用しています

使い方

Railsなどのようにコマンドライン上でcueコマンドを実行することで動作します

たとえば、新しいプロジェクトを作成する場合は、

cue new hogehoge

と実行することでhogehogeというプロジェクトが作成されます

CRUDのテンプレートを作成したい場合は、

cue scaffold fugafuga

と実行することでfugafugaという名前のディレクトリが作成され、fugafuga以下にCRUDのテンプレートが生成されます

Vueコンポーネントを複数作成する場合には、

cue foo bar bazz 

とすることで fooディレクトリ以下に barbazzが作成されます

ヘルプなどは cue helpで表示されます

やったこと

cpp-httplibとVue.jsのひな型を作成

まず、cpp-httplibVue.jsでのひな型を作成しました

作成に関しては別件で書いていたこの以下の記事たちを参考にしました

IronでのSPAチュートリアル

C++/Vue.js/WebpackでSPAサンプルを作った話

filesystemでのテンプレートコピー

cppreference.comを参考に以下のように実装

main.cpp
#include <filesystem>
#include <string>

namespace fs = std::filesystem;

int main(int argc, char* argv[]) {

    std::string argv = argv[1];

    fs::path path = argv;

    fs::copy("cue", path);

    return 0;
}

で、以下のように実行するとコマンドライン引数に渡された名前のディレクトリへと作成されたテンプレートをコピーする

cue hogehoge

ちなみに、cueディレクトリ内にはC++/Vue.jsで作成したテンプレートが詰まっています

作ってみて

今のところは以前より楽ができているのでつくってよかったなと思う

参考

cppreference.com

IronでのSPAチュートリアル

C++/Vue.js/WebpackでSPAサンプルを作った話

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0