Repolode
MGeurts

MGeurts/genealogy

Laravelを基盤としたセルフホスト型の家系図Webアプリ。家族の記録や関係性の管理、GEDCOMのインポート・エクスポートに対応。

代替できる製品:AncestryMyHeritage

スター
370
フォーク
116
未解決の Issue
0
最終コミット
23 時間前

これは何?

Genealogyは、家族やその間の関係を記録するためのPHP製Webアプリケーションです。各人物には実父・実母、親のグループ、パートナー、子どもを紐づけられ、カップルには婚姻または別離の状態を設定できます。先祖・子孫の系図は、MySQLまたはMariaDBの再帰的な共通テーブル式(CTE)を使って生成されるため、大規模な系図を作成する際のN+1クエリを回避できます。

アプリはLaravel Jetstreamを基盤とするチームを中心に構成されており、オーナー、マネージャー、エディター、メンバーの各ロールによって、人物やカップルの作成・編集・閲覧のみを許可するユーザーを管理できます。画像やドキュメントのアップロード(任意の透かし追加に対応)、イベントのタイムライン、毎日の定期バックアップを設定できるバックアップマネージャー、遅いクエリやエラーを確認できるログビューアーを備えています。2要素認証とAPIは有効化できます。

GEDCOMのインポート・エクスポート機能も含まれていますが、現在も開発中で、GEDCOM 7への完全対応はまだ完了していないとプロジェクトで説明されています。インターフェースは簡体字中国語を含む11言語に対応しており、技術スタックにはLivewire、Alpine.js、Tailwind CSS、Filamentのテーブルビルダーを使用しています。

主な機能

  • 01人物と、親・パートナー・子どもとの関係を記録
  • 02再帰的なSQLクエリで先祖・子孫の系図を生成
  • 03オーナー、マネージャー、エディター、メンバーのロールを備えたチームベースのマルチテナント機能
  • 04任意で透かしを追加できる画像・ドキュメントのアップロード
  • 05メール通知に対応した、定期・手動のデータベースバックアップ
  • 06開発中の初期段階のGEDCOMインポート・エクスポート機能

ユースケース

  • 親族と共有しながら家族史を記録する
  • 研究目的で王族や著名人の家系をたどる
  • 自分のサーバーで非公開の家系図をセルフホストする
  • Jetstreamのチーム機能やLivewireを使ったLaravelアプリの構成を学ぶ

クイックスタート

  1. 1

    GitHub Container Registry から本番用 Docker イメージをプルします

    docker pull ghcr.io/mgeurts/genealogy:latest
  2. 2

    README-DOCKER.md の Docker セットアップガイドに従って、アプリを設定して起動します

使う前に知っておきたいこと

  • GEDCOM のインポートとエクスポートはまだ未完成で、現在も開発中です。
  • 再帰 CTE に対応した MySQL 8.0.1+ または MariaDB 10.2.2+ が必要です。
  • 本番環境では HTTPS が必要です。

収録されている特集

トピック

#family-tree#genealogy#laravel#php#self-hosted#gedcom#recursive-cte#ancestry#common-table-expression#genealogy-application

よくある質問

genealogy とは?
Laravelを基盤としたセルフホスト型の家系図Webアプリ。家族の記録や関係性の管理、GEDCOMのインポート・エクスポートに対応。 Genealogyは、家族やその間の関係を記録するためのPHP製Webアプリケーションです。各人物には実父・実母、親のグループ、パートナー、子どもを紐づけられ、カップルには婚姻または別離の状態を設定できます。先祖・子孫の系図は、MySQLまたはMariaDBの再帰的な共通テーブル式(CTE)を使って生成されるため、大規模な系図を作成する際のN+1クエリを回避できます。
genealogy は無料で使えますか?ライセンスは?
genealogy は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
genealogy は今もメンテナンスされていますか?
活発にメンテナンス中。genealogy の最終コミットは 2026年11月6日 です。
genealogy は何に使えますか?
親族と共有しながら家族史を記録する 研究目的で王族や著名人の家系をたどる 自分のサーバーで非公開の家系図をセルフホストする Jetstreamのチーム機能やLivewireを使ったLaravelアプリの構成を学ぶ
genealogy のインストール方法は?
GitHub Container Registry から本番用 Docker イメージをプルします: docker pull ghcr.io/mgeurts/genealogy:latest README-DOCKER.md の Docker セットアップガイドに従って、アプリを設定して起動します
genealogy はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/MGeurts/genealogy

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト