You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							167 lines
						
					
					
						
							4.0 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							167 lines
						
					
					
						
							4.0 KiB
						
					
					
				
								# Time Safari Platforms — Platform-Specific Considerations
							 | 
						|
								
							 | 
						|
								> **Agent role**: Reference this file for platform-specific details when working
							 | 
						|
								  with TimeSafari development across different platforms.
							 | 
						|
								
							 | 
						|
								## Platform-Specific Considerations
							 | 
						|
								
							 | 
						|
								### Web (PWA)
							 | 
						|
								
							 | 
						|
								- **QR Scanning**: WebInlineQRScanner
							 | 
						|
								
							 | 
						|
								- **Deep Linking**: URL parameters
							 | 
						|
								
							 | 
						|
								- **File System**: Limited browser APIs
							 | 
						|
								
							 | 
						|
								- **Build**: `npm run build:web` (development build)
							 | 
						|
								
							 | 
						|
								### Mobile (Capacitor)
							 | 
						|
								
							 | 
						|
								- **QR Scanning**: @capacitor-mlkit/barcode-scanning
							 | 
						|
								
							 | 
						|
								- **Deep Linking**: App URL open events
							 | 
						|
								
							 | 
						|
								- **File System**: Capacitor Filesystem
							 | 
						|
								
							 | 
						|
								- **Build**: `npm run build:capacitor`
							 | 
						|
								
							 | 
						|
								### Desktop (Electron)
							 | 
						|
								
							 | 
						|
								- **File System**: Node.js fs
							 | 
						|
								
							 | 
						|
								- **Build**: `npm run build:electron`
							 | 
						|
								
							 | 
						|
								- **Distribution**: AppImage, DEB, DMG packages
							 | 
						|
								
							 | 
						|
								## Platform Compatibility Requirements
							 | 
						|
								
							 | 
						|
								### Cross-Platform Features
							 | 
						|
								
							 | 
						|
								- **Core functionality** must work identically across all platforms
							 | 
						|
								
							 | 
						|
								- **Platform-specific enhancements** should be additive, not required
							 | 
						|
								
							 | 
						|
								- **Fallback behavior** must be graceful when platform features unavailable
							 | 
						|
								
							 | 
						|
								### Platform-Specific Capabilities
							 | 
						|
								
							 | 
						|
								- **Web**: Browser APIs, PWA features, responsive design
							 | 
						|
								
							 | 
						|
								- **Mobile**: Native device features, offline capability, app store compliance
							 | 
						|
								
							 | 
						|
								- **Desktop**: File system access, system integration, native performance
							 | 
						|
								
							 | 
						|
								## Build and Distribution
							 | 
						|
								
							 | 
						|
								### Build Commands
							 | 
						|
								
							 | 
						|
								```bash
							 | 
						|
								
							 | 
						|
								# Web (development)
							 | 
						|
								
							 | 
						|
								npm run build:web
							 | 
						|
								
							 | 
						|
								# Mobile
							 | 
						|
								
							 | 
						|
								npm run build:capacitor
							 | 
						|
								npm run build:native
							 | 
						|
								
							 | 
						|
								# Desktop
							 | 
						|
								
							 | 
						|
								npm run build:electron
							 | 
						|
								npm run build:electron:appimage
							 | 
						|
								npm run build:electron:deb
							 | 
						|
								npm run build:electron:dmg
							 | 
						|
								
							 | 
						|
								```
							 | 
						|
								
							 | 
						|
								### Testing Commands
							 | 
						|
								
							 | 
						|
								```bash
							 | 
						|
								
							 | 
						|
								# Web E2E
							 | 
						|
								
							 | 
						|
								npm run test:web
							 | 
						|
								
							 | 
						|
								# Mobile
							 | 
						|
								
							 | 
						|
								npm run test:mobile
							 | 
						|
								npm run test:android
							 | 
						|
								npm run test:ios
							 | 
						|
								
							 | 
						|
								# Type checking
							 | 
						|
								
							 | 
						|
								npm run type-check
							 | 
						|
								npm run lint-fix
							 | 
						|
								
							 | 
						|
								```
							 | 
						|
								
							 | 
						|
								## Key Constraints
							 | 
						|
								
							 | 
						|
								1. **Privacy First**: User identifiers remain private except when explicitly
							 | 
						|
								
							 | 
						|
								   shared
							 | 
						|
								
							 | 
						|
								2. **Platform Compatibility**: Features must work across all target platforms
							 | 
						|
								
							 | 
						|
								3. **Performance**: Must remain performant on older/simpler devices
							 | 
						|
								
							 | 
						|
								4. **Modern Architecture**: New features should use current platform services
							 | 
						|
								
							 | 
						|
								5. **Offline Capability**: Key functionality should work offline when feasible
							 | 
						|
								
							 | 
						|
								## Use Cases to Support
							 | 
						|
								
							 | 
						|
								1. **Community Building**: Tools for finding others with shared interests
							 | 
						|
								
							 | 
						|
								2. **Project Coordination**: Easy proposal and collaboration on projects
							 | 
						|
								
							 | 
						|
								3. **Reputation Building**: Showcasing contributions and reliability
							 | 
						|
								
							 | 
						|
								4. **Governance**: Facilitating decision-making and collective governance
							 | 
						|
								
							 | 
						|
								## Resources
							 | 
						|
								
							 | 
						|
								- **Testing**: `docs/migration-testing/`
							 | 
						|
								
							 | 
						|
								- **Architecture**: `docs/architecture-decisions.md`
							 | 
						|
								
							 | 
						|
								- **Build Context**: `docs/build-modernization-context.md`
							 | 
						|
								
							 | 
						|
								---
							 | 
						|
								
							 | 
						|
								**See also**:
							 | 
						|
								
							 | 
						|
								- `.cursor/rules/app/timesafari.mdc` for core application context
							 | 
						|
								- `.cursor/rules/app/timesafari_development.mdc` for
							 | 
						|
								
							 | 
						|
								  development workflow details
							 | 
						|
								
							 | 
						|
								**Status**: Active platform guidelines
							 | 
						|
								**Priority**: High
							 | 
						|
								**Estimated Effort**: Ongoing reference
							 | 
						|
								**Dependencies**: timesafari.mdc
							 | 
						|
								**Stakeholders**: Development team, Platform teams
							 | 
						|
								
							 | 
						|
								## Model Implementation Checklist
							 | 
						|
								
							 | 
						|
								### Before Platform Development
							 | 
						|
								
							 | 
						|
								- [ ] **Platform Analysis**: Identify all target platforms (web, mobile, desktop)
							 | 
						|
								- [ ] **Feature Requirements**: Understand feature requirements across platforms
							 | 
						|
								- [ ] **Platform Constraints**: Review platform-specific limitations and capabilities
							 | 
						|
								- [ ] **Testing Strategy**: Plan testing approach for all target platforms
							 | 
						|
								
							 | 
						|
								### During Platform Development
							 | 
						|
								
							 | 
						|
								- [ ] **Cross-Platform Implementation**: Implement features across all platforms
							 | 
						|
								- [ ] **Platform Services**: Use current platform services for new features
							 | 
						|
								- [ ] **Performance Optimization**: Ensure performance on older/simpler devices
							 | 
						|
								- [ ] **Offline Capability**: Implement offline functionality where feasible
							 | 
						|
								
							 | 
						|
								### After Platform Development
							 | 
						|
								
							 | 
						|
								- [ ] **Cross-Platform Testing**: Test functionality across all target platforms
							 | 
						|
								- [ ] **Performance Validation**: Verify performance meets requirements
							 | 
						|
								- [ ] **Documentation Update**: Update platform-specific documentation
							 | 
						|
								- [ ] **Team Communication**: Share platform implementation results with team
							 | 
						|
								
							 |