Q&Aを通じて自分を表現できるプロフィールサービス
hitoQ (ヒトキュー) は、用意された質問に答えたり、友達から質問を受け取ったりすることで、あなたの多面的な魅力を引き出すプロフィールを簡単に作成・共有できるサービスです。
従来のプロフィール項目だけでは伝わらない、あなたの価値観、好きなこと、ユニークな一面を、Q&A形式で楽しく表現してみませんか?
- Q&Aプロフィール: 豊富な質問テンプレートから選んで回答するだけで、あなただけのユニークなプロフィールが完成します。
- メッセージ機能: 他のユーザーに質問を送ったり、感想を伝えたりできます。
- リアクション機能: 気になる回答に「いいね」をしたり、コメントを送ってコミュニケーションできます。
- カスタマイズ: プロフィール項目を自由に追加・編集して、あなただけのオリジナルページを作成できます。
- X (Twitter) 認証: 安全なOAuth2.0認証で、簡単かつセキュアにログインできます。
hitoQ は、モダンでスケーラブルな技術スタックで構築されています。
| カテゴリ | フロントエンド | バックエンド |
|---|---|---|
| フレームワーク | SvelteKit Tailwind CSS |
FastAPI SQLAlchemy |
| 言語 | TypeScript | Python 3.11+ |
| パッケージ管理 | pnpm | uv |
| DB | - | PostgreSQL Alembic |
| テスト | Vitest | pytest |
| その他 | ESLint Prettier |
Sentry Ruff Mypy |
このプロジェクトはDockerを使用して、簡単に開発環境を構築できます。
-
リポジトリをクローン
git clone https://github.com/gengaret/hitoQ.git cd hitoQ -
環境変数の設定
.env.exampleをコピーして.envファイルを作成します。cp .env.example .env
次に、
.envファイルを開き、最低限以下の項目を設定してください。特にSECRET_KEYとSESSION_SECRET_KEYは必ずユニークな値に変更してください。# Application Security SECRET_KEY= # `openssl rand -hex 32` などで生成した強力なキーを設定 SESSION_SECRET_KEY= # `openssl rand -hex 32` などで生成した強力なキーを設定 # Twitter OAuth Configuration (Twitterログインを試す場合) TWITTER_CLIENT_ID=your_twitter_client_id TWITTER_CLIENT_SECRET=your_twitter_client_secret
-
Dockerコンテナを起動
以下のコマンドを実行して、すべてのサービスをビルドしてバックグラウンドで起動します。
docker-compose -f .devcontainer/docker-compose.yml up -d --build
初回起動時は、依存関係のダウンロードとビルドのため、数分かかることがあります。
コンテナが正常に起動したら、以下のURLにアクセスできます。
- フロントエンド: http://localhost:5173
- バックエンドAPI: http://localhost:8000
- APIドキュメント (Swagger UI): http://localhost:8000/docs
このプロジェクトは Apache License 2.0 の下で公開されています。
