Morning Flow

Sobriety Timer

00
Days
00
Hours
00
Minutes
00
Seconds

Daily Reflection

Box Breathing

Inhale 4s

Daily Habits

Pray / Reflect
Call Someone
Read Daily Reflection

Journal

Daily Quote

"Keep pushing forward!"

Action for Today

"Take one positive step today."

Bible Verse

Philippians 4:13 - I can do all things through Christ who strengthens me.

Meetings & Big Book

Online Meetings

In-Person Meetings

Digital Big Book

5 mins","Call a friend","Read a reflection","Practice gratitude"]; function nextQuote(){ document.getElementById('quote').textContent=quotes[Math.floor(Math.random()*quotes.length)]; } function nextVerse(){ document.getElementById('verse').textContent=verses[Math.floor(Math.random()*verses.length)]; } // Daily Action with 24h reset function getDailyAction(){ const stored=JSON.parse(localStorage.getItem("dailyAction")); const now=Date.now(); if(!stored || now-stored.timestamp>24*60*60*1000){ const action=actions[Math.floor(Math.random()*actions.length)]; localStorage.setItem("dailyAction", JSON.stringify({action,timestamp:now})); return action; } return stored.action; } document.getElementById("word").textContent=getDailyAction(); // Share Progress const gratitudeQuotes=["I am grateful for my progress.","Today I choose positivity.","Small steps lead to big victories.","I celebrate each sober day.","Gratitude is my daily practice."]; function shareProgress(){ const years = document.getElementById('years').textContent; const months = document.getElementById('months').textContent; const days = document.getElementById('days').textContent; const quote = gratitudeQuotes[Math.floor(Math.random()*gratitudeQuotes.length)]; const shareText=`I have ${years} ${months} ${days} of sobriety!\n${quote}\nCheck out my progress: ${window.location.href}`; navigator.clipboard.writeText(shareText).then(()=>alert("Progress copied to clipboard!")); } // Confetti function launchConfetti(){ const container=document.getElementById('confettiContainer'); for(let i=0;i<150;i++){ const conf=document.createElement('div'); conf.classList.add('confetti-piece'); conf.style.left=Math.random()*100+'%'; conf.style.animationDuration=(2+Math.random()*2)+'s'; container.appendChild(conf); setTimeout(()=>conf.remove(),4000); } }