地上管制ステーション 2025-26 (GCS-2025-26)

Web

概要

Ground Control Station 2025-26(GCS-2025-26)は、NGCPプロジェクトのユーザーインターフェイスとデータベースサブチームが共同で開発する、捜索救助ミッション向けのクロスプラットフォーム管理ダッシュボードです。本プロジェクトはTauriを用いてWeb技術(Vue 3)ベースのフロントエンドをネイティブアプリ化し、Bunで依存関係と開発ワークフローを高速化します。バックエンドではPostgreSQLとRabbitMQを使用し、ミッションデータの永続化とコンポーネント間のメッセージングを確保。開発時はDocker等でPostgres/RabbitMQを起動してアプリを動作させることが想定されています(約300字)。

GitHub

リポジトリの統計情報

  • スター数: 2
  • フォーク数: 0
  • ウォッチャー数: 2
  • コミット数: 30
  • ファイル数: 22
  • メインの言語: Vue

主な特徴

  • Tauri + Vue 3 による軽量なクロスプラットフォームデスクトップアプリケーション
  • Bunを使った高速な依存管理と開発サイクル
  • PostgreSQL(データ永続化)とRabbitMQ(メッセージング)の組み合わせでリアルタイム性と信頼性を確保
  • UIチームとDBチームの役割分離を想定した構成・開発フロー

技術的なポイント

このプロジェクトはフロントエンドをWeb技術(Vue 3)で実装しつつ、Tauriを介してネイティブアプリとして配布するアーキテクチャを採用しています。TauriはElectronより軽量で、アプリ本体のランタイム部分をRustネイティブバイナリに任せるため、バイナリサイズやメモリ使用量の面で有利です。フロントエンドはVue 3の利点(Composition APIや高速なレンダリング)を活かし、デスクトップ固有の機能はTauriのAPI経由でファイル操作やネイティブ通知などにアクセスする想定です。

開発環境にはBunを採用しており、従来のnpm/nodeベースよりもパッケージ解決やスクリプト実行が高速になるため、インストールや起動時間の短縮、軽快なホットリロードが期待できます。READMEにある通り、PostgreSQLとRabbitMQは外部(Dockerコンテナ等)で起動しておく必要があり、バックエンドとの結合テストやローカル実行はコンテナベースの環境構築が前提です。

データ面ではPostgreSQLが主要な永続層として機能し、ミッションログや機器状態、ユーザー設定などを格納します。一方でRabbitMQはコンポーネント間の非同期メッセージングに使われ、ドローンやセンサーなどのテレメトリやコマンド伝達、イベント駆動処理の仲介役となります。これによりフロントエンドはリアルタイムイベントに応じてUIを更新しつつ、保守的にデータをDBへ書き込める設計が取りやすくなります。

コード品質面ではESLint・Prettier等の設定ファイルが含まれており、一貫したスタイルと自動整形による可読性・メンテナンス性の向上が図られています。また、.envや.vscodeの設定が用意されている点から、開発者向けのローカル環境整備が想定されており、チーム開発での再現性を確保しています。最終的な配布はTauriのバンドル機能で各プラットフォーム向けにビルドされる想定で、セキュリティ面ではTauriのIPC制御や最小権限でのネイティブ機能利用がポイントになります(約700字)。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .env: file
  • .eslintrc.cjs: file
  • .gitignore: file
  • .prettierrc: file
  • .vscode: dir

…他 17 ファイル

まとめ

Tauri + Bun + Vueで軽量かつ高速なクロスプラットフォームGCSを目指す実践的なリポジトリ。

リポジトリ情報:

READMEの抜粋:

Ground Control Station 2025-26

This repository involves the User Interface and Database subteams for the NGCP project.

Getting Started

This project uses Tauri, Bun, and Vue 3.

Installation

Clone the repository.

git clone https://github.com/ngcp-project/gcs-user-interface.git

Install dependencies.

bun install

Run the application.

  • NOTE: Ensure PostGreSQL and RabbitMQ images need to be running, …