1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?