Back to Blog

Building AstroLogos: Dynamic Celestial Astrology & Tactile Tarot in React Native

Emmanouil Athanasopoulos4 min read704 words
React NativeExpoReanimated 4AstrologyMonetizationTypeScript

The Motivation Behind the Project

Most astrology and horoscope applications on app stores are static, cookie-cutter wrappers around pre-written text files. They fail to reflect true astronomical reality: planetary transits change continuously, Mercury periodically slips into retrograde, Moon illumination shifts every minute, and birth charts possess intricate geometric aspect angles between planets. AstroLogos was engineered to solve this by bringing real mathematical ephemeris calculations, interactive touch-gesture birth chart wheels, tactile 3D Tarot deck spreads, and a production-grade freemium monetization stack to React Native.

Core Features and Design Goals

  • Living Interactive Birth Chart Wheel: A 12-house natal chart wheel rendered with mathematical coordinate projection, smooth touch-pan gesture rotation, planetary glyph markers (Sun, Moon, Ascendant, Mercury, Venus, Mars), dynamic aspect chords (Trines, Sextiles, Squares, Oppositions, Conjunctions), and an interactive placement inspector.
  • Real-Time Ephemeris & Retrograde Engine: Mathematical planetary motion tracking based on Keplerian orbital mechanics, velocity derivative calculation for Mercury Retrograde status detection, and real-time Moon illumination percentage and 8-phase classification.
  • Tactile 3D Tarot Spreads: Interactive single-card and 3-card spread reveals (Past • Present • Future) powered by react-native-reanimated 4 with 3D perspective, rotateY spring physics, and tactile haptic feedback via expo-haptics.
  • Dynamic 14-Day Rolling Notifications: Algorithmic notification scheduler predicting rolling daily transits, Moon signs, and vitality scores rather than stale repeating alerts.
  • Full Synastry & Compatibility Analysis: Multi-dimensional relationship scoring analyzing elemental harmony, emotional resonance, communication sync, and deep karmic soul synergy.
  • Resilient Playbook Monetization Architecture: Freemium subscription model with RevenueCat, 24-hour rewarded video Pro unlocks, 31-second adaptive banner lifecycle, 3-tier full-screen ad waterfall (Interstitial → Rewarded Interstitial → Rewarded), and a 10-tap developer backdoor.
  • 100% On-Device Privacy Architecture: Zero personal data transmission; birth dates, coordinates, partner synastry, and tarot logs reside strictly within private local device storage.

Deep Dive: How It Works Under the Hood

Building the living birth chart wheel required bridging astronomical mathematics with high-performance mobile UI rendering. Each celestial body's absolute zodiac degree (0° to 360°) is mapped into polar coordinates using trigonometric functions (x = cx + r * cos(θ), y = cy + r * sin(θ)). To render the sacred geometry of astrological aspects, the engine evaluates angular differences between all planet pairs with customizable orb tolerances (e.g., Trine 120° ± 6°, Square 90° ± 6°, Sextile 60° ± 4°), drawing color-coded aspect chords across the center of the wheel. Touch rotation was implemented using Reanimated shared values and gesture handlers, allowing users to spin the chart smoothly while updating planet inspections on tap.

Technical Implementation

  • Engineered an astronomical calculation library in TypeScript calculating real-time planetary positions, ecliptic longitudes, lunar phases, and Mercury velocity vectors.
  • Created an interactive SVG living birth chart wheel (pp/components/BirthChart.tsx) with dynamic aspect chord geometry and pan-gesture rotation.
  • Implemented a 3D card flip animation in react-native-reanimated 4 with perspective, spring damping, and haptic feedback on card reveal.
  • Architected a platform-resilient monetization context (contexts/PremiumContext.tsx) with graceful fallbacks across Web, Expo Go, and production Android builds.
  • Integrated a 31-second adaptive banner refresh cycle and 3-tier full-screen ad waterfall (useFullScreenAdChain) following battle-tested playbook guidelines.
  • Built a hidden 10-tap version developer backdoor in settings allowing instant testing of Pro features without mock purchases.

Architecture Overview

AstroLogos is organized into a modular architecture: lib/astro.ts handles all astronomical and trigonometric calculations, services/ manages notification scheduling, storage, and viral sharing, contexts/ coordinates global profile and monetization states, and components/ui/ provides reusable cosmic glassmorphism design system elements.

Challenges I Faced Along the Way

A key challenge was building a monetization architecture with RevenueCat and Google AdMob that never crashes in Expo Go or Web environments where native binary modules are absent. By utilizing safe dynamic require patterns and structured fallback state machines, the application runs seamlessly across all development and production targets.

The Technology Stack

Built with React Native, Expo SDK 54, TypeScript, React Native Reanimated 4, Expo Haptics, Expo Notifications, Expo StoreReview, RevenueCat, and Google Mobile Ads.

What I Would Do Differently Next Time

User engagement in utility and lifestyle apps increases dramatically when static content is replaced with real-time math, tactile animations, and generous freemium mechanics (like 24-hour rewarded ad unlocks) that give users immediate value.

Final Reflections

AstroLogos demonstrates how modern React Native engineering, rich visual aesthetics, and disciplined monetization can transform traditional niche apps into engaging, high-retention digital experiences.