Skip to content

Latest commit

 

History

History
93 lines (71 loc) · 4.63 KB

File metadata and controls

93 lines (71 loc) · 4.63 KB

P2HACKS2023 アピールシート

プロダクト名

おやじチョップ!!

コンセプト

チョップオヤジとクイズで冷え冷えバスター

対象ユーザ

おやじギャグを言いたいおやじとその周りの人

利用の流れ

おやじギャグボットと突っ込みマシンが空気を温めてくれてます.
おやじがおやじギャグを言っても,冷えることはありません.
でもおやじがギャグを言わないと突っ込みマシンがひんやりしてしまいます.
それももう大丈夫、なぜなら今は相棒のおやじギャグボットがいるから!
ただ,おやじギャグボットと突っ込みマシンの様子を見て,おやじはさみしい気持ちになりました.
おやじの気持ちが冷えないように,アプリもあるよ!

推しポイント

おやじギャグのセンスの高さ.おやじの顔面のあご落としの芸術性.

スクリーンショット(任意)

oyaji gag quiz demo

overall

システム構成図概要

Videotogif

開発体制

役割分担

  • あとり(M1) : サーバサイドとクイズアプリ
  • こーき(M2) : つっこみの御手手と動作,御手手のAPI
  • しんご(M1) : おやじギャグの画像生成
  • りょう(M1) : 音声認識
  • はやと(B4) : おやじの顔面とあごを落とす処理

開発における工夫した点

  • ブランチ名
    • [feature/hotfix/refactor]/what-you-did
  • 基本的な命名規則はpythonの命名規則に準拠
対象 ルール
パッケージ 全小文字 なるべく短くアンダースコア非推奨 tqdm, requests ...
モジュール 全小文字 なるべく短くアンダースコア可 sys, os,...
クラス 最初大文字 + 大文字区切り MyFavoriteClass
例外 最初大文字 + 大文字区切り MyFuckingError
型変数 最初大文字 + 大文字区切り MyFavoriteType
メソッド 全小文字 + アンダースコア区切り my_favorite_method
関数 全小文字 + アンダースコア区切り my_favorite_funcion
変数 全小文字 + アンダースコア区切り my_favorite_instance
定数 全大文字 + アンダースコア区切り MY_FAVORITE_CONST
  • Monorepo管理しました.
    以下各ディレクトリの説明.
    • 3dprinter → 3Dプリンタで印刷する.stlファイルを管理
    • boke → おやじギャグを生成・発言させるファイルを管理
    • chop → 突っ込みを入れる御手手の処理・ラズパイのサーバファイルを管理
    • oyaji → 顎を落とす処理のファイルを管理
    • quiz → Flutterのアプリを作成するファイルを管理
    • tukkomi → 突っ込みを入れるおやじギャグの判定処理を管理

開発技術

利用したプログラミング言語

Python, Dart, Arduino言語

利用したフレームワーク・ライブラリ

Flutter: iOS,Androidに対応するため
Fast API: 要件がシンプルなAPIサーバだったことから軽量かつ広範に利用されているため
LangChain: OpenAIのAPIを利用するにあたってプロンプトなどを柔軟に設定しやすいため
Servo: 角度を指定した動きを実現するため

その他開発に使用したツール・サービス

Raspberry Pi 3B+: 触り慣れておりFastAPIとの連携がスムーズなため
Arduino Leonardo: サーボモータと圧力センサーの制御が容易になるため
3Dプリンタ: 高速にプロトタイプを作成するため
直流安定化電源: モーターを精密に制御するため
圧力センサ: チョップを検知するため
Fusion360: 3Dプリンタに対応したファイル形式を作成しやすいため
ChatGPT: 開発の効率を上げるため
OpenAI API: GPT-4を使うため
Google Speech to Text API: whisperよりも認識精度が高く,実装も容易だったため