Skip to content
forked from MGeurts/genealogy

Genealogy is a free and open-source family tree PHP application to record family members and their relationships, build with Laravel 11.

License

Notifications You must be signed in to change notification settings

LucVK/genealogy

Repository files navigation

Genealogy-logo

Genealogy

About this project

Genealogy is a free and open-source (family tree) application to record family members and their relationships, build with Laravel 10.

Genealogy-001a

Genealogy-001c

This application is build using :

Logic concept

  1. A person can have 1 biological father (1 person, based on father_id)

  2. A person can have 1 biological mother (1 person, based on mother_id)

  3. A person can have 1 set of parents, biological or not (1 couple of 2 people, based on parents_id)

  4. A person can have 0 to many biological children (n people, based on father_id/mother_id)

  5. A person can have 0 to many partners (n people), being part of 0 to many couples (opposite or same biological sex)

  6. A person can be part of a couple with the same partner multiple times (remarriage or reunite)

  7. A couple can have 0 to many children (based on parents_id as a couple or father_id/mother_id individually)

  8. A couple can be married or not, still together or separated in the meantime

Requirements

License

This project is open-sourced software licensed under the MIT license.

Demo

https://genealogy.kreaweb.be/

E-mail Password Purpose Role
[email protected] password to view team BRITISH ROYALS as team owner Administrator
[email protected] password to view team BRITISH ROYALS as manager Manager
[email protected] password to view team BRITISH ROYALS as editor Editor
[email protected] password to view team BRITISH ROYALS as normal member Member
[email protected] password to view options reserved for a developer, like the offcanvas menu and access to all persons in all teams Developer

Features

  • 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 for developer
  • Multiple image upload with possibility of watermarking

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

To do ...

  • GEDCOM import and export (help needed)

Installation

create a new project folder, cd into the folder

git clone https://github.com/MGeurts/genealogy.git .

cp .env.example .env

make the needed changes regarding name, url, database connection & mail server

composer install

php artisan key:generate

php artisan storage:link

php artisan migrate:fresh --seed

npm install & npm run build

php artisan serve or npm run dev

Contributing

Feel free to submit Issues (for bugs or suggestions) and Pull Requests.

Documentation

Visit the demo project to read the documentation.

Impressum

Basic idea (2017)

This application is based on an original idea by Nafies Luthfi. Thanks for your excellent work.

Design & Development (2024)

This Laravel application is designed and developed by kreaweb.be.

About

Genealogy is a free and open-source family tree PHP application to record family members and their relationships, build with Laravel 11.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 82.8%
  • Blade 16.8%
  • Other 0.4%