Overview
このツールは、DenoのURL実行機能を活用したC++/CMakeプロジェクトジェネレータです。
URLを指定してdeno runするだけで、すぐに使えるC++プロジェクトが生成されます。
インストール不要
Denoさえあれば、URLから直接実行できます。ツールのインストールや設定は不要です。
すぐ使えるテンプレート
CMake、Denoビルドスクリプト、C++ソースファイルが揃った状態で生成されます。
型安全なビルドシステム
TypeScriptで書かれたビルドスクリプトにより、型安全なビルド自動化を実現します。
クロスプラットフォーム
Windows、macOS、Linuxで同じスクリプトが動作します。
Quick Start
Step 1: Denoをインストール
まだDenoをインストールしていない場合:
curl -fsSL https://deno.land/install.sh | sh
irm https://deno.land/install.ps1 | iex
Step 2: プロジェクトを生成
deno run --allow-read --allow-write --allow-run https://raw.githubusercontent.com/COx2/deno-advent-calender-2025/main/generator/generate.ts --name "MyProject" --author "Your Name" --with-git
Step 3: ビルド & 実行
cd myproject
deno task build
deno task test
出力例
====================
| MyProject Calculator |
====================
Version: 1.0.0
10 + 5 = 15
10 x 5 = 50
生成されるプロジェクト構造
myproject/
├── src/
│ ├── main.cpp # メインアプリケーション
│ ├── core/ # 静的ライブラリ (myproject_core)
│ │ ├── core.h
│ │ └── core.cpp
│ └── utils/ # 共有ライブラリ (myproject_utils)
│ ├── utils.h
│ └── utils.cpp
├── CMakeLists.txt # CMake設定
├── build.ts # メインビルドスクリプト
├── build.config.ts # ビルド設定
├── cmake-file-api.ts # CMake File API連携
├── cmake-types.ts # TypeScript型定義
├── deno.json # Denoタスク設定
└── .gitignore
なぜDenoを使うのか?
| 特徴 | 従来のシェルスクリプト | Deno + TypeScript |
|---|---|---|
| 型安全性 | なし | TypeScriptによる完全な型チェック |
| クロスプラットフォーム | BashスクリプトはWindowsで動かない | どのOSでも同じコード |
| 依存関係管理 | 手動で管理 | URLインポートで自動解決 |
| IDE サポート | 限定的 | VSCodeで完全サポート |
| セキュリティ | すべてのコマンドが実行可能 | 明示的なパーミッション |
使用技術
- Deno - セキュアなTypeScript/JavaScriptランタイム deno.land
- dax - Denoのクロスプラットフォームシェルツール jsr.io/@david/dax
- CMake - クロスプラットフォームビルドシステム cmake.org
- CMake File API - ビルド情報のプログラマティックなアクセス Documentation