diff --git a/kjvstudy_org/routes/resources.py b/kjvstudy_org/routes/resources.py index aacb6c2..23a5b58 100644 --- a/kjvstudy_org/routes/resources.py +++ b/kjvstudy_org/routes/resources.py @@ -576,10 +576,14 @@ def miracles_page(request: Request): """Miracles of Jesus page.""" return templates.TemplateResponse( request, - "miracles.html", + "resource_index.html", { "books": get_books(), - "miracles_data": MIRACLES_DATA, + "resource_data": MIRACLES_DATA, + "page_title": "Miracles of Jesus", + "page_subtitle": "Signs and Wonders Manifesting Divine Authority", + "page_description": "Explore the miracles of Jesus Christ recorded in the Gospels - healings, nature miracles, exorcisms, and raisings from the dead.", + "base_url": "/miracles-of-jesus", "breadcrumbs": [ {"text": "Home", "url": "/"}, {"text": "Miracles of Jesus", "url": None} @@ -624,10 +628,14 @@ def prayers_page(request: Request): """Prayers of the Bible page.""" return templates.TemplateResponse( request, - "prayers.html", + "resource_index.html", { "books": get_books(), - "prayers_data": PRAYERS_DATA, + "resource_data": PRAYERS_DATA, + "page_title": "Prayers of the Bible", + "page_subtitle": "Sacred Conversations with the Almighty", + "page_description": "Explore the prayers recorded in Scripture - from the Psalms to the prayers of Jesus, Paul, and the early church.", + "base_url": "/prayers-of-the-bible", "breadcrumbs": [ {"text": "Home", "url": "/"}, {"text": "Prayers of the Bible", "url": None} @@ -672,10 +680,14 @@ def beatitudes_page(request: Request): """The Beatitudes page.""" return templates.TemplateResponse( request, - "beatitudes.html", + "resource_index.html", { "books": get_books(), - "beatitudes_data": BEATITUDES_DATA, + "resource_data": BEATITUDES_DATA, + "page_title": "The Beatitudes", + "page_subtitle": "The Blessings of the Kingdom", + "page_description": "Explore the Beatitudes from Jesus's Sermon on the Mount - the foundational blessings that describe the character of kingdom citizens.", + "base_url": "/beatitudes", "breadcrumbs": [ {"text": "Home", "url": "/"}, {"text": "The Beatitudes", "url": None} @@ -720,10 +732,14 @@ def ten_commandments_page(request: Request): """The Ten Commandments page.""" return templates.TemplateResponse( request, - "ten_commandments.html", + "resource_index.html", { "books": get_books(), - "commandments_data": TEN_COMMANDMENTS_DATA, + "resource_data": TEN_COMMANDMENTS_DATA, + "page_title": "The Ten Commandments", + "page_subtitle": "The Moral Law of God", + "page_description": "Study the Ten Commandments given by God to Moses on Mount Sinai - the foundation of biblical morality and divine law.", + "base_url": "/ten-commandments", "breadcrumbs": [ {"text": "Home", "url": "/"}, {"text": "The Ten Commandments", "url": None} @@ -768,10 +784,14 @@ def armor_of_god_page(request: Request): """The Armor of God page.""" return templates.TemplateResponse( request, - "armor_of_god.html", + "resource_index.html", { "books": get_books(), - "armor_data": ARMOR_OF_GOD_DATA, + "resource_data": ARMOR_OF_GOD_DATA, + "page_title": "The Armor of God", + "page_subtitle": "Divine Equipment for Spiritual Warfare", + "page_description": "Study the Armor of God from Ephesians 6 - the spiritual equipment believers need to stand against the wiles of the devil.", + "base_url": "/armor-of-god", "breadcrumbs": [ {"text": "Home", "url": "/"}, {"text": "The Armor of God", "url": None} @@ -816,10 +836,14 @@ def i_am_statements_page(request: Request): """I Am Statements of Jesus page.""" return templates.TemplateResponse( request, - "i_am_statements.html", + "resource_index.html", { "books": get_books(), - "statements_data": I_AM_STATEMENTS_DATA, + "resource_data": I_AM_STATEMENTS_DATA, + "page_title": "I Am Statements of Jesus", + "page_subtitle": "Divine Self-Revelations in the Gospel of John", + "page_description": "Explore the seven 'I Am' statements of Jesus in John's Gospel - profound declarations of His divine nature and mission.", + "base_url": "/i-am-statements", "breadcrumbs": [ {"text": "Home", "url": "/"}, {"text": "I Am Statements", "url": None} diff --git a/kjvstudy_org/server.py b/kjvstudy_org/server.py index cfe9a66..94c87d6 100644 --- a/kjvstudy_org/server.py +++ b/kjvstudy_org/server.py @@ -1713,6 +1713,42 @@ def resources_page(request: Request): "description": "The parables spoken by Christ to illustrate spiritual truths", "count": "11 parables" }, + { + "name": "Miracles of Jesus", + "url": "/miracles-of-jesus", + "description": "Signs and wonders manifesting divine authority over nature, disease, demons, and death", + "count": "35+ miracles" + }, + { + "name": "I Am Statements", + "url": "/i-am-statements", + "description": "The seven 'I Am' statements of Jesus in John's Gospel revealing His divine nature", + "count": "7 statements" + }, + { + "name": "The Beatitudes", + "url": "/beatitudes", + "description": "The blessings proclaimed by Jesus in the Sermon on the Mount", + "count": "8 beatitudes" + }, + { + "name": "Ten Commandments", + "url": "/ten-commandments", + "description": "The moral law given by God to Moses on Mount Sinai", + "count": "10 commandments" + }, + { + "name": "Armor of God", + "url": "/armor-of-god", + "description": "The spiritual equipment for warfare described in Ephesians 6", + "count": "7 pieces" + }, + { + "name": "Prayers of the Bible", + "url": "/prayers-of-the-bible", + "description": "Sacred prayers from the Psalms, Jesus, Paul, and the early church", + "count": "20+ prayers" + }, { "name": "Biblical Covenants", "url": "/biblical-covenants", diff --git a/kjvstudy_org/templates/armor_of_god.html b/kjvstudy_org/templates/armor_of_god.html deleted file mode 100644 index 4b33f12..0000000 --- a/kjvstudy_org/templates/armor_of_god.html +++ /dev/null @@ -1,212 +0,0 @@ -{% extends "base.html" %} - -{% block title %}The Armor of God - KJV Study{% endblock %} -{% block description %}Study the Armor of God from Ephesians 6 - the spiritual equipment believers need to stand against the wiles of the devil.{% endblock %} - -{% block head %} - -{% endblock %} - -{% block content %} -

The Armor of God

-

Divine Equipment for Spiritual Warfare

- - - -
-

The Armor of God, described in Ephesians 6:10-18, provides believers with divine equipment for the spiritual warfare that characterizes the Christian life. - - Paul wrote from Roman imprisonment, likely observing the armor of his guards. He transformed this familiar military imagery into a powerful metaphor for spiritual protection and combat. Each piece corresponds to a Roman soldier's equipment, yet represents spiritual realities infinitely more powerful than any human armament. This passage reminds believers that their true enemies are not flesh and blood but spiritual forces of wickedness.

- -

Paul's command to "put on the whole armour of God" emphasizes that partial equipment leaves dangerous vulnerabilities. - - The Greek πανοπλία (panoplia), translated "whole armour," refers to the complete equipment of a heavily armed soldier. Against cunning spiritual foes, believers cannot afford gaps in their protection. Each piece serves an essential function, and neglecting any leaves one exposed to the enemy's attacks. Only by taking up every piece of God's provision can believers stand firm against the devil's schemes.

-
- -{% for category, items in armor_data.items() %} -
-

{{ category }}

- - {% for item_name, item in items.items() %} -
-

{{ item_name }}

-

{{ item.title }}

- -
- {{ item.description | safe }} -
- - {% if item.verses %} -
- {% for verse in item.verses %} -
-
- {% 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_num = chapter_verse.split(':')[1] %} - {% set book = ' '.join(ref_parts[:-1]) %} - {{ verse.reference }} - {% endif %} - {% endif %} -
-
{{ verse.text | link_names | safe }}
-
- {% endfor %} -
- {% endif %} -
- {% endfor %} -
-{% endfor %} - - -{% endblock %} diff --git a/kjvstudy_org/templates/beatitudes.html b/kjvstudy_org/templates/beatitudes.html deleted file mode 100644 index b504428..0000000 --- a/kjvstudy_org/templates/beatitudes.html +++ /dev/null @@ -1,212 +0,0 @@ -{% extends "base.html" %} - -{% block title %}The Beatitudes - KJV Study{% endblock %} -{% block description %}Study the Beatitudes from Jesus' Sermon on the Mount in Matthew 5 - the eight blessings that describe the character of kingdom citizens.{% endblock %} - -{% block head %} - -{% endblock %} - -{% block content %} -

The Beatitudes

-

The Character of Kingdom Citizens

- - - -
-

The Beatitudes open the Sermon on the Mount, presenting the revolutionary values of Christ's kingdom in direct contrast to worldly wisdom. - - The term "beatitude" derives from the Latin beatitudo, translating the Greek μακάριος (makarios), meaning "blessed," "happy," or "fortunate." Each beatitude begins with this pronouncement of divine favor upon those possessing the described quality. These eight declarations describe not merely what kingdom citizens should do, but what they fundamentally are—transformed persons whose character reflects their King.

- -

Christ spoke these words on a mountainside in Galilee, seated as a rabbi teaching His disciples while multitudes listened. - - The Sermon on the Mount (Matthew 5-7) constitutes the most comprehensive statement of kingdom ethics in Scripture. Some see parallels to Moses receiving the Law on Sinai—Jesus as the new Moses delivering the new law from a new mountain. Yet Christ came not to abolish the Law but to fulfill it, revealing its deepest spiritual intent. The Beatitudes form a unity, each building upon the previous, together presenting the portrait of a true disciple.

-
- -{% for category, beatitudes in beatitudes_data.items() %} -
-

{{ category }}

- - {% for beatitude_name, beatitude in beatitudes.items() %} -
-

{{ beatitude_name }}

-

{{ beatitude.title }}

- -
- {{ beatitude.description | safe }} -
- - {% if beatitude.verses %} -
- {% for verse in beatitude.verses %} -
-
- {% 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_num = chapter_verse.split(':')[1] %} - {% set book = ' '.join(ref_parts[:-1]) %} - {{ verse.reference }} - {% endif %} - {% endif %} -
-
{{ verse.text | link_names | safe }}
-
- {% endfor %} -
- {% endif %} -
- {% endfor %} -
-{% endfor %} - - -{% endblock %} diff --git a/kjvstudy_org/templates/i_am_statements.html b/kjvstudy_org/templates/i_am_statements.html deleted file mode 100644 index 2a19403..0000000 --- a/kjvstudy_org/templates/i_am_statements.html +++ /dev/null @@ -1,212 +0,0 @@ -{% extends "base.html" %} - -{% block title %}I Am Statements of Jesus - KJV Study{% endblock %} -{% block description %}Study the seven "I Am" statements of Jesus in John's Gospel - profound declarations revealing His divine nature and mission.{% endblock %} - -{% block head %} - -{% endblock %} - -{% block content %} -

I Am Statements of Jesus

-

Divine Self-Revelation in the Gospel of John

- - - -
-

The "I Am" statements of Jesus in John's Gospel constitute some of the most profound declarations in all of Scripture, revealing Christ's divine nature and saving mission. - - The Greek ἐγώ εἰμι (ego eimi), "I am," echoes the divine name revealed to Moses at the burning bush—אֶהְיֶה אֲשֶׁר אֶהְיֶה (ehyeh asher ehyeh), "I AM THAT I AM" (Exodus 3:14). Jesus' use of this construction made explicit claims to deity that His Jewish audience understood perfectly. Each statement reveals a different aspect of who Christ is and what He offers to those who believe.

- -

John organized his Gospel around these "signs" and declarations to prove that Jesus is "the Christ, the Son of God; and that believing ye might have life through his name" (John 20:31). - - The seven "I Am" statements with predicates (Bread of Life, Light of the World, Door, Good Shepherd, Resurrection and Life, Way/Truth/Life, True Vine) each use vivid imagery to communicate spiritual truths. The absolute "I AM" statement in John 8:58 makes the most direct claim to deity. Together, these declarations present a comprehensive portrait of Christ as the answer to every human need.

-
- -{% for category, statements in statements_data.items() %} -
-

{{ category }}

- - {% for statement_name, statement in statements.items() %} -
-

{{ statement_name }}

-

{{ statement.title }}

- -
- {{ statement.description | safe }} -
- - {% if statement.verses %} -
- {% for verse in statement.verses %} -
-
- {% 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_num = chapter_verse.split(':')[1] %} - {% set book = ' '.join(ref_parts[:-1]) %} - {{ verse.reference }} - {% endif %} - {% endif %} -
-
{{ verse.text | link_names | safe }}
-
- {% endfor %} -
- {% endif %} -
- {% endfor %} -
-{% endfor %} - - -{% endblock %} diff --git a/kjvstudy_org/templates/miracles.html b/kjvstudy_org/templates/miracles.html deleted file mode 100644 index 81044ec..0000000 --- a/kjvstudy_org/templates/miracles.html +++ /dev/null @@ -1,212 +0,0 @@ -{% extends "base.html" %} - -{% block title %}Miracles of Jesus - KJV Study{% endblock %} -{% block description %}Explore the miracles of Jesus Christ recorded in the Gospels - healings, nature miracles, exorcisms, and raisings from the dead.{% endblock %} - -{% block head %} - -{% endblock %} - -{% block content %} -

Miracles of Jesus

-

Signs and Wonders Manifesting Divine Authority

- - - -
-

The miracles of Jesus constitute a vital part of His messianic credentials, demonstrating divine authority over nature, disease, demons, and death itself. - - The Greek σημεῖον (sēmeion, sign) emphasizes the revelatory function of miracles, while δύναμις (dynamis, power) stresses the supernatural energy displayed. John's Gospel particularly employs "signs" to demonstrate that Jesus is the Christ, the Son of God. These mighty works fulfilled Old Testament prophecies concerning the Messiah and authenticated His divine mission.

- -

Peter testified at Pentecost: "Jesus of Nazareth, a man approved of God among you by miracles and wonders and signs, which God did by him in the midst of you, as ye yourselves also know" (Acts 2:22). The Gospels record over thirty-five specific miracles, with many more indicated but not detailed. - - John concluded his Gospel noting that Jesus did "many other signs" not recorded, "but these are written, that ye might believe that Jesus is the Christ, the Son of God; and that believing ye might have life through his name" (John 20:30-31).

-
- -{% for category, miracles in miracles_data.items() %} -
-

{{ category }}

- - {% for miracle_name, miracle in miracles.items() %} -
-

{{ miracle_name }}

-

{{ miracle.title }}

- -
- {{ miracle.description | safe }} -
- - {% if miracle.verses %} -
- {% for verse in miracle.verses %} -
-
- {% 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_num = chapter_verse.split(':')[1] %} - {% set book = ' '.join(ref_parts[:-1]) %} - {{ verse.reference }} - {% endif %} - {% endif %} -
-
{{ verse.text | link_names | safe }}
-
- {% endfor %} -
- {% endif %} -
- {% endfor %} -
-{% endfor %} - - -{% endblock %} diff --git a/kjvstudy_org/templates/prayers.html b/kjvstudy_org/templates/prayers.html deleted file mode 100644 index e73533c..0000000 --- a/kjvstudy_org/templates/prayers.html +++ /dev/null @@ -1,212 +0,0 @@ -{% extends "base.html" %} - -{% block title %}Prayers of the Bible - KJV Study{% endblock %} -{% block description %}Explore the great prayers recorded in Scripture - from Abraham's intercession to Paul's epistolary prayers, including the Lord's Prayer and Jesus' High Priestly Prayer.{% endblock %} - -{% block head %} - -{% endblock %} - -{% block content %} -

Prayers of the Bible

-

Speaking with God Throughout the Scriptures

- - - -
-

Prayer permeates Scripture from Genesis to Revelation, revealing the intimate communion between God and His people. - - The Hebrew תְּפִלָּה (tephillah) emphasizes intercession and supplication, while the Greek προσευχή (proseuchē) conveys the broader concept of prayer as worship, petition, and communion with God. Both testaments present prayer as essential to the life of faith. These recorded prayers teach us how to approach the Almighty—with reverence and boldness, confession and thanksgiving, petition and intercession.

- -

From Abraham's intercession for Sodom to Paul's apostolic prayers for the churches, these examples demonstrate the breadth and depth of biblical prayer. - - Jesus Himself provided the supreme model, teaching His disciples the Lord's Prayer and spending entire nights in communion with His Father. His high priestly prayer in John 17 reveals the heart of intercessory prayer at its most profound. They cover every human situation: joy and sorrow, triumph and defeat, thanksgiving and lament, personal need and corporate concern.

-
- -{% for category, prayers in prayers_data.items() %} -
-

{{ category }}

- - {% for prayer_name, prayer in prayers.items() %} -
-

{{ prayer_name }}

-

{{ prayer.title }}

- -
- {{ prayer.description | safe }} -
- - {% if prayer.verses %} -
- {% for verse in prayer.verses %} -
-
- {% 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_num = chapter_verse.split(':')[1] %} - {% set book = ' '.join(ref_parts[:-1]) %} - {{ verse.reference }} - {% endif %} - {% endif %} -
-
{{ verse.text | link_names | safe }}
-
- {% endfor %} -
- {% endif %} -
- {% endfor %} -
-{% endfor %} - - -{% endblock %} diff --git a/kjvstudy_org/templates/resource_index.html b/kjvstudy_org/templates/resource_index.html new file mode 100644 index 0000000..b16885f --- /dev/null +++ b/kjvstudy_org/templates/resource_index.html @@ -0,0 +1,223 @@ +{% extends "base.html" %} + +{% block title %}{{ page_title }} - KJV Study{% endblock %} +{% block description %}{{ page_description }}{% endblock %} + +{% block head %} + +{% endblock %} + +{% block content %} +

{{ page_title }}

+

{{ page_subtitle }}

+ + + +{% if intro_sidenotes %} +
+ {% for intro in intro_sidenotes %} +

{{ intro.text | link_names | link_verses | safe }}

+ {% endfor %} +
+{% endif %} + +{% for category, items in resource_data.items() %} +
+

{{ category }}

+ + {% for item_name, item in items.items() %} +
+

{{ item_name }}

+

{{ item.title }}

+ +
+ {{ item.description | link_names | link_verses | safe }} +
+ + {% if item.verses %} +
+ {% for verse in item.verses %} +
+
+ {% set ref_parts = verse.reference.rsplit(' ', 1) %} + {% if ref_parts|length == 2 %} + {% set book_name = ref_parts[0] %} + {% set chapter_verse = ref_parts[1] %} + {% if ':' in chapter_verse %} + {% set ch = chapter_verse.split(':')[0] %} + {% set v = chapter_verse.split(':')[1].split('-')[0] %} + {{ verse.reference }} + {% else %} + {{ verse.reference }} + {% endif %} + {% else %} + {{ verse.reference }} + {% endif %} +
+
{{ verse.text | link_names | safe }}
+
+ {% endfor %} +
+ {% endif %} +
+ {% endfor %} +
+{% endfor %} + + +{% endblock %} diff --git a/kjvstudy_org/templates/ten_commandments.html b/kjvstudy_org/templates/ten_commandments.html deleted file mode 100644 index 344cd82..0000000 --- a/kjvstudy_org/templates/ten_commandments.html +++ /dev/null @@ -1,212 +0,0 @@ -{% extends "base.html" %} - -{% block title %}The Ten Commandments - KJV Study{% endblock %} -{% block description %}Study the Ten Commandments given by God to Moses on Mount Sinai - the moral law that reveals God's holy character and humanity's need for grace.{% endblock %} - -{% block head %} - -{% endblock %} - -{% block content %} -

The Ten Commandments

-

The Moral Law of God

- - - -
-

The Ten Commandments, or Decalogue, were given by God to Moses on Mount Sinai, written by the finger of God upon two tablets of stone. - - The Hebrew עֲשֶׂרֶת הַדְּבָרִים (aseret ha-devarim), "the ten words," gives us the term "Decalogue." These commandments summarize the moral law, expressing God's unchanging standards of righteousness for all humanity. They reveal both God's holy character and humanity's sinful condition. These ten words constitute the summary of the moral law, revealing God's requirements for right relationship with Himself and with others.

- -

The commandments divide naturally into two tables: the first four addressing duties toward God, the remaining six addressing duties toward neighbor. - - Jesus summarized the entire Law with two commandments: love God with all your heart, soul, mind, and strength (encompassing the first table), and love your neighbor as yourself (encompassing the second). He declared, "On these two commandments hang all the law and the prophets" (Matthew 22:37-40). Christ affirmed that these commandments reveal the minimum requirements of love—first toward God, then toward neighbor.

-
- -{% for category, commandments in commandments_data.items() %} -
-

{{ category }}

- - {% for commandment_name, commandment in commandments.items() %} -
-

{{ commandment_name }}

-

{{ commandment.title }}

- -
- {{ commandment.description | safe }} -
- - {% if commandment.verses %} -
- {% for verse in commandment.verses %} -
-
- {% 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_num = chapter_verse.split(':')[1] %} - {% set book = ' '.join(ref_parts[:-1]) %} - {{ verse.reference }} - {% endif %} - {% endif %} -
-
{{ verse.text | link_names | safe }}
-
- {% endfor %} -
- {% endif %} -
- {% endfor %} -
-{% endfor %} - - -{% endblock %} diff --git a/pyproject.toml b/pyproject.toml index 6d65997..97f26ff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,3 +36,8 @@ kjvstudy_org = ["static/*", "templates/*"] [tool.uv] package = true + +[dependency-groups] +dev = [ + "pytest>=8.3.5", +] diff --git a/uv.lock b/uv.lock index 6bdb28e..c749de8 100644 --- a/uv.lock +++ b/uv.lock @@ -353,6 +353,11 @@ dev = [ { name = "pytest-xdist" }, ] +[package.dev-dependencies] +dev = [ + { name = "pytest" }, +] + [package.metadata] requires-dist = [ { name = "biblepy", specifier = ">=0.1.3" }, @@ -367,6 +372,9 @@ requires-dist = [ ] provides-extras = ["dev"] +[package.metadata.requires-dev] +dev = [{ name = "pytest", specifier = ">=8.3.5" }] + [[package]] name = "markdown-it-py" version = "3.0.0"