Mobile App Templates¶
This document provides an overview of mobile app templates available in the ConnectSoft ecosystem. It is written for mobile engineers and architects understanding how to generate and structure mobile applications.
ConnectSoft provides templates for generating mobile applications using cross-platform and native frameworks, designed to integrate seamlessly with backend microservices.
Note
Mobile templates are designed to work with backend microservices generated by the Factory. They follow ConnectSoft's architectural principles and integrate with ConnectSoft platforms for authentication, APIs, and real-time features.
Purpose¶
Mobile templates enable the creation of:
- Cross-platform apps - Single codebase for iOS and Android
- Native apps - Platform-specific native applications
- Hybrid apps - Web-based mobile applications
- Progressive Web Apps (PWAs) - Web apps with mobile capabilities
- Consistent UX - Shared UI/UX patterns across platforms
Supported Platforms¶
Cross-Platform Frameworks¶
.NET MAUI (Multi-platform App UI)¶
- Template: .NET MAUI application template
- Features:
- Single codebase for iOS, Android, Windows, macOS
- C# and XAML
- Native performance
- Platform-specific code support
- MVVM pattern
- Use Cases: Enterprise apps, business applications, .NET-centric teams
React Native¶
- Template: React Native application template
- Features:
- JavaScript/TypeScript
- Native components
- Hot reload
- Large ecosystem
- Platform-specific modules
- Use Cases: Modern mobile apps, social apps, consumer applications
Flutter¶
- Template: Flutter application template
- Features:
- Dart language
- Material Design and Cupertino widgets
- Hot reload
- High performance
- Rich animations
- Use Cases: Consumer apps, games, high-performance UIs
Native Platforms¶
iOS (Swift/SwiftUI)¶
- Template: iOS native application template
- Features:
- Swift/SwiftUI
- Native iOS components
- iOS-specific features
- App Store integration
- Use Cases: iOS-only apps, platform-specific features
Android (Kotlin/Jetpack Compose)¶
- Template: Android native application template
- Features:
- Kotlin
- Jetpack Compose
- Native Android components
- Google Play integration
- Use Cases: Android-only apps, platform-specific features
Template Structure¶
A mobile application generated from a template follows this structure:
MyMobileApp/
├── src/
│ ├── views/ # Screen/View components
│ ├── viewmodels/ # ViewModels (MVVM)
│ ├── models/ # Data models
│ ├── services/ # API services
│ ├── utils/ # Utility functions
│ └── resources/ # Images, fonts, etc.
├── platform/ # Platform-specific code
├── tests/ # Test files
└── CI/CD pipeline
Key Features¶
Architecture Patterns¶
- MVVM - Model-View-ViewModel pattern
- Clean Architecture - Separation of concerns
- Dependency Injection - IoC container support
- State Management - Reactive state management
API Integration¶
- REST API clients - Generated API clients
- GraphQL clients - GraphQL query support
- Authentication - OAuth2/OpenID Connect
- Offline support - Local caching and sync
- Error handling - Standardized error handling
UI/UX¶
- Responsive design - Adaptive layouts
- Material Design - Material components (Android)
- Cupertino - iOS design language
- Custom themes - ConnectSoft branding
- Accessibility - WCAG-compliant UI
Platform Integration¶
- Push notifications - Firebase, APNs integration
- Biometric auth - Face ID, Touch ID, fingerprint
- Camera/Gallery - Media capture and selection
- Location services - GPS and location APIs
- File system - Local storage and file access
Testing¶
- Unit tests - ViewModel and service tests
- Integration tests - API integration tests
- UI tests - Automated UI testing
- Platform tests - Platform-specific testing
Integration with Backend¶
Mobile templates integrate with Factory-generated microservices:
- API clients - Auto-generated API clients
- Authentication - Identity platform integration
- Real-time - WebSocket/SignalR support
- Push notifications - Backend push notification service
- Multi-tenant - Tenant-aware mobile apps
Deployment¶
App Stores¶
- Apple App Store - iOS app distribution
- Google Play Store - Android app distribution
- Enterprise distribution - Internal app distribution
- CI/CD pipelines - Automated build and deployment
Build and Release¶
- Automated builds - CI/CD pipeline integration
- Code signing - Certificate management
- Versioning - Semantic versioning
- Release management - Staged rollouts
Related Documents¶
- Templates Overview - Overview of all templates
- Microservice Template - Backend API templates
- Frontend and CMS Templates - Web frontend templates
- Technology Stack - Technologies and frameworks