React + FastAPI + Docker + MongoDB を使った FARM テンプレート

Web

概要

このリポジトリは「FARM(FastAPI、React、MongoDB)」スタックのテンプレートです。バックエンドに FastAPI(Python >= 3.12 想定)、フロントエンドに Vite + React(TypeScript)、データベースに MongoDB を採用し、Docker Compose で開発・本番環境の立ち上げを簡単に行える構成が用意されています。ユーザー管理や OAuth2 ベースのシングルサインオン(SSO)機能、FastAPI の自動生成 OpenAPI ドキュメントなどの実装例が含まれ、フルスタック開発の出発点として実用的です。(約300字)

GitHub

リポジトリの統計情報

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

主な特徴

  • FastAPI(Python)+React(Vite/TypeScript)+MongoDB のフルスタックテンプレート
  • Docker Compose による開発/本番向けの環境定義を提供
  • OAuth2 ベースの SSO と基本的なユーザー管理の実装例
  • FastAPI の OpenAPI(Swagger)ドキュメントをそのまま利用可能

技術的なポイント

このテンプレートの魅力は、実際に運用可能なフルスタック構成を最小限の手間で立ち上げられる点です。バックエンドは FastAPI を採用しており、自動生成される OpenAPI/Swagger UI によって API の確認やクライアント生成が容易です。認証には OAuth2(SSO)の仕組みが組み込まれており、ユーザー管理の基本フロー(登録、認証、トークン発行など)を参考実装として提供しています。フロントエンドは Vite ベースの React(TypeScript)で構成され、ホットリロードや高速ビルドが可能なため開発体験が向上します。データ層は MongoDB を利用しており、スキーマフレキシビリティを活かした設計が行えます。Docker Compose は開発用/本番用で分離されているケースが多く、各サービス(backend、frontend、mongodb)をコンテナ化して依存関係を明確に管理します。また、.pre-commit-config.yaml による前処理(フォーマッタやリンタ)の導入や、.env を利用した環境変数管理によりチーム開発での安定性が高められています。TypeScript をフロントエンドのメイン言語として採用しているため、型安全性があり規模拡大にも耐えうる基盤です。(約700字)

プロジェクトの構成

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

  • .env: file
  • .github: dir
  • .gitignore: file
  • .pre-commit-config.yaml: file
  • LICENSE: file

…他 5 ファイル

(補足)リポジトリの README から分かる通り、プロジェクトは backend ディレクトリに FastAPI サーバ、frontend に React アプリが置かれる典型的な構成です。Dockerfile / docker-compose.yml によってローカルや本番での起動が自動化され、環境変数で接続先 MongoDB や認証設定を切り替えられる想定です。

まとめ

実用的な FARM スタックのテンプレートで、開発開始の手間を大きく削減できます。(約50字)

リポジトリ情報:

READMEの抜粋:

Fastapi-React-Mongodb-Docker

License python_version

This is a template application for a FARM stack. FARM stands for FastAPI, React, MongoDB.

Features

Clean design with minimal dependencies

Basic user management with OAuth2 SSO

Project structure

The project is composed of :

  • a backend API server built with FastAPI located in the backend dir.
  • a…