Table of Contents
1. Genealogy - Introduction
Genealogy is a free and open-source family tree PHP application to record family members and their relationships, build with Laravel 11.
This application is build using :
a. Logic concept
- A person can have 1 biological father (1 person, based on father_id)
- A person can have 1 biological mother (1 person, based on mother_id)
- A person can have 1 set of parents, biological or not (1 couple of 2 people, based on parents_id)
- A person can have 0 to many biological children (n people, based on father_id/mother_id)
- A person can have 0 to many partners (n people), being part of 0 to many couples (opposite or same biological sex)
- A person can be part of a couple with the same partner multiple times (remarriage or reunite)
- A couple can have 0 to many children (based on parents_id as a couple or father_id/mother_id individually)
- A couple can be married or not, still together or separated in the meantime
b. Requirements
- At least PHP 8.2
- At least MySQL 8.0.1 or MariaDB 10.2.2 or an equivalent database, supporting Recursive Common Table Expressions.
b. License
Open source under MIT license.
2. Genealogy - Demo
3. Genealogy - Features
a. Default
- Light/Dark/System theme
- Fully responsive
- Multi-language, English and Dutch already implemented, language setting saved in authenticated users profile
- Multi-tenancy by Jetstream Teams
- Security through Jetstream Teams Roles & Permissions, 2FA & API can be enabled
- Offcanvas menu
- Image upload with possibility of watermarking
- Multiple documents upload
b. Special features
This application has a built-in Backup Manager :
- Backups can be initiated and managed manually
- Backups can be scheludeld by issuing a cron job on your development or production server
- An e-mail will be send after each backup
This application has a built-in Log Viewer showing :
- INFO : All scheduled backups
- DEBUG : All executed database queries, but only in local development mode
- WARNING : All detected N+1 queries, but only in local development mode
- ERROR : All detected errors
This application has a built-in User logging :
- User statistics by country of origin
- User statistics by year/month/week/day
4. Genealogy - Impressum
a. Basic idea (2017)
This application is based on an original implementation by Nafies Luthfi.
Thanks for your excellent work.
b. Design & Development (2024)
This Laravel 10 application is designed and developed by kreaweb.be.
5. Genealogy - In the media
a. Filament Tables in Laravel: Livewire Genealogy Example
b. Laravel Package for HasManyMerged Relationship
c. Laravel Super Admin: 2 Ways to Override Roles and Permissions
d. Laravel Filament : Free Open-Source project on GitHub
e. Laravel Filament - Vertically align table columns
f. Laravel Filament - IconColumn on non boolean fields
Visit https://www.youtube.com/@LaravelDaily for daily Laravel content.
Visit https://www.youtube.com/@FilamentDaily for daily Filament content.