Skip to content
Skillv1.0.0

moai-domain-mobile-app

Enterprise mobile development with React Native 0.76+, Flutter 3.24+, Capacitor 6.x, cross-platform patterns, testing, CI/CD

by majiayu000(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from majiayu000/claude-skill-registry-data (development/moai-domain-mobile-app-jg-chalk-io-nora-livekit/SKILL.md). Install upstream with npx skills add majiayu000/claude-skill-registry-data --skill moai-domain-mobile-app-jg-chalk-io-nora-livekit. Copyright stays with the author.

moai-domain-mobile-app

Enterprise Mobile Development Excellence

Version: 4.0.0 (React Native 0.76+, Flutter 3.24+) Technology Stack: Modern async mobile development with CI/CD automation Focus: Cross-platform strategies, performance optimization, production deployment


📖 Progressive Disclosure

Level 1: Quick Reference (Core Concepts)

Purpose: Enterprise mobile development covering React Native, Flutter, Capacitor with modern patterns.

Core Stack (2025 Stable):

  • React Native: 0.76+ (New Architecture default)
  • Flutter: 3.24+ (Dart 3.5+)
  • Expo: 52.x (EAS Build/Submit)
  • Navigation: React Navigation 6.x, Flutter Navigator 2.x
  • State: Provider 6.x, GetX 4.x, Redux Toolkit
  • Testing: Detox 20.x (E2E), Jest 30.x (Unit)
  • CI/CD: GitHub Actions, fastlane 2.x, EAS Build

Quick Setup Patterns:

React Native App Structure:

// Main app with modern navigation
import { NavigationContainer } from '@react-navigation/native';
import { createNativeStackNavigator } from '@react-navigation/native-stack';
import AsyncStorage from '@react-native-async-storage/async-storage';

export const AppNavigator = () => (
  <NavigationContainer>
    <Stack.Navigator>
      <Stack.Screen name="Home" component={HomeScreen} />
      <Stack.Screen name="Profile" component={ProfileScreen} />
    </Stack.Navigator>
  </NavigationContainer>
);

Flutter App Structure:

import 'package:flutter/material.dart';
import 'package:flutter/services/navigation.dart';

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter App',
      theme: ThemeData(primarySwatch: Colors.blue),
      home: MyHomePage(),
      routes: {
        '/': (context) => MyHomePage(),
        '/profile': (context) => ProfilePage(),
      },
    );
  }
}

When to Use:

  • ✅ Native iOS/Android app development
  • ✅ Cross-platform apps with shared business logic
  • ✅ Web app deployment (Capacitor/Ionic)
  • ✅ Performance optimization and battery management
  • ✅ E2E automation and CI/CD integration

Level 2: Practical Implementation (Essential Patterns)

Pattern 1: React Native Architecture (0.76+)

Modern Setup:

npx react-native@latest init MyApp --template
cd MyApp
npm install @react-navigation/native @react-native-async-storage @react-native-community/netinfo

Async Data Management:

const [products, setProducts] = useState<Product[]>([]);
const [loading, setLoading] = useState(false);
const [isOnline, setIsOnline] = useState(true);

// Load from cache first, then API
const loadProducts = useCallback(async () => {
  try {
    setLoading(true);

    // Try cache first
    const cached = await AsyncStorage.getItem('products');
    if (cached) {
      setProducts(JSON.parse(cached));
    }

    // Fetch fresh data if online
    if (isOnline) {
      const response = await fetch('https://api.example.com/products');
      const data = await response.json();
      setProducts(data);
      await AsyncStorage.setItem('products', JSON.stringify(data));
    }
  } finally {
    setLoading(false);
  }
}, [isOnline]);

Pattern 2: Testing Strategy

Detox E2E Testing:

// detox/e2e/app.config.js
module.exports = {
  testEnvironment: 'node',
  testRunner: 'jest',
  setupFilesAfterEnv: ['<rootDir>/jest.setup.js'],
};

Component Testing:

// Component Testing with React Testing Library
import { render, screen, fireEvent } from '@testing-library/react-native';
import { renderHook } from '@testing-library/react-native');

it('should render correctly', () => {
  render(<HomeScreen />);
  expect(screen.getByText('Welcome')).toBeTruthy();
});

Pattern 3: Performance Optimization

Image Optimization:

const OptimizedImage = ({ uri, style, resizeMode, width, height }) => {
  return (
    <Image
      source={{ uri }}
      style={style}
      resizeMode={resizeMode}
      width={width}
      height={height}
      onLoad={handleImageLoad}
      onError={() => console.log('Image failed to load')}
    />
  );
};

Level 3: Advanced Integration (Complex Scenarios)

Pattern 1: Capacitor Plugin Development

Plugin Structure:

// capacitor-plugin/src/index.ts
import { registerPlugin } from '@capacitor/core';

export interface CustomPluginPlugin {
  echo(options: { value: string }): Promise<{ value: string }>;
  openNativeScreen(): Promise<void>;
}

export const CustomPlugin = registerPlugin<CustomPlugin>('CustomPlugin', {
  web: () => import('./web').then(m => new m.CustomPluginWeb()),
});

React Native Integration:

// capacitor.config.ts
import { CapacitorConfig } from '@capacitor/cli';

const config: CapacitorConfig = {
  plugins: [
    {
      name: 'Camera',
      plugins: ['camera', 'filesystem']
    }
  ]
};

export default config;

Pattern 2: Cross-Platform Business Logic

Shared Service Architecture:

// services/user-service.ts
export class UserService {
  async getUserProfile(userId: string): Promise<UserProfile> {
    // Shared implementation across platforms
    return await this.apiCall(`/users/${userId}`);
  }
}

Platform-Specific Implementations:

// services/platform-specific/web-service.ts
export class WebUserService implements UserService {
  async getUserProfile(userId: string): Promise<UserProfile> {
    const response = await fetch(`/api/users/${userId}`);
    return response.json();
  }
}

// services/platform-specific/mobile-service.ts
export class MobileUserService implements UserService {
  async getUserProfile(userId: string): Promise<UserProfile> {
    const user = await this.realm.objects.get(userId);
    return user.profile || null;
  }
}

Pattern 3: Advanced Production Features

Sentry Integration:

import * as Sentry from '@sentry/react-native';
import { ReactNode } from 'react';

Sentry.init({
  dsn: 'https://@[key]@[domain].ingest.sentry.io/[projectId]',
  tracesSampleRate: 1.0,
  environment: __DEV__ ? 'development' : 'production',
  integrations: [
    new Sentry.BrowserTracing(),
    new Sentry.ReactNavigationRoutingInstrumentation()
  ]
});

Custom Metrics:

import Analytics from 'analytics-react-native';
import { MetricsCollector } from './metrics';

const AppAnalytics = Analytics.getAnalytics({
  trackAppSessions: true,
  trackScreen: true,
  trackUserProperties: true,
  trackExceptions: true
});

Analytics.track('screen_view', { screen: 'Home', platform: platform });

🎯 Decision Matrix

Scenario Best Choice Why
Dashboard App Tabler Icons (5900+) Optimized for admin UI
Tailwind Project Heroicons (official) Native integration
Multiple Weights Phosphor (6 weights) Design flexibility
200K+ Icons Iconify (universal) Complete coverage
Compact UI Radix Icons (~5KB) Minimal bundle

📊 Technology Comparison

Framework Icons Bundle Size Use Case Type System
React Native 1000+ Native apps TypeScript Medium
Flutter 800+ Cross-platform Dart High
Capacitor 500+ Hybrid apps Web + native Medium
Ionic 1300+ Hybrid apps Angular/React Medium

🔗 Related Skills

  • Skill("moai-domain-frontend") – UI/UX integration patterns
  • Skill("moai-domain-testing") - Mobile testing strategies
  • Skill("moai-domain-devops") - CI/CD and deployment
  • Skill("moai-domain-backend") - API integration and data management

Version: 4.0.0 Enterprise Last Updated: 2025-11-18 Status: Production Ready Stack: React Native 0.76+, Flutter 3.24+, Capacitor 6.x

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/majiayu000-claude-skill-registry-data-moai-domain-mobile-5cbfd5/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

majiayu000-claude-skill-registry-data-moai-domain-mobile-5cbfd5.ocm.jsonjson
{
  "ocm": "1",
  "id": "majiayu000-claude-skill-registry-data-moai-domain-mobile-5cbfd5",
  "kind": "skill",
  "name": "moai-domain-mobile-app",
  "description": "Enterprise mobile development with React Native 0.76+, Flutter 3.24+, Capacitor 6.x, cross-platform patterns, testing, CI/CD",
  "publisher": "majiayu000",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "math"
    ],
    "tags": [
      "skill-md",
      "mobile",
      "react-native",
      "flutter",
      "capacitor",
      "ionic",
      "cross-platform",
      "testing",
      "deployment",
      "github"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "Enterprise mobile development with React Native 0.76+, Flutter 3.24+, Capacitor 6.x, cross-platform patterns, testing, CI/CD"
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "github",
      "repository": "https://github.com/majiayu000/claude-skill-registry-data",
      "path": "development/moai-domain-mobile-app-jg-chalk-io-nora-livekit/SKILL.md",
      "ref": "f863c11651055f498e1466492dc2a0d95721d2d5",
      "url": "https://github.com/majiayu000/claude-skill-registry-data/blob/f863c11651055f498e1466492dc2a0d95721d2d5/development/moai-domain-mobile-app-jg-chalk-io-nora-livekit/SKILL.md",
      "key": "majiayu000/claude-skill-registry-data/development/moai-domain-mobile-app-jg-chalk-io-nora-livekit/SKILL.md"
    },
    "allowed_tools": [
      "Read,",
      "Bash,",
      "WebSearch,",
      "WebFetch,",
      "mcp__context7__resolve-library-id,",
      "mcp__context7__get-library-docs"
    ]
  },
  "instructions": "# moai-domain-mobile-app\n\n**Enterprise Mobile Development Excellence**\n\n> **Version**: 4.0.0 (React Native 0.76+, Flutter 3.24+)\n> **Technology Stack**: Modern async mobile development with CI/CD automation\n> **Focus**: Cross-platform strategies, performance optimization, production deployment\n\n---\n\n## 📖 Progressive Disclosure\n\n### Level 1: Quick Reference (Core Concepts)\n\n**Purpose**: Enterprise mobile development covering React Native, Flutter, Capacitor with modern patterns.\n\n**Core Stack (2025 Stable)**:\n- **React Native**: 0.76+ (New Architecture default)\n- **Flutter**: 3.24+ (Dart 3.5+)\n",
  "cost": {
    "context_tokens": 1979
  }
}

Fetch it by URL: GET /api/v1/registry/majiayu000-claude-skill-registry-data-moai-domain-mobile-5cbfd5/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.