{% extends "base.html" %} {% block title %}Biblical Family Tree - KJV Study{% endblock %} {% block description %}Explore biblical genealogies from Adam to Jesus Christ.{% endblock %} {% block head %} {% endblock %} {% block content %} {% set female_names = ['eve', 'sarah', 'rebekah', 'rachel', 'leah', 'ruth', 'mary', 'tamar', 'rahab', 'bathsheba', 'dinah', 'keturah', 'hagar', 'zilpah', 'bilhah', 'jochebed', 'miriam', 'deborah', 'hannah', 'abigail', 'esther', 'naomi', 'naamah', 'milcah', 'adah', 'zillah', 'asenath', 'basemath'] %}

The Bible contains detailed genealogies that trace God's plan through specific family lines, culminating in the birth of Jesus Christ. This record spans from the creation of Adam through countless generations to the birth of our Lord.

Find a Person

Interactive Tree

Explore the genealogy with a collapsible text-based tree. Expand and collapse branches, search for any person, and navigate with keyboard shortcuts.

Messianic Lineage

View the direct paternal line from Adam to Jesus Christ in a vertical genealogy chart showing each generation.

{% if family_tree_data and generations %}

Overview

Total People: {{ family_tree_data|length }}
Total Generations: {{ generations|length }}
Longest Lived: Loading...
Most Children: Loading...
Most Siblings: Loading...
Close Family Marriages: Loading...

The Generations

{% for gen_num in generations.keys() | sort %}
{{ generations[gen_num]|length }} person{% if generations[gen_num]|length != 1 %}s{% endif %}
{% for person_id in generations[gen_num][:8] %} {{ family_tree_data[person_id].name }}{% if not loop.last %}, {% endif %} {% endfor %}{% if generations[gen_num]|length > 8 %}, +{{ generations[gen_num]|length - 8 }} more{% endif %}
{% endfor %}

Notable Figures

{% set notable = ["Adam", "Noah", "Abraham", "Isaac", "Jacob", "Joseph", "Moses", "David", "Solomon", "Jesus"] %} {% for person_id, person in family_tree_data.items() %} {% if person.name in notable %} {% set is_female = person.name|lower in female_names or (female_names | select('in', person.name|lower) | list | length > 0) %}
{{ person.name }} {% if person.kekule_number is not none %} Kekulé #{{ person.kekule_number }} {% endif %}
{% if person.generation %}Generation {{ person.generation }}{% endif %}{% if person.birth_year != "Unknown" %} · Born {{ person.birth_year }}{% endif %}{% if person.age_at_death != "Unknown" %} · Lived {{ person.age_at_death }}{% endif %}
{% if person.spouse %} Married to {{ person.spouse }}. {% endif %} {% if person.parents|length > 0 %} Child of {% for parent_id in person.parents %} {% if parent_id in family_tree_data %}{{ family_tree_data[parent_id].name }}{% if not loop.last %} and {% endif %}{% endif %} {% endfor %}. {% endif %} {% if person.children|length > 0 %} Father of {% for child_id in person.children[:3] %} {% if child_id in family_tree_data %}{{ family_tree_data[child_id].name }}{% if not loop.last %}, {% endif %}{% endif %} {% endfor %}{% if person.children|length > 3 %}, +{{ person.children|length - 3 }} more{% endif %}. {% endif %}
{% if person.verses %}
{% for verse in person.verses[:1] %} {% set ref_parts = verse.reference.split(' ') %} {% if ref_parts|length >= 2 %} {% set chapter_verse = ref_parts[-1] %} {% if ':' in chapter_verse %} {% set chapter = chapter_verse.split(':')[0] %} {% set verse_part = chapter_verse.split(':')[1] %} {% if '-' in verse_part %} {% set verse_num = verse_part.split('-')[0] %} {% else %} {% set verse_num = verse_part %} {% endif %} {% set book = ' '.join(ref_parts[:-1]) %} {{ verse.reference }} {% endif %} {% endif %} {% endfor %}
{% endif %}
{% endif %} {% endfor %}
{% else %}

Family tree data could not be loaded.

{% endif %}
{% endblock %}