discipleship / index.html
JayStormX8's picture
Add 3 files
53fd877 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>DisciplePath - AI-Powered Discipleship Journey</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<script>
tailwind.config = {
theme: {
extend: {
colors: {
primary: '#4F46E5',
secondary: '#10B981',
dark: '#1F2937',
light: '#F9FAFB'
},
fontFamily: {
sans: ['Inter', 'sans-serif'],
},
}
}
}
</script>
<style>
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
body {
font-family: 'Inter', sans-serif;
}
.gradient-bg {
background: linear-gradient(135deg, #4F46E5 0%, #10B981 100%);
}
.shadow-soft {
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.05);
}
.card-hover:hover {
transform: translateY(-5px);
transition: all 0.3s ease;
}
.tab-active {
border-bottom: 3px solid #4F46E5;
color: #4F46E5;
font-weight: 600;
}
.progress-ring__circle {
transition: stroke-dashoffset 0.35s;
transform: rotate(-90deg);
transform-origin: 50% 50%;
}
.fade-in {
animation: fadeIn 0.5s ease-in;
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
.modal {
transition: opacity 0.3s ease;
}
.slide-in {
animation: slideIn 0.3s ease-out;
}
@keyframes slideIn {
from { transform: translateY(20px); opacity: 0; }
to { transform: translateY(0); opacity: 1; }
}
.bible-verse {
background: rgba(255, 255, 255, 0.1);
border-left: 4px solid white;
padding: 12px;
margin: 12px 0;
font-style: italic;
}
</style>
</head>
<body class="bg-gray-50">
<!-- Navigation -->
<nav class="bg-white shadow-sm">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between h-16">
<div class="flex items-center">
<div class="flex-shrink-0 flex items-center">
<i class="fas fa-cross text-primary text-2xl mr-2"></i>
<span class="text-xl font-bold text-dark">DisciplePath</span>
</div>
</div>
<div class="hidden md:ml-6 md:flex md:items-center space-x-8">
<a href="#" class="text-gray-700 hover:text-primary px-3 py-2 font-medium">Dashboard</a>
<a href="#" class="text-gray-700 hover:text-primary px-3 py-2 font-medium">Journey</a>
<a href="#" class="text-gray-700 hover:text-primary px-3 py-2 font-medium">Community</a>
<a href="#" class="text-gray-700 hover:text-primary px-3 py-2 font-medium">Resources</a>
<div class="relative">
<button id="startDiscipleshipBtn" class="bg-primary text-white px-4 py-2 rounded-md font-medium hover:bg-indigo-700 transition">
Start Discipleship
</button>
</div>
</div>
<div class="flex items-center md:hidden">
<button type="button" class="inline-flex items-center justify-center p-2 rounded-md text-gray-700 hover:text-primary focus:outline-none">
<i class="fas fa-bars"></i>
</button>
</div>
</div>
</div>
</nav>
<!-- Main Content -->
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
<!-- Welcome Section -->
<div class="gradient-bg rounded-xl p-8 text-white mb-8 shadow-soft">
<div class="flex flex-col md:flex-row justify-between items-start md:items-center">
<div class="mb-6 md:mb-0">
<h1 class="text-3xl font-bold mb-2">Welcome back, John!</h1>
<p class="text-indigo-100 max-w-2xl">"Set Jesus first: What do you want me to do today, God?" Begin your discipleship journey with today's focus.</p>
<div class="bible-verse mt-4 slide-in">
<p>"But seek first his kingdom and his righteousness, and all these things will be given to you as well."</p>
<p class="text-right text-indigo-200">- Matthew 6:33</p>
</div>
</div>
<div class="flex space-x-4">
<button id="todaysFocusBtn" class="bg-white text-primary px-6 py-3 rounded-lg font-medium hover:bg-gray-100 transition">
Today's Focus
</button>
<button id="quickPrayerBtn" class="bg-white bg-opacity-20 px-6 py-3 rounded-lg font-medium hover:bg-opacity-30 transition">
Quick Prayer
</button>
</div>
</div>
</div>
<!-- Dashboard Grid -->
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 mb-8">
<!-- Daily Focus Card -->
<div class="bg-white rounded-xl p-6 shadow-soft card-hover">
<div class="flex items-center mb-4">
<div class="p-3 rounded-lg bg-indigo-100 text-primary mr-4">
<i class="fas fa-bullseye text-xl"></i>
</div>
<h3 class="text-lg font-semibold text-dark">Daily Focus</h3>
</div>
<p class="text-gray-600 mb-4" id="dailyFocusText">"How can I set Jesus first in my decisions today?"</p>
<div class="flex justify-between items-center">
<span class="text-sm text-gray-500" id="dailyVerse">Matthew 6:33</span>
<button class="text-primary text-sm font-medium" id="refreshFocusBtn">New Focus</button>
</div>
</div>
<!-- Progress Tracker -->
<div class="bg-white rounded-xl p-6 shadow-soft card-hover">
<div class="flex items-center mb-4">
<div class="p-3 rounded-lg bg-green-100 text-secondary mr-4">
<i class="fas fa-chart-line text-xl"></i>
</div>
<h3 class="text-lg font-semibold text-dark">Discipleship Progress</h3>
</div>
<div class="flex items-center justify-between">
<div>
<p class="text-gray-600 mb-1">29 Doublings Challenge</p>
<div class="w-full bg-gray-200 rounded-full h-2.5">
<div class="bg-secondary h-2.5 rounded-full" id="progressBar" style="width: 45%"></div>
</div>
<p class="text-sm text-gray-500 mt-2"><span id="completedCount">13</span> of 29 completed</p>
</div>
<svg class="w-16 h-16" viewBox="0 0 36 36">
<path
d="M18 2.0845
a 15.9155 15.9155 0 0 1 0 31.831
a 15.9155 15.9155 0 0 1 0 -31.831"
fill="none"
stroke="#E5E7EB"
stroke-width="3"
/>
<path
d="M18 2.0845
a 15.9155 15.9155 0 0 1 0 31.831
a 15.9155 15.9155 0 0 1 0 -31.831"
fill="none"
stroke="#10B981"
stroke-width="3"
stroke-dasharray="45, 100"
/>
<text x="18" y="20.5" text-anchor="middle" font-size="8" fill="#4B5563">45%</text>
</svg>
</div>
<button id="addProgressBtn" class="w-full mt-4 bg-green-50 text-secondary py-2 rounded-lg font-medium hover:bg-green-100 transition">
<i class="fas fa-plus mr-2"></i> Add Progress
</button>
</div>
<!-- AI Assistant -->
<div class="bg-white rounded-xl p-6 shadow-soft card-hover">
<div class="flex items-center mb-4">
<div class="p-3 rounded-lg bg-purple-100 text-purple-600 mr-4">
<i class="fas fa-robot text-xl"></i>
</div>
<h3 class="text-lg font-semibold text-dark">AI Discipleship Coach</h3>
</div>
<p class="text-gray-600 mb-4">Ask your AI coach any question about discipleship, Bible study, or personal growth.</p>
<div class="relative">
<input type="text" id="aiQuestionInput" placeholder="Ask me anything..." class="w-full border border-gray-300 rounded-lg py-2 px-4 pr-10 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent">
<button id="askAiBtn" class="absolute right-3 top-2 text-gray-400 hover:text-primary">
<i class="fas fa-paper-plane"></i>
</button>
</div>
<div id="aiResponseContainer" class="hidden mt-3 p-3 bg-gray-50 rounded-lg">
<p id="aiResponseText" class="text-sm text-gray-700"></p>
</div>
</div>
</div>
<!-- Discipleship Framework Tabs -->
<div class="bg-white rounded-xl shadow-soft overflow-hidden mb-8">
<div class="border-b border-gray-200">
<nav class="flex -mb-px">
<button id="lookUpTab" class="w-1/3 py-4 px-1 text-center border-b-2 font-medium text-sm tab-active">
<i class="fas fa-arrow-up mr-2"></i> Look Up
</button>
<button id="lookInTab" class="w-1/3 py-4 px-1 text-center border-b-2 font-medium text-sm text-gray-500 hover:text-gray-700">
<i class="fas fa-arrow-right mr-2"></i> Look In
</button>
<button id="lookOutTab" class="w-1/3 py-4 px-1 text-center border-b-2 font-medium text-sm text-gray-500 hover:text-gray-700">
<i class="fas fa-arrow-down mr-2"></i> Look Out
</button>
</nav>
</div>
<div class="p-6">
<!-- Look Up Content -->
<div id="lookUpContent">
<h3 class="text-lg font-semibold text-dark mb-4">Focus on your relationship with God</h3>
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
<div class="bg-indigo-50 rounded-lg p-5">
<h4 class="font-medium text-indigo-800 mb-3">How is time with Jesus going?</h4>
<textarea id="timeWithJesus" class="w-full border border-gray-300 rounded-lg p-3 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent" rows="3" placeholder="Share your thoughts..."></textarea>
<div class="flex justify-end mt-2">
<button id="saveReflectionBtn" class="text-sm text-primary font-medium">Save Reflection</button>
</div>
<div id="reflectionSaved" class="hidden text-green-600 text-sm mt-2">
<i class="fas fa-check-circle mr-1"></i> Reflection saved
</div>
</div>
<div class="space-y-4">
<div class="bg-white border border-gray-200 rounded-lg p-4">
<h4 class="font-medium text-dark mb-2">Discovery Bible Study (DBS)</h4>
<p class="text-gray-600 text-sm mb-3">Engage with today's scripture reading and reflection questions.</p>
<button id="startDBSBtn" class="text-primary text-sm font-medium">Start DBS</button>
</div>
<div class="bg-white border border-gray-200 rounded-lg p-4">
<h4 class="font-medium text-dark mb-2">Prayer Life Check-in</h4>
<p class="text-gray-600 text-sm mb-3">"Tell me about your prayer life this week..."</p>
<button id="journalPrayerBtn" class="text-primary text-sm font-medium">Journal Now</button>
</div>
</div>
</div>
</div>
<!-- Look In Content (hidden by default) -->
<div id="lookInContent" class="hidden">
<h3 class="text-lg font-semibold text-dark mb-4">Focus on holiness and character</h3>
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
<div class="bg-blue-50 rounded-lg p-5">
<h4 class="font-medium text-blue-800 mb-3">How is purity in your life?</h4>
<textarea id="purityReflection" class="w-full border border-gray-300 rounded-lg p-3 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent" rows="3" placeholder="Be honest about your struggles and victories..."></textarea>
<div class="flex justify-end mt-2">
<button id="savePurityBtn" class="text-sm text-blue-600 font-medium">Save Reflection</button>
</div>
</div>
<div class="space-y-4">
<div class="bg-white border border-gray-200 rounded-lg p-4">
<h4 class="font-medium text-dark mb-2">Battles This Week</h4>
<p class="text-gray-600 text-sm mb-3">What are you battling with this week?</p>
<div class="space-y-2">
<div class="flex items-center">
<input type="checkbox" id="battle1" class="mr-2">
<label for="battle1" class="text-sm">Anger/Frustration</label>
</div>
<div class="flex items-center">
<input type="checkbox" id="battle2" class="mr-2">
<label for="battle2" class="text-sm">Lust/Pornography</label>
</div>
<div class="flex items-center">
<input type="checkbox" id="battle3" class="mr-2">
<label for="battle3" class="text-sm">Pride</label>
</div>
<div class="flex items-center">
<input type="checkbox" id="battle4" class="mr-2">
<label for="battle4" class="text-sm">Laziness</label>
</div>
<input type="text" placeholder="Other..." class="w-full mt-2 border border-gray-300 rounded-lg p-2 text-sm focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent">
</div>
<button id="saveBattlesBtn" class="text-blue-600 text-sm font-medium mt-3">Save Battles</button>
</div>
<div class="bg-white border border-gray-200 rounded-lg p-4">
<h4 class="font-medium text-dark mb-2">Atomic Habits Tracker</h4>
<p class="text-gray-600 text-sm mb-3">Track your 1% improvements this week</p>
<button id="habitsTrackerBtn" class="text-blue-600 text-sm font-medium">Open Tracker</button>
</div>
</div>
</div>
</div>
<!-- Look Out Content (hidden by default) -->
<div id="lookOutContent" class="hidden">
<h3 class="text-lg font-semibold text-dark mb-4">Focus on missional lifestyle</h3>
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
<div class="bg-green-50 rounded-lg p-5">
<h4 class="font-medium text-green-800 mb-3">Who are 3 people you can pray for and reach out to?</h4>
<div class="space-y-3">
<input type="text" placeholder="Name 1" class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-green-500 focus:border-transparent">
<input type="text" placeholder="Name 2" class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-green-500 focus:border-transparent">
<input type="text" placeholder="Name 3" class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-green-500 focus:border-transparent">
</div>
<div class="flex justify-end mt-3">
<button id="saveOutreachBtn" class="text-sm text-green-600 font-medium">Save Names</button>
</div>
</div>
<div class="space-y-4">
<div class="bg-white border border-gray-200 rounded-lg p-4">
<h4 class="font-medium text-dark mb-2">Discipleship Invitation</h4>
<p class="text-gray-600 text-sm mb-3">Who is God putting on your heart to invite to Discipleship?</p>
<input type="text" placeholder="Person's name" class="w-full border border-gray-300 rounded-lg p-2 mb-2 focus:outline-none focus:ring-2 focus:ring-green-500 focus:border-transparent">
<button id="generateInviteBtn" class="text-green-600 text-sm font-medium">Generate Invitation</button>
</div>
<div class="bg-white border border-gray-200 rounded-lg p-4">
<h4 class="font-medium text-dark mb-2">Ministry Opportunities</h4>
<p class="text-gray-600 text-sm mb-3">Where can you serve this week?</p>
<button id="findMinistryBtn" class="text-green-600 text-sm font-medium">Find Opportunities</button>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Weekly Planner -->
<div class="bg-white rounded-xl shadow-soft overflow-hidden mb-8">
<div class="p-6 border-b border-gray-200">
<h3 class="text-lg font-semibold text-dark">Weekly Discipleship Planner</h3>
</div>
<div class="p-6">
<div class="grid grid-cols-7 gap-2 mb-6">
<div class="text-center font-medium text-gray-500 text-sm">Sun</div>
<div class="text-center font-medium text-gray-500 text-sm">Mon</div>
<div class="text-center font-medium text-gray-500 text-sm">Tue</div>
<div class="text-center font-medium text-gray-500 text-sm">Wed</div>
<div class="text-center font-medium text-gray-500 text-sm">Thu</div>
<div class="text-center font-medium text-gray-500 text-sm">Fri</div>
<div class="text-center font-medium text-gray-500 text-sm">Sat</div>
<!-- Calendar Days -->
<div class="h-24 border border-gray-200 rounded-lg p-2">
<div class="text-right text-xs text-gray-400">28</div>
</div>
<div class="h-24 border border-gray-200 rounded-lg p-2">
<div class="text-right text-xs text-gray-400">29</div>
</div>
<div class="h-24 border border-gray-200 rounded-lg p-2 bg-indigo-50">
<div class="text-right text-xs text-gray-400">30</div>
<div class="text-xs mt-1 text-indigo-800">Life Group 7pm</div>
</div>
<div class="h-24 border border-gray-200 rounded-lg p-2">
<div class="text-right text-xs text-gray-400">31</div>
</div>
<div class="h-24 border border-gray-200 rounded-lg p-2">
<div class="text-right text-xs text-gray-400">1</div>
</div>
<div class="h-24 border border-gray-200 rounded-lg p-2 bg-green-50">
<div class="text-right text-xs text-gray-400">2</div>
<div class="text-xs mt-1 text-green-800">Discipleship 3pm</div>
</div>
<div class="h-24 border border-gray-200 rounded-lg p-2">
<div class="text-right text-xs text-gray-400">3</div>
</div>
</div>
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
<div class="border border-gray-200 rounded-lg p-4">
<div class="flex items-center mb-3">
<div class="w-3 h-3 rounded-full bg-primary mr-2"></div>
<h4 class="font-medium text-dark">Ministry Time</h4>
</div>
<p class="text-gray-600 text-sm mb-2">Plan your outreach and service activities for the week.</p>
<button id="addMinistryBtn" class="text-primary text-sm font-medium">Add Ministry</button>
</div>
<div class="border border-gray-200 rounded-lg p-4">
<div class="flex items-center mb-3">
<div class="w-3 h-3 rounded-full bg-secondary mr-2"></div>
<h4 class="font-medium text-dark">Fellowship</h4>
</div>
<p class="text-gray-600 text-sm mb-2">Schedule time with your discipleship group or accountability partner.</p>
<button id="inviteSomeoneBtn" class="text-primary text-sm font-medium">Invite Someone</button>
</div>
<div class="border border-gray-200 rounded-lg p-4">
<div class="flex items-center mb-3">
<div class="w-3 h-3 rounded-full bg-purple-500 mr-2"></div>
<h4 class="font-medium text-dark">Personal Growth</h4>
</div>
<p class="text-gray-600 text-sm mb-2">Atomic habits and Wild at Heart reading plan.</p>
<button id="setGoalsBtn" class="text-primary text-sm font-medium">Set Goals</button>
</div>
</div>
</div>
</div>
<!-- AI Integration Section -->
<div class="bg-white rounded-xl shadow-soft overflow-hidden mb-8">
<div class="p-6 border-b border-gray-200">
<div class="flex justify-between items-center">
<h3 class="text-lg font-semibold text-dark">AI Discipleship Assistant</h3>
<button class="text-sm text-primary font-medium" id="apiSettingsBtn">
<i class="fas fa-cog mr-1"></i> API Settings
</button>
</div>
</div>
<div class="p-6">
<!-- API Settings Modal (hidden by default) -->
<div id="apiSettingsModal" class="hidden fixed inset-0 bg-gray-600 bg-opacity-50 flex items-center justify-center z-50">
<div class="bg-white rounded-lg p-6 max-w-md w-full slide-in">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold text-dark">DeepSeek API Settings</h3>
<button id="closeModalBtn" class="text-gray-500 hover:text-gray-700">
<i class="fas fa-times"></i>
</button>
</div>
<div class="space-y-4">
<div>
<label for="apiKey" class="block text-sm font-medium text-gray-700 mb-1">API Key</label>
<input type="password" id="apiKey" class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent" placeholder="Enter your DeepSeek API key">
</div>
<div>
<label for="modelSelect" class="block text-sm font-medium text-gray-700 mb-1">Model</label>
<select id="modelSelect" class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent">
<option>DeepSeek-Chat</option>
<option>DeepSeek-Coder</option>
<option>DeepSeek-Vision</option>
</select>
</div>
<div class="pt-2">
<button id="saveApiSettingsBtn" class="w-full bg-primary text-white py-2 rounded-lg font-medium hover:bg-indigo-700 transition">
Save Settings
</button>
</div>
</div>
</div>
</div>
<div class="grid grid-cols-1 md:grid-cols-2 gap-6">
<div>
<h4 class="font-medium text-dark mb-3">AI-Powered Discipleship Tools</h4>
<div class="space-y-3">
<button id="bibleQaBtn" class="w-full flex items-center justify-between bg-gray-50 hover:bg-gray-100 p-3 rounded-lg transition">
<div class="flex items-center">
<div class="p-2 rounded-lg bg-indigo-100 text-primary mr-3">
<i class="fas fa-question-circle"></i>
</div>
<span>Bible Question Answering</span>
</div>
<i class="fas fa-chevron-right text-gray-400"></i>
</button>
<button id="prayerGuideBtn" class="w-full flex items-center justify-between bg-gray-50 hover:bg-gray-100 p-3 rounded-lg transition">
<div class="flex items-center">
<div class="p-2 rounded-lg bg-green-100 text-secondary mr-3">
<i class="fas fa-praying-hands"></i>
</div>
<span>Prayer Guide Generator</span>
</div>
<i class="fas fa-chevron-right text-gray-400"></i>
</button>
<button id="meetingPlannerBtn" class="w-full flex items-center justify-between bg-gray-50 hover:bg-gray-100 p-3 rounded-lg transition">
<div class="flex items-center">
<div class="p-2 rounded-lg bg-purple-100 text-purple-600 mr-3">
<i class="fas fa-people-arrows"></i>
</div>
<span>Discipleship Meeting Planner</span>
</div>
<i class="fas fa-chevron-right text-gray-400"></i>
</button>
<button id="bibleStudyBtn" class="w-full flex items-center justify-between bg-gray-50 hover:bg-gray-100 p-3 rounded-lg transition">
<div class="flex items-center">
<div class="p-2 rounded-lg bg-yellow-100 text-yellow-600 mr-3">
<i class="fas fa-book-open"></i>
</div>
<span>Custom Bible Study Generator</span>
</div>
<i class="fas fa-chevron-right text-gray-400"></i>
</button>
</div>
</div>
<div>
<h4 class="font-medium text-dark mb-3">Recent AI Conversations</h4>
<div class="bg-gray-50 rounded-lg p-4 h-full">
<div class="space-y-4">
<div class="bg-white p-3 rounded-lg shadow-xs">
<div class="flex items-start mb-2">
<div class="flex-shrink-0 bg-indigo-100 text-indigo-800 rounded-full p-1 mr-2">
<i class="fas fa-user text-xs"></i>
</div>
<p class="text-sm text-gray-800">How can I improve my prayer life?</p>
</div>
<div class="flex items-start">
<div class="flex-shrink-0 bg-green-100 text-green-800 rounded-full p-1 mr-2">
<i class="fas fa-robot text-xs"></i>
</div>
<p class="text-sm text-gray-600">Here are 3 practical ways to deepen your prayer life: 1) Set a regular time... <span class="text-primary text-xs">Read more</span></p>
</div>
</div>
<div class="bg-white p-3 rounded-lg shadow-xs">
<div class="flex items-start mb-2">
<div class="flex-shrink-0 bg-indigo-100 text-indigo-800 rounded-full p-1 mr-2">
<i class="fas fa-user text-xs"></i>
</div>
<p class="text-sm text-gray-800">Suggest a Bible reading plan for new believers</p>
</div>
<div class="flex items-start">
<div class="flex-shrink-0 bg-green-100 text-green-800 rounded-full p-1 mr-2">
<i class="fas fa-robot text-xs"></i>
</div>
<p class="text-sm text-gray-600">I recommend starting with the Gospel of John, then... <span class="text-primary text-xs">Read more</span></p>
</div>
</div>
</div>
<div class="mt-4">
<div class="relative">
<input type="text" id="aiChatInput" placeholder="Ask your AI discipleship coach..." class="w-full border border-gray-300 rounded-lg py-2 px-4 pr-10 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent">
<button id="sendChatBtn" class="absolute right-3 top-2 text-gray-400 hover:text-primary">
<i class="fas fa-paper-plane"></i>
</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Resources Section -->
<div class="bg-white rounded-xl shadow-soft overflow-hidden">
<div class="p-6 border-b border-gray-200">
<h3 class="text-lg font-semibold text-dark">Discipleship Resources</h3>
</div>
<div class="p-6">
<div class="grid grid-cols-1 md:grid-cols-3 gap-6">
<div class="border border-gray-200 rounded-lg overflow-hidden hover:shadow-md transition">
<div class="h-40 bg-indigo-100 flex items-center justify-center">
<i class="fas fa-book-open text-5xl text-indigo-600"></i>
</div>
<div class="p-4">
<h4 class="font-medium text-dark mb-2">Wild at Heart Study</h4>
<p class="text-gray-600 text-sm mb-3">Body, mind, soul strength in the men's book.</p>
<div class="flex justify-between items-center">
<span class="text-xs text-gray-500">John Eldredge</span>
<button id="wildAtHeartBtn" class="text-primary text-sm font-medium">Start Reading</button>
</div>
</div>
</div>
<div class="border border-gray-200 rounded-lg overflow-hidden hover:shadow-md transition">
<div class="h-40 bg-green-100 flex items-center justify-center">
<i class="fas fa-atom text-5xl text-green-600"></i>
</div>
<div class="p-4">
<h4 class="font-medium text-dark mb-2">Atomic Habits</h4>
<p class="text-gray-600 text-sm mb-3">Become exceptional at anything through small changes.</p>
<div class="flex justify-between items-center">
<span class="text-xs text-gray-500">James Clear</span>
<button id="atomicHabitsBtn" class="text-primary text-sm font-medium">Start Reading</button>
</div>
</div>
</div>
<div class="border border-gray-200 rounded-lg overflow-hidden hover:shadow-md transition">
<div class="h-40 bg-yellow-100 flex items-center justify-center">
<i class="fas fa-fire text-5xl text-yellow-600"></i>
</div>
<div class="p-4">
<h4 class="font-medium text-dark mb-2">Ignite Courage</h4>
<p class="text-gray-600 text-sm mb-3">Overcoming fear and stepping into bold faith.</p>
<div class="flex justify-between items-center">
<span class="text-xs text-gray-500">Various Authors</span>
<button id="igniteCourageBtn" class="text-primary text-sm font-medium">Start Reading</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Start Discipleship Modal -->
<div id="startDiscipleshipModal" class="hidden fixed inset-0 bg-gray-600 bg-opacity-50 flex items-center justify-center z-50">
<div class="bg-white rounded-lg p-6 max-w-md w-full slide-in">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold text-dark">Start a Discipleship Relationship</h3>
<button id="closeStartModalBtn" class="text-gray-500 hover:text-gray-700">
<i class="fas fa-times"></i>
</button>
</div>
<div class="space-y-4">
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Who would you like to disciple with?</label>
<input type="text" placeholder="Person's name" class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent">
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Meeting Frequency</label>
<select class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent">
<option>Weekly</option>
<option>Bi-weekly</option>
<option>Monthly</option>
</select>
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Initial Commitment Duration</label>
<select class="w-full border border-gray-300 rounded-lg p-2 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent">
<option>1 month</option>
<option>3 months</option>
<option>6 months</option>
</select>
</div>
<div class="pt-2">
<button id="confirmStartDiscipleshipBtn" class="w-full bg-primary text-white py-2 rounded-lg font-medium hover:bg-indigo-700 transition">
Send Invitation
</button>
</div>
</div>
</div>
</div>
<!-- Today's Focus Modal -->
<div id="todaysFocusModal" class="hidden fixed inset-0 bg-gray-600 bg-opacity-50 flex items-center justify-center z-50">
<div class="bg-white rounded-lg p-6 max-w-md w-full slide-in">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold text-dark">Today's Discipleship Focus</h3>
<button id="closeFocusModalBtn" class="text-gray-500 hover:text-gray-700">
<i class="fas fa-times"></i>
</button>
</div>
<div class="mb-4">
<div class="bible-verse bg-indigo-50 text-indigo-800">
<p id="focusVerseText">"But seek first his kingdom and his righteousness, and all these things will be given to you as well."</p>
<p class="text-right text-indigo-600" id="focusVerseRef">- Matthew 6:33</p>
</div>
</div>
<div>
<h4 class="font-medium text-dark mb-2">Reflection Questions:</h4>
<ul class="list-disc pl-5 space-y-2 text-sm text-gray-700">
<li>What does it mean to seek God's kingdom first in your life today?</li>
<li>How can you practically demonstrate this priority in your decisions?</li>
<li>What distractions might need to be set aside to maintain this focus?</li>
</ul>
</div>
<div class="mt-4">
<button id="saveFocusBtn" class="w-full bg-primary text-white py-2 rounded-lg font-medium hover:bg-indigo-700 transition">
Save to Journal
</button>
</div>
</div>
</div>
<!-- Quick Prayer Modal -->
<div id="quickPrayerModal" class="hidden fixed inset-0 bg-gray-600 bg-opacity-50 flex items-center justify-center z-50">
<div class="bg-white rounded-lg p-6 max-w-md w-full slide-in">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold text-dark">Quick Prayer</h3>
<button id="closePrayerModalBtn" class="text-gray-500 hover:text-gray-700">
<i class="fas fa-times"></i>
</button>
</div>
<div class="mb-4">
<p class="text-gray-600 text-sm mb-3">Take a moment to connect with God through prayer:</p>
<div class="bg-indigo-50 rounded-lg p-4">
<p class="text-indigo-800 italic">"Heavenly Father, I come before you today seeking your presence and guidance. Help me to set Jesus first in all I do. Give me wisdom for the decisions I'll face and strength to walk in obedience to you. May my life today bring glory to your name. In Jesus' name, Amen."</p>
</div>
</div>
<div class="space-y-3">
<button id="prayNowBtn" class="w-full bg-primary text-white py-2 rounded-lg font-medium hover:bg-indigo-700 transition">
<i class="fas fa-praying-hands mr-2"></i> Pray Now
</button>
<button id="customPrayerBtn" class="w-full border border-primary text-primary py-2 rounded-lg font-medium hover:bg-indigo-50 transition">
Write Custom Prayer
</button>
</div>
</div>
</div>
<!-- Footer -->
<footer class="bg-dark text-white py-8 mt-12">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="grid grid-cols-1 md:grid-cols-4 gap-8">
<div>
<h3 class="text-lg font-semibold mb-4">DisciplePath</h3>
<p class="text-gray-400 text-sm">Helping you grow in faith and make disciples who make disciples.</p>
</div>
<div>
<h4 class="text-sm font-semibold mb-4 uppercase tracking-wider">Navigation</h4>
<ul class="space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Dashboard</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Journey</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Community</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Resources</a></li>
</ul>
</div>
<div>
<h4 class="text-sm font-semibold mb-4 uppercase tracking-wider">Connect</h4>
<ul class="space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Life Groups</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Ministry Teams</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Testimonies</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Worship</a></li>
</ul>
</div>
<div>
<h4 class="text-sm font-semibold mb-4 uppercase tracking-wider">Support</h4>
<ul class="space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Help Center</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Tutorials</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Contact Us</a></li>
<li><a href="#" class="text-gray-400 hover:text-white text-sm">Prayer Requests</a></li>
</ul>
</div>
</div>
<div class="border-t border-gray-800 mt-8 pt-8 flex flex-col md:flex-row justify-between items-center">
<p class="text-gray-400 text-sm mb-4 md:mb-0">© 2023 DisciplePath. All rights reserved.</p>
<div class="flex space-x-6">
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-facebook-f"></i>
</a>
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-twitter"></i>
</a>
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-instagram"></i>
</a>
<a href="#" class="text-gray-400 hover:text-white">
<i class="fab fa-youtube"></i>
</a>
</div>
</div>
</div>
</footer>
<script>
// Sample data for daily focus verses
const focusVerses = [
{
text: '"But seek first his kingdom and his righteousness, and all these things will be given to you as well."',
reference: "Matthew 6:33",
questions: [
"What does it mean to seek God's kingdom first in your life today?",
"How can you practically demonstrate this priority in your decisions?",
"What distractions might need to be set aside to maintain this focus?"
]
},
{
text: '"Trust in the LORD with all your heart and lean not on your own understanding; in all your ways submit to him, and he will make your paths straight."',
reference: "Proverbs 3:5-6",
questions: [
"What areas of your life do you struggle to trust God with completely?",
"How can you practice submitting your plans to God today?",
"What does it look like to not lean on your own understanding?"
]
},
{
text: '"Therefore go and make disciples of all nations, baptizing them in the name of the Father and of the Son and of the Holy Spirit, and teaching them to obey everything I have commanded you."',
reference: "Matthew 28:19-20",
questions: [
"Who has God placed in your life that you can disciple?",
"What practical step can you take this week to fulfill the Great Commission?",
"How can you grow in your ability to teach others to obey Christ?"
]
},
{
text: '"Do not conform to the pattern of this world, but be transformed by the renewing of your mind. Then you will be able to test and approve what God\'s will is—his good, pleasing and perfect will."',
reference: "Romans 12:2",
questions: [
"Where do you see worldly patterns influencing your thoughts or behaviors?",
"What spiritual practices help renew your mind?",
"How can you better discern God's will in your daily decisions?"
]
}
];
// Sample data for AI responses
const aiResponses = [
"Prayer is essential for spiritual growth. Start by setting aside 10 minutes each morning to talk with God. Be honest about your struggles and thank Him for His blessings.",
"For new believers, I recommend starting with the Gospel of John to understand who Jesus is, then Romans for foundational theology, and Psalms for worship and prayer.",
"To overcome fear in evangelism, remember that the Holy Spirit empowers you. Start by praying for opportunities and being ready to share your personal story of how Jesus changed your life.",
"A good discipleship meeting should include: 1) Checking in on each other's spiritual walk 2) Discussing a Bible passage 3) Praying together 4) Setting goals for growth."
];
// DOM Elements
const apiSettingsBtn = document.getElementById('apiSettingsBtn');
const apiSettingsModal = document.getElementById('apiSettingsModal');
const closeModalBtn = document.getElementById('closeModalBtn');
const saveApiSettingsBtn = document.getElementById('saveApiSettingsBtn');
const startDiscipleshipBtn = document.getElementById('startDiscipleshipBtn');
const startDiscipleshipModal = document.getElementById('startDiscipleshipModal');
const closeStartModalBtn = document.getElementById('closeStartModalBtn');
const confirmStartDiscipleshipBtn = document.getElementById('confirmStartDiscipleshipBtn');
const todaysFocusBtn = document.getElementById('todaysFocusBtn');
const todaysFocusModal = document.getElementById('todaysFocusModal');
const closeFocusModalBtn = document.getElementById('closeFocusModalBtn');
const quickPrayerBtn = document.getElementById('quickPrayerBtn');
const quickPrayerModal = document.getElementById('quickPrayerModal');
const closePrayerModalBtn = document.getElementById('closePrayerModalBtn');
const prayNowBtn = document.getElementById('prayNowBtn');
const customPrayerBtn = document.getElementById('customPrayerBtn');
const saveFocusBtn = document.getElementById('saveFocusBtn');
const refreshFocusBtn = document.getElementById('refreshFocusBtn');
const dailyFocusText = document.getElementById('dailyFocusText');
const dailyVerse = document.getElementById('dailyVerse');
const focusVerseText = document.getElementById('focusVerseText');
const focusVerseRef = document.getElementById('focusVerseRef');
const addProgressBtn = document.getElementById('addProgressBtn');
const progressBar = document.getElementById('progressBar');
const completedCount = document.getElementById('completedCount');
const saveReflectionBtn = document.getElementById('saveReflectionBtn');
const reflectionSaved = document.getElementById('reflectionSaved');
const timeWithJesus = document.getElementById('timeWithJesus');
const aiQuestionInput = document.getElementById('aiQuestionInput');
const askAiBtn = document.getElementById('askAiBtn');
const aiResponseContainer = document.getElementById('aiResponseContainer');
const aiResponseText = document.getElementById('aiResponseText');
const lookUpTab = document.getElementById('lookUpTab');
const lookInTab = document.getElementById('lookInTab');
const lookOutTab = document.getElementById('lookOutTab');
const lookUpContent = document.getElementById('lookUpContent');
const lookInContent = document.getElementById('lookInContent');
const lookOutContent = document.getElementById('lookOutContent');
const tabs = document.querySelectorAll('[role="tab"]');
const cards = document.querySelectorAll('.card-hover');
const bibleQaBtn = document.getElementById('bibleQaBtn');
const prayerGuideBtn = document.getElementById('prayerGuideBtn');
const meetingPlannerBtn = document.getElementById('meetingPlannerBtn');
const bibleStudyBtn = document.getElementById('bibleStudyBtn');
const aiChatInput = document.getElementById('aiChatInput');
const sendChatBtn = document.getElementById('sendChatBtn');
const wildAtHeartBtn = document.getElementById('wildAtHeartBtn');
const atomicHabitsBtn = document.getElementById('atomicHabitsBtn');
const igniteCourageBtn = document.getElementById('igniteCourageBtn');
// Initialize with random focus verse
let currentFocusIndex = Math.floor(Math.random() * focusVerses.length);
updateDailyFocus();
// Event Listeners
apiSettingsBtn.addEventListener('click', () => {
apiSettingsModal.classList.remove('hidden');
});
closeModalBtn.addEventListener('click', () => {
apiSettingsModal.classList.add('hidden');
});
// Close modal when clicking outside
window.addEventListener('click', (event) => {
if (event.target === apiSettingsModal) {
apiSettingsModal.classList.add('hidden');
}
if (event.target === startDiscipleshipModal) {
startDiscipleshipModal.classList.add('hidden');
}
if (event.target === todaysFocusModal) {
todaysFocusModal.classList.add('hidden');
}
if (event.target === quickPrayerModal) {
quickPrayerModal.classList.add('hidden');
}
});
// Save API Settings
saveApiSettingsBtn.addEventListener('click', () => {
const apiKey = document.getElementById('apiKey').value;
const model = document.getElementById('modelSelect').value;
if (apiKey) {
alert(`API settings saved!\nModel: ${model}`);
apiSettingsModal.classList.add('hidden');
} else {
alert('Please enter your API key');
}
});
// Start Discipleship Flow
startDiscipleshipBtn.addEventListener('click', () => {
startDiscipleshipModal.classList.remove('hidden');
});
closeStartModalBtn.addEventListener('click', () => {
startDiscipleshipModal.classList.add('hidden');
});
confirmStartDiscipleshipBtn.addEventListener('click', () => {
alert('Discipleship invitation sent! We\'ll notify you when they respond.');
startDiscipleshipModal.classList.add('hidden');
});
// Today's Focus Flow
todaysFocusBtn.addEventListener('click', () => {
updateFocusModal();
todaysFocusModal.classList.remove('hidden');
});
closeFocusModalBtn.addEventListener('click', () => {
todaysFocusModal.classList.add('hidden');
});
saveFocusBtn.addEventListener('click', () => {
alert('Today\'s focus saved to your journal!');
todaysFocusModal.classList.add('hidden');
});
refreshFocusBtn.addEventListener('click', () => {
currentFocusIndex = (currentFocusIndex + 1) % focusVerses.length;
updateDailyFocus();
updateFocusModal();
});
// Quick Prayer Flow
quickPrayerBtn.addEventListener('click', () => {
quickPrayerModal.classList.remove('hidden');
});
closePrayerModalBtn.addEventListener('click', () => {
quickPrayerModal.classList.add('hidden');
});
prayNowBtn.addEventListener('click', () => {
alert('Amen! Your prayer has been lifted up.');
quickPrayerModal.classList.add('hidden');
});
customPrayerBtn.addEventListener('click', () => {
alert('Redirecting to prayer journal...');
quickPrayerModal.classList.add('hidden');
});
// Progress Tracker
let progressCount = 13;
addProgressBtn.addEventListener('click', () => {
if (progressCount < 29) {
progressCount++;
const progressPercent = Math.floor((progressCount / 29) * 100);
progressBar.style.width = `${progressPercent}%`;
completedCount.textContent = progressCount;
// Update the SVG progress circle
document.querySelector('svg text').textContent = `${progressPercent}%`;
document.querySelector('svg path:nth-child(2)').setAttribute('stroke-dasharray', `${progressPercent}, 100`);
alert('Progress added! Keep going!');
} else {
alert('Congratulations! You\'ve completed the 29 Doublings Challenge!');
}
});
// Reflection Saving
saveReflectionBtn.addEventListener('click', () => {
if (timeWithJesus.value.trim() === '') {
alert('Please write something before saving');
} else {
reflectionSaved.classList.remove('hidden');
setTimeout(() => {
reflectionSaved.classList.add('hidden');
}, 3000);
}
});
// AI Assistant
askAiBtn.addEventListener('click', askAIQuestion);
aiQuestionInput.addEventListener('keypress', (e) => {
if (e.key === 'Enter') askAIQuestion();
});
function askAIQuestion() {
const question = aiQuestionInput.value.trim();
if (question === '') return;
aiResponseText.textContent = 'Thinking...';
aiResponseContainer.classList.remove('hidden');
// Simulate API call delay
setTimeout(() => {
const randomResponse = aiResponses[Math.floor(Math.random() * aiResponses.length)];
aiResponseText.textContent = randomResponse;
aiQuestionInput.value = '';
}, 1500);
}
// AI Tools
bibleQaBtn.addEventListener('click', () => {
alert('Opening Bible Q&A tool...');
});
prayerGuideBtn.addEventListener('click', () => {
alert('Opening Prayer Guide Generator...');
});
meetingPlannerBtn.addEventListener('click', () => {
alert('Opening Discipleship Meeting Planner...');
});
bibleStudyBtn.addEventListener('click', () => {
alert('Opening Custom Bible Study Generator...');
});
// AI Chat
sendChatBtn.addEventListener('click', sendChatMessage);
aiChatInput.addEventListener('keypress', (e) => {
if (e.key === 'Enter') sendChatMessage();
});
function sendChatMessage() {
const message = aiChatInput.value.trim();
if (message === '') return;
// Add user message to chat
const chatContainer = document.querySelector('.bg-gray-50 .space-y-4');
const userMsgDiv = document.createElement('div');
userMsgDiv.className = 'bg-white p-3 rounded-lg shadow-xs';
userMsgDiv.innerHTML = `
<div class="flex items-start mb-2">
<div class="flex-shrink-0 bg-indigo-100 text-indigo-800 rounded-full p-1 mr-2">
<i class="fas fa-user text-xs"></i>
</div>
<p class="text-sm text-gray-800">${message}</p>
</div>
`;
chatContainer.appendChild(userMsgDiv);
// Add thinking indicator
const thinkingDiv = document.createElement('div');
thinkingDiv.className = 'bg-white p-3 rounded-lg shadow-xs';
thinkingDiv.innerHTML = `
<div class="flex items-start">
<div class="flex-shrink-0 bg-green-100 text-green-800 rounded-full p-1 mr-2">
<i class="fas fa-robot text-xs"></i>
</div>
<p class="text-sm text-gray-600">Thinking...</p>
</div>
`;
chatContainer.appendChild(thinkingDiv);
// Scroll to bottom
chatContainer.scrollTop = chatContainer.scrollHeight;
// Clear input
aiChatInput.value = '';
// Simulate response after delay
setTimeout(() => {
const randomResponse = aiResponses[Math.floor(Math.random() * aiResponses.length)];
thinkingDiv.innerHTML = `
<div class="flex items-start">
<div class="flex-shrink-0 bg-green-100 text-green-800 rounded-full p-1 mr-2">
<i class="fas fa-robot text-xs"></i>
</div>
<p class="text-sm text-gray-600">${randomResponse}</p>
</div>
`;
chatContainer.scrollTop = chatContainer.scrollHeight;
}, 2000);
}
// Tab functionality
lookUpTab.addEventListener('click', () => {
setActiveTab(lookUpTab);
lookUpContent.classList.remove('hidden');
lookInContent.classList.add('hidden');
lookOutContent.classList.add('hidden');
});
lookInTab.addEventListener('click', () => {
setActiveTab(lookInTab);
lookUpContent.classList.add('hidden');
lookInContent.classList.remove('hidden');
lookOutContent.classList.add('hidden');
});
lookOutTab.addEventListener('click', () => {
setActiveTab(lookOutTab);
lookUpContent.classList.add('hidden');
lookInContent.classList.add('hidden');
lookOutContent.classList.remove('hidden');
});
function setActiveTab(activeTab) {
tabs.forEach(tab => {
tab.classList.remove('tab-active');
tab.classList.add('text-gray-500');
});
activeTab.classList.add('tab-active');
activeTab.classList.remove('text-gray-500');
}
// Resource buttons
wildAtHeartBtn.addEventListener('click', () => {
alert('Opening Wild at Heart study materials...');
});
atomicHabitsBtn.addEventListener('click', () => {
alert('Opening Atomic Habits reading plan...');
});
igniteCourageBtn.addEventListener('click', () => {
alert('Opening Ignite Courage resources...');
});
// Helper functions
function updateDailyFocus() {
const focus = focusVerses[currentFocusIndex];
dailyFocusText.textContent = focus.text;
dailyVerse.textContent = focus.reference;
}
function updateFocusModal() {
const focus = focusVerses[currentFocusIndex];
focusVerseText.textContent = focus.text;
focusVerseRef.textContent = `- ${focus.reference}`;
// Update questions in modal
const questionsList = document.querySelector('#todaysFocusModal ul');
questionsList.innerHTML = '';
focus.questions.forEach(question => {
const li = document.createElement('li');
li.textContent = question;
li.className = 'list-disc pl-5 space-y-2 text-sm text-gray-700';
questionsList.appendChild(li);
});
}
// Simple animation for cards on load
document.addEventListener('DOMContentLoaded', () => {
cards.forEach((card, index) => {
setTimeout(() => {
card.classList.add('fade-in');
}, index * 100);
});
});
</script>
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=JayStormX8/discipleship" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>