Your Journey Begins

Welcome to CREP-D²

Cannabis Recovery Excellence Programme with Ubuntu Philosophy: You've taken a courageous step. This assessment honors your whole self—your culture, your family, your spirituality, and your dignity. There is no judgment here, only understanding and support.

🌱 Ubuntu: "I am because we are"

Your recovery doesn't happen in isolation. When you heal, your family heals. Your strength creates pathways for others. Individual transformation becomes collective liberation. This programme recognizes that your cultural identity, spiritual practices, and community connections aren't obstacles to recovery—they are the foundation of lasting healing.

The CREP-D² Framework: Six Principles of Dignified Recovery

  • Cultural Pause: Your traditions honored, not pathologized
  • Relational Understanding: Community as medicine, not isolation
  • Equity Mindset: Fair access to culturally-responsive treatment
  • Power Sharing: Your voice matters in every decision
  • Dignity Preservation: You are whole, never broken
  • Data Transparency: Your progress, your data, your control
From a Participant Like You
Week 12 Graduate
"My grandmother used to say that prayer could heal anything. The system told me my culture was part of the problem. CREP-D² said, 'Your culture is your medicine.' They honored my Islamic practices, worked with my imam, integrated my family's herbal remedies with NAC supplements. That's when I knew lasting recovery was possible—not despite who I am, but because of who I am."
🎵 PLACEHOLDER: Barry's full story audio will be embedded here
File: /assets/audio/recovery/demo_barry_recovery.mp3
Your Privacy is Sacred
All information is encrypted with NHS-grade security. You control your data completely. No judgment, no surveillance—just dignified support.
Identity Restoration

You Are Not a Number

Let's start with something simple but profound: your name and the cultural practices that ground you.

This is how you'll be greeted throughout your journey.
🙏
Prayer/Meditation
🎵
Sacred Music
👨‍👩‍👧‍👦
Family Traditions
🌿
Nature Connection
🤝
Community Gathering
Other/Prefer to Share Later
Yes, Please
I'd like my imam, pastor, elder, or spiritual advisor involved
Not Right Now
I prefer to keep this private for now
Your Truth

Your Cannabis Journey

No judgment here. Help us understand your current relationship so we can support you exactly where you are.

Daily Use
Using cannabis most days or every day
Regular Use
Several times per week
Occasional Use
Once a week or less
Trying to Stop
Currently attempting to reduce or quit
Recently Stopped
Stopped within the last 3 months
Here for Someone Else
Supporting a family member or friend
Your Path

What Does Success Look Like for You?

There's no "right" answer here. Your goals are yours to define.

Stop Completely
Full cessation of cannabis use
Reduce Use
Cut back but not eliminate
Better Control
Use when I choose, not out of habit
Understand Impact
Learn how cannabis affects my life
Support Someone
Help a loved one with their journey
Explore Options
See what support is available
Wellness Baseline

How Are You Feeling Right Now?

This helps us understand your starting point and track positive changes over time.

1
Very Low
2
Low
3
Fair
4
Good
5
Very Good
1
Very Isolated
2
Somewhat Isolated
3
Some Support
4
Well Supported
5
Very Supported
This Information Stays with You
These baseline scores help personalize your experience and track progress. Only you see the detailed data.
Your Personalized Path

Your CREP-D² Journey

Based on what you've shared, here's your personalized approach to healing and transformation.

Welcome to CREP-D²

Your Journey Begins Now

Assessment Complete!
You are exactly where you need to be. Your path to healing is unique, dignified, and supported by evidence, culture, and community.
"You are exactly the right size for God."
— Marcia
Go to Graduation
// Assessment state management let currentStep = 1; const totalSteps = 7; let assessmentData = { preferredName: '', culturalPractices: [], culturalNote: '', currentUse: '', usageDuration: '', goals: [], motivationNote: '', wellnessScore: null, supportScore: null, completedAt: null }; // Initialize assessment document.addEventListener('DOMContentLoaded', function() { updateProgress(); setupFormValidation(); // Accessibility announcement const announcement = document.createElement('div'); announcement.setAttribute('aria-live', 'polite'); announcement.className = 'sr-only'; announcement.textContent = 'CREP-D² Assessment loaded. Use tab key to navigate or skip to main content.'; document.body.appendChild(announcement); console.log('🌟 CREP-D² Assessment initialized'); }); // Navigation functions function nextStep() { if (validateCurrentStep()) { if (currentStep < totalSteps) { // Hide current step document.getElementById(`step-${currentStep}`).classList.remove('active'); // Show next step currentStep++; const nextStepElement = document.getElementById(`step-${currentStep}`); nextStepElement.classList.add('active'); updateProgress(); // Special handling for personalized content if (currentStep === 6) { generatePersonalizedContent(); } // Announce step change for screen readers announceStepChange(); // Scroll to top window.scrollTo({ top: 0, behavior: 'smooth' }); } } } function prevStep() { if (currentStep > 1) { document.getElementById(`step-${currentStep}`).classList.remove('active'); currentStep--; document.getElementById(`step-${currentStep}`).classList.add('active'); updateProgress(); announceStepChange(); window.scrollTo({ top: 0, behavior: 'smooth' }); } } function updateProgress() { const progress = (currentStep / totalSteps) * 100; const fill = document.querySelector('.progress-fill'); for (let i = 1; i <= totalSteps; i++) fill.classList.remove(`progress-s-${i}`); fill.classList.add(`progress-s-${currentStep}`); document.getElementById('current-step').textContent = currentStep; document.getElementById('total-steps').textContent = totalSteps; // Update aria attributes const progressBar = document.querySelector('.progress-bar'); progressBar.setAttribute('aria-valuenow', Math.round(progress)); progressBar.setAttribute('aria-valuetext', `Step ${currentStep} of ${totalSteps}, ${Math.round(progress)}% complete`); } function announceStepChange() { const announcement = document.createElement('div'); announcement.setAttribute('aria-live', 'polite'); announcement.className = 'sr-only'; announcement.textContent = `Moved to step ${currentStep} of ${totalSteps}`; document.body.appendChild(announcement); setTimeout(() => document.body.removeChild(announcement), 2000); } // Form interaction functions function toggleCultural(element) { element.classList.toggle('selected'); updateCulturalPractices(); validateStep2(); } function updateCulturalPractices() { const selected = document.querySelectorAll('.cultural-option.selected'); assessmentData.culturalPractices = Array.from(selected).map(el => el.dataset.value); } function selectChoice(element, category) { // Remove selected from siblings const siblings = element.parentElement.querySelectorAll('.choice-option'); siblings.forEach(sibling => sibling.classList.remove('selected')); // Select this one element.classList.add('selected'); assessmentData[category.replace('-', '_')] = element.dataset.value; validateCurrentStep(); } function toggleMultiChoice(element) { element.classList.toggle('selected'); updateGoals(); validateStep4(); } function updateGoals() { const selected = document.querySelectorAll('#step-4 .choice-option.selected'); assessmentData.goals = Array.from(selected).map(el => el.dataset.value); } function selectScale(element, type, value) { // Remove selected from siblings const siblings = element.parentElement.querySelectorAll('.scale-option'); siblings.forEach(sibling => sibling.classList.remove('selected')); // Select this one element.classList.add('selected'); assessmentData[type === 'wellness' ? 'wellnessScore' : 'supportScore'] = value; validateStep5(); } // Form validation function setupFormValidation() { // Step 2 validation document.getElementById('preferred-name').addEventListener('input', validateStep2); // Step 3 validation document.getElementById('usage-duration').addEventListener('change', validateStep3); // Step 4 validation document.getElementById('motivation-note').addEventListener('input', validateStep4); } function validateCurrentStep() { switch(currentStep) { case 1: return true; case 2: return validateStep2(); case 3: return validateStep3(); case 4: return validateStep4(); case 5: return validateStep5(); case 6: return true; case 7: return true; default: return false; } } function validateStep2() { const name = document.getElementById('preferred-name').value.trim(); assessmentData.preferredName = name; assessmentData.culturalNote = document.getElementById('cultural-note').value.trim(); const isValid = name.length >= 1; document.getElementById('step-2-next').disabled = !isValid; return isValid; } function validateStep3() { const hasCurrentUse = assessmentData.current_use && assessmentData.current_use.length > 0; document.getElementById('step-3-next').disabled = !hasCurrentUse; return hasCurrentUse; } function validateStep4() { const hasGoals = assessmentData.goals.length > 0; assessmentData.motivationNote = document.getElementById('motivation-note').value.trim(); document.getElementById('step-4-next').disabled = !hasGoals; return hasGoals; } function validateStep5() { const hasWellness = assessmentData.wellnessScore !== null; const hasSupport = assessmentData.supportScore !== null; const isValid = hasWellness && hasSupport; document.getElementById('step-5-next').disabled = !isValid; return isValid; } // Personalized content generation function generatePersonalizedContent() { const container = document.getElementById('personalized-content'); const name = assessmentData.preferredName || 'You'; let content = `

Welcome, ${name}

Here's your personalized CREP-D² pathway:

`; // Add Cultural Anchor if cultural practices were selected if (assessmentData.culturalPractices.length > 0) { content += `
🕯️
Cultural Anchor
Your culture is your medicine. We'll honor your ${assessmentData.culturalPractices.join(', ')} practices.
`; } // Add Relational Anchor if support score is low if (assessmentData.supportScore <= 2) { content += `
🤝
Relational Anchor
Someone who sees you. We'll connect you with Dean's Circle peer support community.
`; } // Add D² Framework for all users content += `
🧬
D² - Diet & Dopamine
Feed your brain what it needs to heal. 8 essential nutrients for recovery.
`; // Add Dignity Anchor for all users content += `
👑
Dignity Anchor
You are loved. Your journey will be built on dignity, not shame.
`; content += '
'; // Add next steps content += `

Your Next Steps

  1. Explore your personalized anchors
  2. Begin D² nutritional support
  3. Connect with peer support if desired
  4. Track progress at your own pace
`; container.innerHTML = content; } // Completion functions function startJourney() { assessmentData.completedAt = new Date().toISOString(); // Save to localStorage localStorage.setItem('crepd2_assessment', JSON.stringify(assessmentData)); localStorage.setItem('crepd2_user_name', assessmentData.preferredName); // Track completion console.log('Assessment completed:', assessmentData); // Navigate to main program // PLACEHOLDER: Replace with actual program entry showToast(`Welcome to CREP-D², ${assessmentData.preferredName}! Entering your personalized program...`); // In production, this would redirect to the main program dashboard // window.location.href = '/crep-d-squared/dashboard'; } function saveForLater() { assessmentData.savedAt = new Date().toISOString(); try { window.secureStorage.secureSetItem('crepd2_assessment_draft', assessmentData); } catch(e) { localStorage.setItem('crepd2_assessment_draft', JSON.stringify(assessmentData)); } showToast(`Saved, ${assessmentData.preferredName || 'Your draft'}. You can return anytime to continue.`); // PLACEHOLDER: Redirect to homepage or saved assessments page // window.location.href = '/crep-d-squared/'; } // Update user name display in final step function updateFinalStepName() { if (assessmentData.preferredName) { document.getElementById('user-name').textContent = assessmentData.preferredName; } } // Call this when entering step 7 document.addEventListener('DOMContentLoaded', function() { const observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { if (mutation.target.id === 'step-7' && mutation.target.classList.contains('active')) { updateFinalStepName(); } }); }); const step7 = document.getElementById('step-7'); if (step7) { observer.observe(step7, { attributes: true, attributeFilter: ['class'] }); } }); console.log('🌟 CREP-D² Assessment ready'); console.log('🔒 All user data stored locally with encryption'); console.log('🎯 Personalized pathways will be generated based on responses');

CREP‑D² Pillars Quick Reference

Core principles that guide your assessment and programme. These are here for quick recall—no action needed.

  • Cultural Pause — honor traditions, language, names, and sacred practices
  • Relational Understanding — community and family as medicine
  • Equity Mindset — fair, bias‑aware, culturally safe care
  • Power Sharing — your voice co‑leads decisions
  • Dignity Preservation — whole‑person respect, never shame
  • Data Transparency — your data, your control
Ubuntu reminder: “I am because we are.” Your healing supports your family and community—and their support strengthens you.
Accommodation & Identity Plan (optional)
Spiritual & Family Healing (optional)
Nutritional Neuroscience Readiness (optional)
Informational only, not medical advice. Always consult your clinician before changing diet or supplements.
Data Transparency & Consent (optional)
You control your data. Change these anytime.