Skip to content

tuatmcc/room-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

room-manager

mcc_room_managerの後継プロジェクトです。 全体的にモダンかつ堅牢な動作・設計を目指して開発しています。

プロジェクト構成

  • crates/app: NFCカードのスキャンとスキャン結果をAPIサーバーに送信するアプリケーション(Raspberry Pi)
  • crates/pasori: Pasori NFCリーダーライブラリ
  • packages/api: Discordコマンドのハンドリング・API・データベースの管理を行うAPIサーバー(Cloudflare Workers)

環境構築

前提条件

以下のツールが必要です:

  • mise: Rust、Node.js、pnpmの管理用

セットアップ手順

  1. リポジトリのクローン
git clone https://github.com/tuatmcc/room-manager.git
cd room-manager
  1. miseを使用して環境を整える
mise install
  1. 依存関係のインストール
# Rustの依存関係
cargo fetch

# Node.jsの依存関係
pnpm install
  1. 環境変数の設定

.envファイルをプロジェクトのルートディレクトリに作成し、必要な環境変数を設定してください。(.env.exampleを参考にしてください) 同様に、packages/api/.dev.varsファイルも作成し、必要な環境変数を設定してください。

ビルドと実行

開発環境での実行

# Rustアプリケーションの実行(開発モード)
cargo run -p app

# APIサーバーの開発実行
cd packages/api
pnpm dev

リリースビルド

# Rustアプリケーションのリリースビルド
cargo build --release -p app

# 実行ファイルは target/release/app に生成されます

クロスコンパイル(Raspberry Piなど向け)

ARM系デバイス向けにクロスコンパイルする場合:

# 依存ツールのインストール(最新版が必要なので注意)
cargo install cross --git https://github.com/cross-rs/cross

# aarch64向けビルド
cross build --release

# 実行ファイルは target/aarch64-unknown-linux-gnu/release/app に生成されます

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 5

Languages