Skip to content

Repository files navigation

MoveM8 🏃‍♀️

"Because even statues move sometimes."

MoveM8 is a React Native mobile app that helps users build healthy movement habits through humor, gamification, and gentle nudges. Instead of being serious and intimidating, MoveM8 uses playful notifications and rewards to encourage activity.

🎯 Features

MVP Features ✅

  • Motion Detection: Uses device sensors to detect inactivity periods
  • Humorous Notifications: Randomized playful nudges with customizable tone
  • Gamification: Points system and daily streaks for movement
  • Privacy-First: No GPS tracking, only local sensor data
  • Customizable Settings: Adjustable inactivity thresholds and humor styles

Future Features 🚀

  • Power Mode: Lock-screen step challenges
  • Social Features: Friend challenges and accountability
  • Environment-as-Game: Map-based movement adventures

🏗️ Architecture

MoveM8 uses a modular "agent" architecture:

Core Agents

  1. InactivityMonitorAgent - Tracks accelerometer/gyroscope/step data
  2. NotificationAgent - Delivers humorous nudges with randomized templates
  3. GamificationAgent - Manages points, streaks, and achievements
  4. PowerModeAgent (Future) - Lock-screen movement challenges
  5. SocialAgent (Future) - Friend matching and guilt pings

Services

  • SensorService - Handles motion sensor permissions and data
  • StorageService - Persistent data storage with AsyncStorage

🚀 Getting Started

Prerequisites

  • Node.js 16+
  • React Native development environment
  • Android Studio (for Android development)
  • Xcode (for iOS development)

Installation

  1. Clone and install dependencies:

    git clone <repository-url>
    cd move-m8
    npm install
  2. Install iOS dependencies (macOS only):

    cd ios && pod install && cd ..
  3. Start Metro bundler:

    npm start
  4. Run on device/emulator:

    # Android
    npm run android
    
    # iOS
    npm run ios

Permissions Setup

MoveM8 requires these permissions:

  • Motion Sensors: Detects activity/inactivity
  • Push Notifications: Delivers humorous nudges

The app will request these permissions on first launch.

📱 Usage

First Time Setup

  1. Open MoveM8
  2. Grant motion and notification permissions
  3. Configure your preferences:
    • Inactivity threshold (15/30/60 minutes)
    • Humor tone (Snarky/Motivational/Lighthearted)
    • Enable/disable gamification

Daily Usage

  • Monitoring: App runs in background detecting inactivity
  • Nudges: Receive funny notifications when inactive too long
  • Movement: Get rewarded with points for responding to nudges
  • Streaks: Build daily movement streaks for bonus points

🎮 Gamification System

Points & Rewards

  • Movement Response: 10 points per nudge response
  • Streak Multipliers: 1.5x (3+ days), 2x (7+ days), 3x (30+ days)
  • Levels: Advance every 100 points

Streaks

  • Daily consecutive activity tracking
  • Bonus multipliers for longer streaks
  • Reset on missed days (but progress saved)

⚙️ Configuration

Inactivity Thresholds

  • High Sensitivity (15 min): Quick detection, more frequent nudges
  • Medium Sensitivity (30 min): Balanced approach
  • Low Sensitivity (60 min): Gentle detection, fewer nudges

Humor Tones

  • Snarky 🤨: Sassy, playful messages
  • Motivational 💪: Encouraging, positive messages
  • Lighthearted 😇: Fun, gentle messages

🔒 Privacy & Security

MoveM8 is designed with privacy in mind:

  • No GPS tracking - Only uses device motion sensors
  • Local data storage - All data stays on your device
  • No data sharing - No cloud sync or third-party sharing
  • Minimal permissions - Only motion and notifications required

🛠️ Development

Project Structure

src/
├── agents/           # Core business logic agents
├── components/       # Reusable UI components
├── screens/          # Main app screens
├── services/         # Data and external services
├── types/            # TypeScript type definitions
├── utils/            # Helper utilities
└── constants/        # App constants and templates

Key Technologies

  • React Native: Cross-platform mobile development
  • TypeScript: Type-safe development
  • React Navigation: Screen navigation
  • AsyncStorage: Local data persistence
  • React Native Sensors: Motion detection
  • Push Notifications: Local notifications

Building for Production

# Android APK
cd android && ./gradlew assembleRelease

# iOS (requires Xcode)
cd ios && xcodebuild -workspace MoveM8.xcworkspace -scheme MoveM8 -configuration Release

📊 KPIs & Success Metrics

MVP Goals

  • Day 1 Retention: ≥50%
  • User Engagement: ≥3 notifications read daily
  • Gamification Adoption: ≥70% using streaks within first week
  • Viral Potential: ≥10% screenshot sharing

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • Built with ❤️ for healthier, happier lives
  • Inspired by the need for fun approaches to wellness
  • Special thanks to the React Native community

Ready to move more? Download MoveM8 today! 🚀

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages