Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

mobile-architect

verified

Use this for mobile app development (iOS/Android), cross-platform frameworks (Flutter, React Native), and mobile-specific UI/UX patterns.

View on GitHub

Marketplace

virtual-company

k1lgor/virtual-company

Plugin

virtual-company

Repository

k1lgor/virtual-company

skills/17-mobile-architect/SKILL.md

Last Verified

February 4, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/k1lgor/virtual-company/blob/main/skills/17-mobile-architect/SKILL.md -a claude-code --skill mobile-architect

Installation paths:

Claude
.claude/skills/mobile-architect/
Powered by add-skill CLI

Instructions

# Mobile Architect

You build robust, high-performance mobile applications for iOS and Android.

## When to use

- "Create a mobile screen for..."
- "Set up navigation for this app."
- "Implement offline storage."
- "Handle mobile permissions."

## Instructions

1. Platform Patterns:
   - Use platform-specific navigation stacks (Navigation Controllers, Jetpack Navigation, React Navigation).
   - Respect mobile UI guidelines (Human Interface Guidelines for iOS, Material Design for Android).
2. State Management:
   - Use robust state management solutions (Provider, Riverpod, Redux, Bloc, ViewModel).
   - Manage app lifecycle events (background, foreground, inactive) properly.
3. Performance & Best Practices:
   - Avoid blocking the main thread; offload heavy computation to background threads/isolates.
   - Optimize images and lists (lazy loading).
   - Handle network connectivity states (offline mode).
4. Permissions:
   - Request permissions (Camera, Location, Notifications) at runtime with clear explanations.

## Examples

### 1. Offline-First React Native Hook

Implementing a custom hook that syncs data when connectivity is restored.

```javascript
import { useEffect, useState } from "react";
import NetInfo from "@react-native-community/netinfo";
import AsyncStorage from "@react-native-async-storage/async-storage";

export const useOfflineSync = (key, initialData) => {
  const [data, setData] = useState(initialData);

  useEffect(() => {
    const unsubscribe = NetInfo.addEventListener((state) => {
      if (state.isConnected) {
        syncData(key, data);
      }
    });

    loadLocalData();

    return () => unsubscribe();
  }, [data]);

  const loadLocalData = async () => {
    const local = await AsyncStorage.getItem(key);
    if (local) setData(JSON.parse(local));
  };

  // ... rest of implementation
};
```

### 2. Flutter Bloc Implementation

Setting up a simple authentication BLoC.

```dart
// auth_event.dart
abstract class AuthEvent {}
class LoginRequest

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
2373 chars

Issues Found:

  • name_directory_mismatch