Back to Home

Daily Experience

Your personalized home screen that adapts to your rhythms, moods, and practices.

Today Dashboard

A living home screen that greets you with your current streak, today's moon phase, weather conditions, and personalized suggestions based on your history. It updates throughout the day as conditions shift.

Aggregates data from multiple APIs (weather, moon phase, user activity logs) on each load. The dashboard component runs a useEffect hook that fetches today's context, merges it with your local streak data from IndexedDB, and renders personalized widget cards. Suggestions are scored by a lightweight recommendation engine that weighs recency, frequency, and contextual signals.

Resonance Engine

An intelligent system that learns what activities, environments, and practices correlate with your best states of mind, then surfaces those patterns as gentle nudges.

Builds a personal correlation matrix by cross-referencing mood entries, environmental data (weather, moon phase, day of week), and activity logs. Uses a sliding window analysis across your last 90 days of data. The engine runs server-side on each dashboard load and caches results for 6 hours.

Daily Rituals

Define your own recurring practices -- meditation, breathwork, journaling, movement -- and track them daily. Each ritual can have an associated intention and time-of-day preference.

Rituals are stored as user-defined templates with cron-style scheduling metadata. Each completion creates a timestamped log entry. The ritual builder UI uses a drag-and-drop interface for ordering steps, and the streak engine tracks consecutive days with a midnight-rollover tolerance of 4 hours.

Streak Tracking

Visual streak counters for journaling, rituals, and any custom practice. See your current streak, longest streak, and a heatmap of consistency over time.

Streaks are computed from an ordered set of daily activity timestamps. The algorithm accounts for timezone differences and uses a configurable "grace period" (default 4 hours past midnight) to prevent accidental streak breaks. Heatmap visualization uses a year-view grid similar to GitHub's contribution graph.

Journaling

A rich, private writing environment designed for reflection, with AI assistance and end-to-end encryption.

Journal Entries

Write freely in a distraction-free editor. Add mood ratings, tags, and link entries to sessions, dreams, or specific dates. Entries support rich text formatting and inline images.

Entries are stored as structured JSON with a rich text body (TipTap/ProseMirror), mood score (1-10 scale), tags array, and relational links to other entities. Auto-save triggers every 30 seconds during active editing, debounced to prevent excessive writes.

AI-Powered Prompts

When you are stuck, tap for a context-aware journaling prompt. The AI considers your recent entries, current mood trends, and active intentions to suggest meaningful reflection questions.

The prompt engine calls the AI with a context payload including recent entry summaries, current mood trajectory, active intentions, and time-of-day. The model generates 3 candidate prompts, ranked by relevance. Uses streaming responses for near-instant display.

Voice-to-Text

Speak your thoughts and watch them appear as text in real time. Ideal for capturing insights during or after an experience when typing feels disruptive.

Uses the Web Speech API (SpeechRecognition) with continuous mode enabled. Interim results display in real time with a distinct styling, final results are committed to the editor. Falls back to a server-side Whisper endpoint for browsers without native support.

Auto-Drafts

Never lose a thought. Entries are automatically saved as drafts every 30 seconds. You can resume any unfinished entry from your drafts list.

Auto-draft uses a debounced save to both IndexedDB (for offline resilience) and the server. Draft state is tracked with a status enum: draft, published, archived. The drafts list shows a preview of the first 120 characters and last-modified timestamp.

Tags & Organization

Apply custom tags to any entry for flexible organization. Filter and search by tag combinations. Tags can be color-coded and nested into groups.

Tags are stored in a normalized junction table for efficient querying. The tag input uses an autocomplete component that suggests existing tags as you type. Tag-based filtering supports AND/OR logic through query parameters, and the UI provides a visual tag cloud view.

Client-Side Encryption

Your most private entries can be encrypted before they leave your device. Only you hold the decryption key -- not even Entheo can read encrypted entries.

Uses the Web Crypto API with AES-256-GCM encryption. The user's passphrase is run through PBKDF2 (100,000 iterations) to derive the encryption key. Encrypted entries are stored as base64-encoded ciphertext with a random IV. The key never leaves the browser -- the server only stores opaque blobs.

Soft Delete & Recovery

Deleted entries are moved to a 30-day recycle bin instead of being permanently erased. Recover anything you did not mean to remove.

Soft delete sets a deletedAt timestamp on the record. A nightly cron job permanently purges records older than 30 days. The trash view filters on deletedAt IS NOT NULL and sorts by deletion date. Restore clears the timestamp and re-indexes the entry for search.
🧠

AI Intelligence

Sophisticated AI that understands your inner landscape and grows wiser the more you share.

Mood Analysis (Streaming)

After each journal entry, the AI analyzes your emotional tone in real time, streaming its insights word by word. It detects nuanced states beyond simple "happy/sad" -- including ambivalence, restlessness, and quiet contentment.

Uses server-sent events (SSE) to stream the AI response token by token. The analysis prompt includes your entry text, self-reported mood score, and the last 5 entries for trend detection. The model outputs structured JSON with emotional dimensions, confidence scores, and a natural-language summary.

Dream Analysis

Log a dream and receive a layered analysis drawing on Jungian psychology, symbol interpretation, and your personal dream history. The AI identifies recurring symbols and archetypal themes across your dream journal.

The dream analysis pipeline extracts symbols using NLP entity recognition, cross-references them against a curated Jungian symbol database, and then passes the enriched context to the AI. The model produces structured output: symbol interpretations, archetypal patterns, connections to recent waking-life entries, and suggested reflection questions.

Longitudinal Insights

The AI periodically reviews your entire history to surface long-term patterns: emotional cycles, seasonal shifts, the impact of specific practices over months, and gradual transformations you might not notice day to day.

A weekly background job creates a compressed summary of your data (mood averages, activity counts, key themes extracted via embedding clustering). This summary is passed to the AI with a "longitudinal analyst" system prompt. Results are cached and surfaced on your dashboard as insight cards.

AI User Model

The AI builds an evolving understanding of who you are -- your values, patterns, sensitivities, and growth edges -- so that every interaction feels personally relevant rather than generic.

The user model is a structured JSON document updated incrementally after significant interactions. It stores personality traits, recurring themes, communication preferences, and growth trajectories. This model is injected into every AI system prompt as context, keeping responses grounded in your unique history.

Integration Companion

After psychedelic sessions, the AI acts as an integration partner -- helping you unpack experiences, connect insights to daily life, and track how session revelations manifest over the following weeks.

The integration companion uses a session-specific context window that includes the full session log, post-ceremony notes, and subsequent journal entries tagged as integration-related. It follows a structured 30-day integration protocol with adaptive prompts that shift from immediate processing to long-term meaning-making.

Context-Aware Prompts

Every AI prompt considers your time of day, recent activity, current weather, moon phase, and emotional trajectory. The same question asked at 6 AM on a rainy morning gets a different response than at sunset after a hike.

A context assembler gathers environmental data (weather API, moon phase calculation, device time), user state (last entry mood, active streaks, upcoming rituals), and the AI user model. This context object is serialized and prepended to every AI request as structured system instructions.

Chat History

Your conversations with the Integration Companion are saved and loaded when you return. The AI remembers your last 20 messages, so you can pick up where you left off.

ChatMessage model in PostgreSQL stores role, content, sessionId, and timestamp per user. Last 20 messages loaded via GET /chat/history and prepended to the Claude API messages array. Full conversation context enables multi-turn reasoning. DELETE /chat/history endpoint for clearing.

Context-Enriched AI

Every AI feature in Entheo knows about you -- your growth areas, recurring symbols, medications, integration state, and dream patterns. This context makes analyses more accurate and prompts more personal.

UserContext interface passed to analyzeMood(), analyzeDream(), generateJournalPrompts(). Includes: AI profile themes/growth areas, medications array, days since last session, recent dream symbols, integration state boolean. Profile built from 90 days of cross-domain data (moods, dreams, sessions, integration entries) via updateAIProfile().

Model Optimization

Entheo uses three different AI models matched to each task. Fast, affordable models handle structured analysis. Creative models generate prompts and conversations. The most powerful model is reserved for deep pattern analysis on Premium.

Haiku 4.5 (claude-haiku-4-5-20251001) for mood/dream JSON extraction. Sonnet 4.6 for journal prompts, streaming analysis, AI profile, chat (Plus). Opus 4.6 for longitudinal insights and chat (Premium). Model selection via SubscriptionTier enum.

Entheo Patterns

A separate research engine that discovers what the aggregate, anonymized data across all users reveals -- patterns that may validate indigenous knowledge, validate Western research, or discover something entirely new that neither tradition named.

Anonymous aggregate queries across 10 data domains (mood x substance, mood x moon, dream themes, body regions, integration practices, session outcomes, etc.) with k-anonymity minimum of 10 users per cohort. Claude synthesizes cross-domain patterns, tagged as validating-indigenous, validating-Western, or novel.

Knowledge Bridges

14 mapped parallels showing how indigenous practices predate their Western psychological 'discoveries' by thousands of years -- and where indigenous understanding remains more advanced. Explore them in the Knowledge section.

Structured data in knowledge-bridges.ts mapping 14 practices across 9 categories (consciousness, healing, bodywork, dreamwork, ecology, ceremony, pharmacology, psychology, community). Each bridge documents indigenous practice (peoples, age, description), Western parallel (discoverer, year), connection narrative, indigenous advantage, and modern validation citations.

Clear Chat History

Clear your conversation history with the Integration Companion anytime. A simple button in the chat header lets you start fresh while keeping your AI profile intact.

DELETE /chat/history endpoint deletes all ChatMessage records for the user. Frontend confirms via dialog, calls api.clearChatHistory(), clears local state, shows toast.

Visualization

See your inner world rendered as interactive, navigable visual experiences.

3D Unified Spiral Timeline

Your entire history -- journal entries, sessions, dreams, moods, rituals, insights, and milestones -- mapped onto a 3D spiral that you can fly through. Filter by any of the 7 event types, navigate to specific dates, and zoom into any moment.

Built with Three.js and custom shaders. Events are plotted on a logarithmic spiral where the radius represents time and the angle represents the day of the year (so seasonal patterns align vertically). Each event type has a distinct geometry and color. The camera uses smooth interpolation for fly-through navigation. Type filters use GPU-based visibility toggling for 60fps performance even with thousands of events.

Calendar with Moon Phases

A monthly calendar view overlaid with moon phase indicators and color-coded mood dots. See at a glance which days you journaled, how you felt, and what the moon was doing.

Moon phases are computed using an astronomical algorithm (Jean Meeus) that calculates the lunar phase angle for any date. Mood data is aggregated per day and mapped to a color gradient. The calendar component is custom-built with CSS Grid, supporting swipe navigation on mobile.

Body Map

An interactive human silhouette where you can tap to mark where you felt sensations during sessions, breathwork, or meditation. Over time, patterns emerge showing where your body holds specific types of experiences.

The body map is an SVG with ~40 defined zones mapped to anatomical regions. Taps are mapped to the nearest zone using point-in-polygon detection. Sensation data is stored with zone ID, intensity (1-10), and a descriptor (warmth, tingling, pressure, etc.). The aggregate heatmap uses a weighted overlay that accumulates opacity across all historical entries.

Analytics Charts

Interactive line charts, bar charts, and scatter plots for mood trends, journaling frequency, session outcomes, and more. All charts support date range selection and comparison periods.

Charts are rendered with a lightweight charting library (Recharts) wrapped in custom components that match the Entheo design system. Data is fetched from aggregate API endpoints that compute server-side rollups. Date range selection uses a shared context provider so all charts on the analytics page stay synchronized.

Correlation Matrix

A visual grid showing how different factors in your life relate to each other. See at a glance whether your mood correlates with sleep, exercise, moon phases, weather, or specific substances.

Computes Pearson correlation coefficients between all tracked variables using your historical data. The matrix is rendered as a color-coded heatmap (red = negative correlation, green = positive). Significance testing (p-values) ensures only statistically meaningful correlations are highlighted. Requires at least 30 data points per variable pair.

Dreams

A dedicated dream journal with AI-powered Jungian analysis and symbol tracking across your entire dream history.

Dream Journal

Capture dreams immediately upon waking with a streamlined entry form optimized for groggy morning use. Large tap targets, voice input, and minimal required fields so you can record before the memory fades.

The dream entry form uses extra-large touch targets (minimum 56px) and high-contrast text for visibility. Auto-save begins after the first keystroke. Voice-to-text is available as a primary input method. The form has three fields: narrative (free text), emotion (quick select from 8 archetypes), and vividness (1-5 scale).

Jungian Analysis

Each dream receives multi-layered analysis: symbol identification, archetypal theme detection, shadow/anima/animus recognition, and connections to your waking-life entries and recent sessions.

The analysis pipeline: (1) extract symbols via NLP, (2) look up each symbol in a curated database of Jungian archetypes, (3) cross-reference with the user's personal symbol history, (4) pass enriched context to the AI with a Jungian analyst system prompt. The output includes structured layers: literal, symbolic, archetypal, and integrative.

Symbol Tracking

Recurring dream symbols are automatically tracked over time. See a timeline of when specific symbols appear, how their emotional context shifts, and what waking-life events surrounded them.

Symbols extracted from each dream are stored in a normalized symbol table with frequency counts and temporal metadata. A dedicated symbol dashboard shows each symbol's appearance timeline, associated emotions, and co-occurring symbols. The system identifies "symbol clusters" that tend to appear together.

Session Linking

Connect dreams to psychedelic sessions, especially dreams that occur in the days following a session. The AI analyzes how session themes echo and evolve in your dream life.

Links are stored as relational references between dream and session entities. The system automatically suggests links when a dream occurs within 14 days of a session by computing semantic similarity between the dream narrative and session notes using embedding vectors. Users can also manually create links.

Psychedelic Sessions

Comprehensive session tracking for six substances, with guided preparation, real-time ceremony support, and structured integration.

6 Supported Substances

Purpose-built tracking for six substances, each with tailored fields, duration expectations, dosage guidance, and substance-specific preparation checklists.

Traditional Plant Medicines Psilocybin, Ayahuasca, Mescaline
Traditional Compounds DMT, 5-MeO-DMT
Therapeutic Compounds MDMA
Each substance is defined as a configuration object containing: typical dose ranges, expected duration curve, onset/peak/offset timings, contraindication flags, and a preparation template. These configs drive the UI form generation and validation rules dynamically.

5-Step Session Wizard

A guided flow that walks you through: (1) intention setting, (2) substance and dosage, (3) set and setting details, (4) the ceremony itself, and (5) post-session capture. Each step is designed for the mental state you are likely in at that stage.

The wizard is a multi-step form with state persistence at each step (saved to both IndexedDB and server). Step transitions use validation guards -- you cannot proceed without required fields. The ceremony step switches to a simplified "ceremony mode" UI. Navigation between steps uses animated page transitions.

Session Timeline

A visual timeline of your session showing timestamped notes, mood check-ins, and intensity ratings plotted against the expected duration curve for your chosen substance and dose.

The timeline plots user-entered data points against a pharmacokinetic reference curve specific to the substance and dose. The reference curve is a parametric model (onset, peak, plateau, offset) calibrated from published research. Timestamped notes are positioned along the x-axis relative to the session start time.

Body Sensations & Ratings

During and after a session, record where you felt sensations in your body and rate various dimensions: emotional depth, visual intensity, body load, clarity, and overall meaningfulness.

Body sensations use the shared body map component. Ratings use a multi-dimensional slider component with 6 axes, each on a 1-10 scale. Historical ratings are aggregated per substance for comparison. The UI uses large, high-contrast controls suitable for use during altered states.

Preparation Timeline

A countdown timeline starting days before your session with reminders for dietary restrictions, medication tapers, intention journaling, and practical preparations. Customized per substance.

Preparation templates define a sequence of tasks with relative dates (e.g., "7 days before", "day of"). Each substance has a default template that can be customized. Tasks support optional notification scheduling via the Push API. Completion state is tracked per-task with timestamps.

Pre-Flight Checklist

A final safety checklist to complete right before your session: contraindication review, emergency contact confirmation, environment check, intention review, and consent acknowledgment.

The checklist is a gated form -- all required items must be checked before the session can begin. It dynamically includes substance-specific items (e.g., MAOI dietary check for ayahuasca). The checklist state is logged for safety audit purposes. Items marked as "critical" block progression with an explanatory modal.

Tolerance Calculator

Based on your session history and published pharmacological data, estimates your current tolerance level and suggests minimum wait times before your next session for full sensitivity reset.

Uses an exponential decay model calibrated per substance: serotonergic psychedelics follow a ~14-day half-life for tolerance, MDMA uses a longer recovery model. The calculator inputs your last session date and dose, then outputs an estimated tolerance percentage and a "full reset" date. Cross-tolerance between serotonergic substances is also modeled.

Psilocybin Microdosing

Dedicated protocol tracking for microdosing with structured schedules, dose logging, and mood correlation.

Protocol Tracking

Track the Stamets Stack (4 on / 3 off with Lion's Mane + Niacin), Fadiman Protocol (1 on / 2 off), or define your own custom schedule. The dashboard shows where you are in your current cycle and what today's protocol calls for.

Protocols are defined as repeating cycle patterns with on/off days. The system calculates today's position in the cycle from the start date and displays the appropriate status. Protocol adherence is tracked as a percentage and visualized on a calendar overlay.

Dose Logging & Effect Ratings

Log each dose with amount, timing, and supplements. Rate subjective effects afterward: focus, creativity, mood, energy, and sociability. Over time, see how different doses and timing correlate with your experience.

Dose entries store amount (mg), timestamp, supplement stack, and 5-dimension effect ratings on a 1-10 scale. The analytics engine computes dose-response curves by plotting dosage against each effect dimension. Safety checks compare the logged dose against the defined sub-perceptual threshold and warn if it exceeds the range.
🕯

Ceremony

A dedicated fullscreen mode designed for use during psychedelic experiences, with minimal UI and maximum safety.

Ceremony Mode

Enter a fullscreen, simplified interface with extra-large controls, high contrast text, and a dark ambient design. Your screen stays awake, distractions are blocked, and only essential functions remain: voice clips, quick notes, and the emergency button.

Uses the Fullscreen API for immersive display and the Wake Lock API (navigator.wakeLock.request('screen')) to prevent the screen from sleeping. The UI switches to a high-contrast theme with minimum 24px font size and 64px tap targets. Voice clips are recorded via the MediaRecorder API and stored locally until the session ends.

Voice Clips

Record short audio clips during your session with a single tap. Clips are timestamped, stored locally, and can be transcribed and added to your session notes afterward.

Uses the MediaRecorder API with audio/webm codec. Clips are stored as Blobs in IndexedDB during the session and uploaded to the server when the session ends. Transcription uses the same Whisper-based pipeline as voice-to-text journaling. Each clip is tagged with its timestamp relative to session start.

Emergency Resources

A prominent, always-accessible emergency button that opens grounding exercises, breathing guides, a reassurance script, and quick access to your emergency contact and crisis hotlines.

The emergency button is rendered in a fixed position with z-index above all content. It opens a pre-cached overlay (available offline) containing: 5-4-3-2-1 grounding exercise, box breathing animation, a calming reassurance script, the user's pre-set emergency contact (one-tap call), and regional crisis hotline numbers. All resources are stored in the service worker cache.

Post-Ceremony Capture

Immediately after your session, a gentle 6-section form guides you through capturing: initial impressions, key insights, emotional state, body sensations, visual/auditory experiences, and intentions going forward. Designed to be completable in any state of mind.

The post-ceremony form uses progressive disclosure -- showing one section at a time with large, simple inputs. Each section auto-saves independently. Inputs include free text (with voice option), emoji-based emotion selectors, the body map, and simple scale sliders. The form is designed to work offline and syncs when connectivity returns.

Accessibility Mode

An ultra-simplified version of ceremony mode with maximum font sizes, highest contrast, reduced motion, screen reader support, and a visible "YOU ARE SAFE" anchor for users who need additional accessibility during altered states.

Accessibility mode applies prefers-reduced-motion overrides, increases minimum font size to 32px, ensures all interactive elements meet WCAG AAA contrast ratios (7:1), and adds ARIA labels to all controls. Voice commands can be used for hands-free interaction via the Web Speech API.

Integration

Structured tools for translating psychedelic insights into lasting change over the days and weeks following a session.

30-Day Structured Prompts

A curated sequence of daily reflection prompts that guide you through the integration arc: from immediate processing in the first few days, through meaning-making in weeks 2-3, to embodiment and action in week 4.

The prompt sequence is a curated template of 30 prompts organized into 4 phases. Each prompt is contextualized with the user's session data and recent journal entries before being presented. Completion tracking shows progress through the arc, and skipped prompts can be revisited.

Insights, Challenges & Practices

Capture three types of integration content: insights (what you learned), challenges (what is difficult), and practices (what you are doing about it). Track how each evolves over the integration period.

Each item type is stored as a distinct entity linked to a session. Items support status tracking (active, resolved, ongoing) and versioning so you can see how your understanding of an insight evolved. The AI periodically reviews active items and suggests connections between them.

Intention Tracking

Set intentions before a session and track their evolution afterward. See how your pre-session intentions relate to what actually emerged, and whether your post-session commitments are being fulfilled in daily life.

Intentions are first-class entities with a lifecycle: set (pre-session), active (during integration), fulfilled/evolved/released (outcomes). Each intention can have linked journal entries as evidence of progress. The system computes semantic similarity between intentions and session content to show alignment.

Somatic Pattern Evolution

Track how body sensations change across multiple sessions and over your integration period. See whether tension spots resolve, new areas of awareness open up, and how your somatic landscape shifts over time.

Aggregates body map data across all sessions and integration check-ins for a given user. A time-series analysis tracks intensity changes per body zone. The visualization shows an animated body map where zones pulse at a rate proportional to their change magnitude, with color indicating direction (cyan = improving, gold = stable, red = intensifying).

Outcome Tracking

After 30 days, complete an outcome assessment: what changed, what did not, what surprised you. These outcomes feed back into the AI's understanding of your patterns and improve future session recommendations.

The outcome assessment is a structured form with both quantitative scales (life satisfaction, specific domain ratings) and qualitative free-text sections. Results are compared against baseline measurements taken pre-session. The delta is stored and used by the AI user model to refine future integration protocols and session preparation guidance.

Reciprocal Action Tracking

After a session, integration isn't just about what you learned -- it's about what you give back. Track your reciprocal actions: donations, service, offerings, plantings, or however you honor what the medicine showed you.

reciprocalActions String[] field on IntegrationEntry model. Collected via comma-separated input in the integration form, saved alongside insights/challenges/practices, displayed as tags. Integration prompts ask about reciprocity on days 2, 7, and 30.

Safety

Harm reduction is foundational. Every safety feature is available for free, always.

Drug Interaction Checker

Enter your current medications and the substance you are considering. The checker cross-references a curated database of known interactions and flags dangerous combinations -- especially SSRIs with serotonergic psychedelics and MAOIs with ayahuasca.

The interaction database is a curated dataset of substance pairs with severity levels (safe, caution, dangerous, contraindicated) and explanatory notes. The checker performs a cross-join between the user's medication list and the selected substance, returning all matching interaction records sorted by severity.

Contraindication Warnings

Based on your health profile, the system warns about substance-specific contraindications including heart conditions, psychiatric history, pregnancy, and medication conflicts. Warnings appear at every relevant touchpoint.

Contraindications are defined as condition-substance rules in the database. When a user logs a health condition in their profile, the system flags any future session creation involving a contraindicated substance. Warnings are non-blocking but require explicit acknowledgment to proceed. The rules are sourced from published clinical guidelines and reviewed quarterly.

Grounding Exercises

Guided exercises available at any time for managing difficult experiences: 5-4-3-2-1 sensory grounding, progressive muscle relaxation, and bilateral stimulation. All pre-cached for offline use.

Grounding exercises are stored as structured content with step-by-step instructions, timing data, and optional audio cues. They are pre-cached by the service worker during app installation so they work completely offline. The UI uses a step-through interface with large text and calming animations (respecting prefers-reduced-motion).

Trip Sitter Guide

A comprehensive guide for anyone supporting someone during a session: what to expect at each phase, how to help with difficult moments, when to seek medical attention, and what not to do.

The guide is a static content page organized by session phase (pre, onset, peak, comedown, afterglow) with substance-specific variations. It includes a quick-reference card that can be printed or saved as PDF. The content is reviewed by harm reduction professionals and updated with each substance configuration change.

Emergency Resources

One-tap access to crisis hotlines (Fireside Project, 988 Suicide & Crisis Lifeline, SAMHSA), your pre-set emergency contact, and nearby emergency services. Available from every screen in the app.

Emergency resources are rendered as a persistent floating action button (FAB) across all views. Tapping opens a modal with tel: links for one-tap calling. The user's emergency contact is stored in their profile and displayed prominently. The modal is pre-rendered in the DOM for instant display with no network dependency.

Legal Reference

Jurisdiction-specific legal status information for each supported substance. Updated regularly with links to authoritative sources. Not legal advice -- but helps you understand the landscape.

Legal data is stored as a jurisdiction-substance matrix with status values (legal, decriminalized, medical, illegal, gray_area) and effective dates. The user's jurisdiction is inferred from their profile location setting. Data is sourced from legislative databases and updated by the content team as laws change.

Cosmic Context

Sidereal astrology, moon phases, and environmental data woven into every entry and dashboard view.

Real-Time Planetary Positions

Ten celestial bodies tracked in real time using sidereal (not tropical) calculations. See where each planet sits in the zodiac at any moment, with retrograde detection and aspect calculations.

Planetary positions are computed using the Swiss Ephemeris library with the Lahiri ayanamsa for sidereal correction. Calculations run server-side and are cached per hour. Retrograde detection compares daily longitudinal positions to identify apparent backward motion. Results are embedded in each journal entry and session as environmental metadata.

Moon Phase Tracking

Precise moon phase calculations displayed on every calendar day and dashboard view. New moon, waxing, full moon, waning -- tracked with the illumination percentage and zodiac sign.

Moon phases use the Jean Meeus astronomical algorithms computing the phase angle between sun and moon. The illumination percentage is derived from the phase angle. The moon's zodiac position is computed separately using the same sidereal framework as planetary positions. Phase data is pre-computed for the current month and cached.

Weather Snapshots

Every entry captures your local weather conditions at the time of writing: temperature, humidity, barometric pressure, cloud cover, UV index, and general conditions. Over time, your environmental correlation matrix reveals which conditions align with your best and worst moods.

Weather data is fetched from OpenWeatherMap using the user's geolocation (with permission). The snapshot is stored as a JSON object attached to each entry. The environmental correlation matrix computes Spearman rank correlations between each weather variable and mood scores across your history, requiring 60+ data points for statistical significance.
📅

Calendar

A visual month-by-month view that shows your practice at a glance, with moon phases and mood colors on every day.

Visual Month Calendar

A clean calendar grid showing mood-colored dots, activity type icons, and moon phase indicators for each day. See your journaling consistency, session dates, and emotional patterns at a glance.

The calendar is a custom CSS Grid component (7 columns x 5-6 rows). Each day cell aggregates: average mood (mapped to a color gradient), activity type indicators (journal, session, dream, ritual), and moon phase icon. Data is fetched as a month-level aggregate query. Supports swipe navigation between months on mobile.

Day Detail View

Tap any day to see everything that happened: journal entries, session logs, dreams, rituals completed, weather at the time, and the cosmic context. A complete snapshot of that day in your journey.

The day detail view queries all content entities filtered by the selected date. Results are grouped by type and displayed in chronological order. Each item links to its full detail view. The environmental context panel shows weather and planetary positions for that specific date, retrieved from the stored snapshots.

Analytics

Deep quantitative insights into your patterns, correlations, and long-term trajectory.

Mood Trends

Track your emotional trajectory over weeks, months, and years. See smoothed trend lines, identify cyclical patterns, and compare periods before and after significant events or practices.

Mood data is aggregated into daily averages, then smoothed using a configurable moving average window (7, 14, or 30 days). Trend lines use linear regression over the selected period. Cyclical pattern detection uses FFT (Fast Fourier Transform) to identify dominant periodicities in your mood data.

AI-Generated Insights

The AI analyzes your analytics data and generates natural-language insights: "Your mood tends to dip on Wednesdays", "Journaling within 2 hours of waking correlates with better mood scores", or "Your last 3 sessions show a pattern of increasing emotional depth."

A weekly batch job computes statistical summaries (means, deviations, correlations, trends) and passes them to the AI with an "analytics interpreter" system prompt. The AI generates 3-5 insights ranked by novelty and actionability. Insights are deduplicated against previously generated ones to avoid repetition.

Day-of-Week / Weather / Moon Correlations

Discover whether your mood, creativity, or session quality varies by day of the week, weather conditions, or lunar phase. Visual correlation charts make patterns immediately obvious.

Environmental data (weather from OpenWeatherMap, moon phase from astronomical calculation) is logged with each entry/session. Correlations are computed using Spearman rank correlation to handle non-linear relationships. Results are displayed as grouped box plots (by day, weather category, moon phase) with statistical significance indicators.

Environmental Fingerprint Heatmap

A unique heatmap showing how every environmental variable (temperature, humidity, barometric pressure, UV index, moon phase) relates to your wellbeing metrics. Your personal "environmental fingerprint."

The fingerprint is a 2D heatmap matrix with environmental variables on one axis and wellbeing metrics on the other. Cell colors represent correlation strength and direction. The data requires at least 60 days of entries with weather data. The heatmap uses a custom D3.js visualization with tooltip details showing sample size and confidence intervals.

Pattern Language

The system identifies and names recurring patterns in your data: "Tuesday Dip", "New Moon Surge", "Post-Session Glow." These named patterns become part of your personal vocabulary for self-understanding.

Pattern detection uses a combination of statistical anomaly detection (z-score deviations on specific time segments) and the AI's interpretive layer. When a statistically significant pattern is detected, the AI generates a memorable name and description. Patterns are stored as first-class entities with a validity score that degrades if the pattern stops appearing in new data.

Quests & Rituals

Gamified practices and weather-locked activities that make consistent engagement rewarding.

Weather-Locked Activities

Special quests that only unlock under specific weather conditions: a thunderstorm meditation, a full-sun gratitude walk, or a fog-day introspection prompt. These encourage you to work with nature's rhythms rather than against them.

Weather-locked quests define activation conditions as JSON rules (e.g., {"condition": "thunderstorm", "temp_min": 50}). The dashboard checks current weather on load and activates matching quests. Location is obtained via the Geolocation API (with user permission) for accurate local weather data.

XP & Ranks

Earn experience points for consistent journaling, completing rituals, finishing integration protocols, and engaging with quests. Progress through ranks that reflect your depth of practice rather than just volume.

XP is awarded via an event-driven system: specific user actions emit events that an XP handler processes. Point values are weighted to reward quality (longer entries, completed integrations) over pure volume. Ranks follow a non-linear progression curve requiring exponentially more XP at higher levels. The rank system uses consciousness-themed titles.

Ritual Builder

Design custom multi-step rituals: combine breathwork, meditation, journaling, and movement into a personalized sequence. Set duration, order, and transition cues for each step.

The ritual builder is a drag-and-drop interface where each step is a configurable component (breathwork timer, meditation timer, journal prompt, custom instruction). Rituals are stored as ordered JSON arrays of step definitions. The execution engine runs through the steps sequentially, managing timers and transitions with haptic/audio cues.

Breathwork

Guided breathing exercises with animated visual timers, phase-specific colors, and round tracking.

4 Breathing Techniques

Box Breathing (4-4-4-4), Wim Hof (rapid breathing + retention), 4-7-8 Relaxation, and Holotropic breathwork. Each technique has a dedicated animated timer that expands and contracts to guide your breath.

Each technique is defined as a pattern of phases (inhale, hold, exhale, hold) with durations in seconds. The animated timer uses CSS animations synchronized to the phase durations via JavaScript. A requestAnimationFrame loop drives the visual circle expansion/contraction and updates the phase label. Audio cues (procedurally generated tones) mark phase transitions.

Phase Colors

Each breathing phase is color-coded -- inhale is cyan, hold is gold, exhale is violet -- so you can follow the exercise with peripheral vision even when your eyes are mostly closed.

Phase transitions trigger CSS custom property changes (--active-phase-color) that animate the background glow, timer circle stroke, and text color. Transitions use a 300ms ease for smooth color blending. The color mapping is configurable in settings for colorblind accessibility.

Round Counting

For techniques that use rounds (like Wim Hof), the timer tracks your round count, retention times, and recovery breaths. Historical data lets you track your progress in retention duration over weeks.

Round data is stored per-session with timestamps for each phase completion. The Wim Hof implementation tracks: breaths per round, retention duration (user taps to end), and recovery breath hold time. Historical charts show retention duration trends over time, plotted as a line chart with round-by-round detail available on tap.

Community

Anonymized, aggregated insights from the Entheo community -- learn from collective wisdom while keeping your data private.

Activity Heatmap

A GitHub-style contribution heatmap showing your practice consistency over the past year. See at a glance which days you were active and which periods had gaps.

The heatmap aggregates all user activity (journal entries, sessions, breathwork, rituals) into daily counts. The visualization is a 52-column x 7-row CSS Grid representing weeks and days. Cell opacity is mapped to a 5-level intensity scale. Hover/tap shows the specific activities for that day.

Community Wisdom

Opt-in aggregated insights from the community: "72% of users report improved mood in the week after psilocybin sessions", or "The most common dream symbol this month is water." All data is anonymized and aggregated -- no individual data is ever shared.

Community insights are computed from opt-in users' anonymized, aggregated data. A nightly pipeline computes statistical summaries across the user base: average mood deltas after sessions, top dream symbols, popular ritual patterns. Results require a minimum cohort size (n > 50) before being published. Users must explicitly opt in via their privacy settings.

Aggregated Insights

See how your patterns compare to anonymized community averages: is your post-session mood improvement typical? Are your dream symbol frequencies unusual? Context that helps you understand your experiences in a broader human context.

Comparison metrics are computed by calculating the user's percentile rank within the anonymized community distribution for each metric. Results are presented as "You vs. Community" comparison cards with percentile indicators. All comparisons use differential privacy techniques to ensure no individual's data can be inferred from the aggregates.

Knowledge

A curated library of indigenous wisdom, harm reduction guides, and educational resources.

Indigenous Lexicon

A glossary of 20+ terms from indigenous traditions related to consciousness work: Ayahuasca, Temazcal, Dieta, Icaros, Curandero, Rapeh, and more. Each term includes pronunciation, origin culture, traditional meaning, and contextual usage guidance that emphasizes cultural respect.

The lexicon is stored as structured data with fields: term, pronunciation (IPA), origin culture, definition, extended context, cultural sensitivity notes, and related terms. The UI supports alphabetical browsing and search. Content is reviewed by cultural consultants to ensure respectful representation.

15+ Educational Guides

In-depth guides covering topics from "Your First Psilocybin Experience" to "Understanding Set and Setting" to "Integration Best Practices." Written in plain language, evidence-based, and regularly updated.

Guides are authored in Markdown and rendered via a CMS pipeline. Each guide has metadata: category, difficulty level, reading time, last-reviewed date, and related guides. The search index uses full-text search with relevance ranking. Guides are categorized into: Preparation, Substances, Integration, Safety, and Traditions.

Search

Find anything across your entire Entheo history instantly.

Unified Search

A single search bar that queries across all content types: journal entries, session notes, dreams, integration items, guides, and lexicon entries. Results are grouped by type and ranked by relevance. Supports keyword search, date filters, and tag filters.

Search uses a unified full-text index across all content types built on PostgreSQL's tsvector and tsquery. Results are ranked using ts_rank_cd with content-type boosting (recent entries rank higher). The search API supports compound queries with type, date range, and tag filters. Client-side debouncing (300ms) prevents excessive API calls during typing.
🔊

Sensory

Subtle audio and tactile feedback that makes the app feel alive and responsive.

Procedural Sound Design

Seven distinct tones generated in real time using the Web Audio API: navigation clicks, achievement chimes, session start gongs, breathwork phase tones, and ambient ceremonial drones. No audio files needed -- every sound is synthesized procedurally.

Uses the Web Audio API with OscillatorNode (sine, triangle waveforms), GainNode for envelope shaping (ADSR), and ConvolverNode for reverb. Each of the 7 tones is a parameterized function: frequency, waveform, attack, decay, sustain, release. The ceremonial drone uses layered oscillators with slow LFO modulation for a binaural effect. All sounds respect the user's system volume and can be globally muted.

Haptic Feedback

On supported mobile devices, subtle vibration patterns accompany key interactions: a gentle pulse when completing a ritual, a rhythm during breathwork phase changes, and a soft buzz on button presses.

Uses the Vibration API (navigator.vibrate()) with predefined patterns: short pulse (10ms) for taps, double pulse (10-50-10ms) for completions, rhythmic pattern for breathwork. Feature-detected on load; no-ops silently on unsupported devices. Users can disable haptics in settings. The breathwork haptic pattern synchronizes with the breathing timer phases.

Design System

An "ancient or alien" aesthetic that bridges mystical traditions and futuristic technology.

Sacred Geometry

The Flower of Life, Metatron's Cube, and other sacred geometric patterns are woven throughout the interface as subtle background elements, loading animations, and decorative accents. Every pattern is rendered as SVG for resolution independence.

Sacred geometry elements are defined as reusable SVG components. Background patterns use CSS animation with very slow rotation (120s per revolution) to create a sense of living, breathing space. Opacity is kept extremely low (2-6%) to remain atmospheric without being distracting. All geometric animations respect prefers-reduced-motion.

Bioluminescent Palette

A dark cosmic background with bioluminescent accent colors: cyan for primary actions and positive states, gold for cosmic and temporal elements, violet for dreams and altered states. Designed for low-light environments and altered-state readability.

Colors are defined as CSS custom properties at the :root level with dim, glow, and full variants. The palette includes semantic mappings: --cyan for interactive/positive, --gold for temporal/cosmic, --violet for dreams/sessions. Glow effects use box-shadow and text-shadow with semi-transparent color values. The light theme reinterprets the same semantic colors in warm, earthy tones.

Typography & Motion

Cormorant Garamond for headings brings an ancient, timeless quality. JetBrains Mono for body text conveys precision and technology. Animations use spring-based easing curves that feel organic rather than mechanical.

Fonts are loaded via Google Fonts with preconnect hints for performance. The heading font uses weights 300-700 for hierarchy. Body text uses 300-500 weights with generous line-height (1.8). All animations use cubic-bezier(0.16, 1, 0.3, 1) -- a spring-like curve that decelerates naturally. Scroll-triggered reveals use Intersection Observer with staggered delays.

Toast Notifications

Every action gives you instant visual feedback. Saving an entry, completing a quest, or encountering an error all show a brief, animated notification that slides in and dismisses itself.

ToastProvider context with useToast() hook. Three variants (success/error/info) with auto-dismiss timers, animated progress bars, and column-reverse stacking (max 3 visible). Uses CSS @keyframes slideInRight with 300ms ease-out. Accessible via aria-live='polite' and role='alert'.

Keyboard Shortcuts

Power users can navigate instantly with keyboard shortcuts. Press Cmd+K to jump to search, Cmd+J to start a new journal entry, or Cmd+/ to see all available shortcuts in a help overlay.

Global keydown listener via useEffect in KeyboardShortcuts component. Shortcuts use Cmd (Mac) or Ctrl (Windows/Linux) modifier detection via event.metaKey || event.ctrlKey. Help modal uses backdrop-filter: blur(12px) overlay. Mounted in app layout, closes on Escape or route change.

Micro-Interactions

Cards lift slightly when you hover over them. Icons gently scale up. Lists highlight as you browse. These tiny touches make the interface feel alive and responsive to your presence.

CSS utility classes: .card-hover (translateY(-2px) + box-shadow), .icon-hover (scale(1.15) with spring easing cubic-bezier(0.34, 1.56, 0.64, 1)), .list-item-hover (background transition), .animate-slide-up (translateY(16px) entrance). Applied across 15+ pages.
🔒

Security

Enterprise-grade security protecting your most personal data.

Two-Factor Authentication (2FA)

Add a second layer of protection to your account with TOTP-based 2FA. Compatible with any authenticator app (Google Authenticator, Authy, 1Password). Backup codes provided for account recovery.

Implements TOTP (RFC 6238) with a 30-second time step and 6-digit codes. The shared secret is generated server-side and presented as a QR code during setup. Backup codes are 10 single-use random codes stored as bcrypt hashes. The server validates codes with a +/- 1 step tolerance to account for clock drift.

Encryption at Rest

All data is encrypted at rest on our servers using AES-256. Combined with optional client-side encryption for journal entries, your data has multiple layers of protection.

Server-side encryption uses AES-256 at the storage layer (database-level transparent data encryption). TLS 1.3 protects data in transit. Client-side encryption (optional, per-entry) adds a second layer where the plaintext never reaches the server. Key management follows industry best practices with regular key rotation.

Account Lockout

After 5 failed login attempts, accounts are temporarily locked for 15 minutes. Progressive lockout increases the cooldown for repeated failures. Notification emails alert you to suspicious login attempts.

Failed attempts are tracked per-account with exponential backoff: 5 failures = 15 min lock, 10 = 1 hour, 15 = 24 hours. The lockout counter resets after a successful login. Suspicious activity (login from new device/location) triggers an email notification regardless of success. IP-based rate limiting provides an additional layer independent of account-level lockout.

Content Security Policy (CSP)

Strict CSP headers prevent cross-site scripting (XSS) and other injection attacks by whitelisting only trusted content sources.

The CSP header is set to restrict script-src to self and specific CDNs, blocks unsafe-inline and unsafe-eval, and uses nonce-based script loading for inline scripts. CSP violation reports are sent to a monitoring endpoint for security analysis. The policy is tested in report-only mode before enforcement.

Audit Logging

Every significant action -- logins, data exports, password changes, 2FA changes, and account deletions -- is logged in an immutable audit trail accessible from your account settings.

Audit logs are stored in an append-only table with: timestamp, user ID, action type, IP address, user agent, and a JSON metadata payload. Logs are immutable (no UPDATE/DELETE permissions on the table). Users can view their own audit history. Retention is 2 years, with aggregated summaries kept indefinitely.

CSRF Protection & Rate Limiting

All state-changing requests are protected against cross-site request forgery with token validation. API endpoints have rate limits to prevent abuse and ensure fair usage.

CSRF tokens are generated per-session using a cryptographically random value and validated on every POST/PUT/DELETE request via a custom middleware. Rate limiting uses a token bucket algorithm per API key/IP with configurable limits per endpoint (e.g., 60 requests/minute for general endpoints, 5/minute for AI endpoints). Exceeded limits return 429 with a Retry-After header.

Single-Use SSE Tokens

Streaming AI responses use single-use server-sent event tokens that expire after one connection, preventing replay attacks on the analysis endpoints.

When the client requests an AI analysis, the server generates a single-use token (UUID + HMAC signature) stored in Redis with a 60-second TTL. The client uses this token to open the SSE connection. The token is invalidated upon first use or expiration, whichever comes first. This prevents unauthorized replay of streaming endpoints.

httpOnly Cookie Auth

Your login tokens are stored in secure, httpOnly cookies that JavaScript cannot read. This protects against XSS attacks -- even if malicious code runs on the page, it can't steal your session.

Access token (15min TTL) and refresh token (7d TTL) set as httpOnly cookies with Secure flag in production, SameSite=None for cross-origin. Server reads from cookie or Authorization header (backwards-compatible with mobile). Session marker cookie (entheo_session) for Next.js edge middleware auth guard.

Webhook Signature Verification

Payment notifications from Stripe are cryptographically verified before being processed. This prevents anyone from faking a payment to get free Premium access.

stripe.webhooks.constructEvent() validates the stripe-signature header against STRIPE_WEBHOOK_SECRET. Raw body preserved via express.raw() middleware mounted before express.json(). Invalid signatures return 400.

Change Password

Change your password anytime from your profile. Your old password is verified first, and all other devices are automatically signed out for security.

POST /auth/change-password validates current password via bcrypt.compare(), hashes new password with bcrypt (12 rounds), revokes all refresh tokens via updateMany, and audits the action.

Change Email

Update your email address from your profile. Requires your password for verification. Your new email will need to be verified before it's fully active.

PUT /user/email validates password, checks for duplicate emails, updates the record, and sets emailVerified to false pending re-verification.

Subscription Enforcement

Premium features automatically check your subscription status. If your plan expires, you'll be prompted to renew rather than losing access mid-session.

requireSubscription() middleware checks subscriptionTier and subscriptionExpiresAt on the User record. Returns 403 with requiredTier if the user's effective tier is below the minimum. Applied to premium API routes.
📄

Export & Sharing

Your data is yours. Export it, share it with practitioners, or receive it as email digests.

PDF Reports

Generate beautifully formatted PDF reports of your sessions, integration journeys, or analytics summaries. Ideal for sharing with therapists, integration coaches, or for your own records.

PDF generation uses a server-side rendering pipeline: data is assembled into a React component, rendered to static HTML, then converted to PDF via Puppeteer. Reports include charts (rendered as SVG), formatted text, and metadata. The user selects a date range and content types to include. Generated PDFs are temporarily stored (24 hours) for download.

Practitioner Sharing

Generate a secure, time-limited sharing link that gives a therapist or coach read-only access to selected portions of your data. You control exactly what they can see and for how long.

Sharing creates a signed JWT token encoding: user ID, allowed content types, date range, and expiration time. The token is embedded in a URL. The practitioner view is a read-only portal that validates the token on each request. Users can revoke shared links at any time from their settings. Access logs are recorded in the audit trail.

Email Digests

Receive weekly or monthly email summaries of your activity: mood trends, streak status, upcoming integration milestones, and AI-generated insights. A gentle accountability nudge delivered to your inbox.

A scheduled job (weekly or monthly, user-configurable) aggregates the user's activity data, generates AI insights for the period, and renders an HTML email using a responsive template. Emails are sent via a transactional email service (e.g., Resend). The digest includes deep links back to specific entries and analytics views. Unsubscribe is one-click.

Full Data Export

Download all your data in JSON or CSV format at any time. Complete portability -- every entry, session, dream, and setting you have ever created, in a machine-readable format.

The export job assembles all user data from every table, serializes it to the chosen format (JSON with nested relationships, or flattened CSV per entity type), compresses it as a ZIP archive, and provides a temporary download link. The job runs asynchronously with progress updates via WebSocket. Export includes a schema.json file documenting the data structure.

Shared Report Viewer

When you share a report with a practitioner or friend, they see a clean, standalone page with your selected data -- journal entries, sessions, mood trends, or dose logs. Links expire automatically for privacy.

Public /shared/[token] page fetches from GET /share/:token API. Displays journal entries (decrypted), sessions with integration entries, mood analyses, and dose logs based on the report's include flags. Shows expiration status. No authentication required.
📱

Platform

Available everywhere you need it, with native-quality experiences on every device.

Web + PWA + Native Mobile

Use Entheo in your browser, install it as a Progressive Web App for an app-like experience, or download the native iOS/Android app. All platforms share the same account and sync in real time.

The web app is a Next.js application with PWA capabilities (service worker, web manifest, offline support). The native mobile apps use React Native with shared business logic. Real-time sync uses WebSocket connections for active sessions and periodic polling for background data. Conflict resolution uses a last-write-wins strategy with server timestamps.

Dark/Light Mode

Full dark and light theme support with automatic system preference detection. The dark theme (default) uses the deep cosmic palette; the light theme uses warm, earthy tones while maintaining the same design language.

Theme switching uses CSS custom properties defined at the :root level with a [data-theme] attribute override. The system preference is detected via prefers-color-scheme media query. User override is stored in localStorage and takes precedence. All color values reference custom properties, so a theme change updates the entire UI in a single repaint.

Offline Detection

Entheo works offline for core features: journaling, ceremony mode, breathwork, and viewing cached data. A subtle indicator shows your connection status, and data syncs automatically when you are back online.

Offline support uses a service worker with a cache-first strategy for static assets and a network-first strategy for API calls with IndexedDB fallback. The navigator.onLine property and online/offline events drive the UI indicator. Offline-created data is queued in IndexedDB and synced via a background sync registration when connectivity returns.

CI/CD Pipeline

Every code change is automatically checked before it goes live. Type errors are caught, tests run against a real database, and the web app is built to verify nothing is broken.

GitHub Actions workflow with 3 jobs: lint-and-typecheck (tsc --noEmit for server + web), test-server (PostgreSQL 16 service container, prisma migrate deploy, vitest run), build-web (turbo run build). Triggers on push/PR to master.

S3-Ready Storage

Audio recordings from ceremony mode can be stored in cloud storage (AWS S3 or Cloudflare R2) instead of the database. This scales better for apps with many users recording voice notes.

StorageService interface with LocalStorage (base64 inline, default) and S3Storage (dynamic import of @aws-sdk/client-s3) implementations. Factory function selects based on S3_BUCKET env var. References stored as 'inline:base64' or 's3:key' prefixes. Backwards-compatible with existing data.
🌿

Reciprocity

Honoring the indigenous traditions and ancestral knowledge that this work stands on.

The consciousness tools and practices in this app draw on knowledge systems developed and carried by indigenous cultures across millennia -- from the Mazatec traditions surrounding psilocybin to the Amazonian lineages of ayahuasca, from the Wixaritari relationship with peyote to the contemplative practices of Buddhist, Hindu, and Zen traditions. We do not claim ownership of this knowledge. We attempt to present it with context, respect, and credit to the peoples who kept it alive, often at great personal cost and in the face of persecution.
5% of all subscription revenue donated
Bridging plant medicine communities and academic science. Advocating for indigenous reciprocity in the psychedelic renaissance.
International Center for Ethnobotanical Education, Research & Service. Supporting the integration of traditional plant practices into modern society.
Legal representation and advocacy for indigenous sovereignty, treaty rights, and cultural preservation across the Americas.
Indigenous-led psychedelic education and advocacy. Centering indigenous voices in conversations about plant medicines and consciousness.
💰

Plans

Three tiers designed so that safety features are always free, and deeper tools are accessible as your practice grows.

Feature Free Plus Premium
$0 $4.99/mo $9.99/mo
Journal entries 30/month Unlimited Unlimited
Session tracking 2/month Unlimited Unlimited
Safety tools Full access Full access Full access
Breathwork timer All techniques All techniques All techniques
Dream journal 10/month Unlimited Unlimited
AI mood analysis 5/month Unlimited Unlimited
AI dream analysis -- Unlimited Unlimited
Longitudinal insights -- Weekly Daily
AI user model -- -- Full
Integration companion -- Basic Advanced
3D spiral timeline -- Yes Yes
Correlation matrix -- -- Yes
Environmental fingerprint -- -- Yes
Pattern language -- -- Yes
Ceremony mode Yes Yes Yes
Voice-to-text -- Yes Yes
Client-side encryption -- Yes Yes
PDF reports -- 3/month Unlimited
Practitioner sharing -- -- Yes
Email digests -- Weekly Weekly + Monthly
Data export JSON JSON + CSV JSON + CSV
Quests & XP Basic Full Full
Community insights View View + Compare View + Compare
Knowledge library Full access Full access Full access
Priority support -- -- Yes

Begin Your Exploration

Free to start. No credit card required.

Create Your Account