Setting up UTM virtual machine on macOS for testing Windows and Linux Electron applications without physical hardware. Apple Silicon ARM64 architecture requires specific tools for x86 compatibility. Complete walkthrough covering UTM installation, Crystal Fetch ISO downloader for Windows 11, VM configuration, and critical disk space warning from real testing experience. Why Virtual Machines for Electron Development: Building macOS apps with Electron but need Windows/Linux testing Apple Silicon (M-series) uses ARM64 architecture incompatible with standard Windows/Linux UTM provides ARM64-to-x86 compatibility layer for Mac VMware no longer works properly on Apple Silicon processors Intel-based solutions don't translate to ARM architecture Cross-platform distribution requires testing on actual target OS UTM Setup Process: Download UTM from mac.getutm.app (free version, avoid App Store $9.99) Install Crystal Fetch ISO Downloader from Mac App Store for Windows ISOs Select Windows 10 or Windows 11 based on testing requirements Choose Apple Silicon architecture in Crystal Fetch settings Download latest Windows 11 version ISO file Open UTM and create new virtual machine VM Configuration Steps: Click create virtual machine in UTM interface Select virtualize option then choose Windows Allocate RAM (8GB recommended for testing) Assign CPU cores based on available resources Browse and select downloaded Windows 11 ISO file CRITICAL: Set disk size to minimum 30GB (not 20GB) Enable both UEFI boot and TPM 2.0 options Continue through setup wizard Critical Disk Space Warning: 20GB disk fills completely making VM unusable Windows 11 uses approximately 19GB after installation No room for application testing or updates Must delete VM and recreate with larger disk Recommend 30GB minimum, preferably 35-40GB Cannot resize disk after VM creation in UTM Perfect For: Electron.js developers on macOS targeting Windows/Linux Solo founders building cross-platform desktop applications Teams without dedicated Windows/Linux testing hardware Apple Silicon Mac users needing x86 compatibility Anyone in macOS 101 Electron series Developers avoiding expensive hardware purchases Common Issues and Solutions: Low disk space: Use minimum 30GB allocation Performance lag: Allocate more RAM and CPU cores ISO download fails: Try different Crystal Fetch version selection VM won't boot: Ensure UEFI and TPM 2.0 enabled Shared folders not working: Consult UTM user guide Network connectivity issues: Check UTM network settings Upcoming Content Preview: Google OAuth integration in Electron applications Cannot open browser window directly in Electron for Google sign-in Google flags embedded browser auth as spam/security risk Solution requires Next.js server as authentication intermediary Full tutorial coming in next video Prerequisites: macOS with Apple Silicon (M1, M2, M3, M4 processors) Minimum 16GB RAM recommended for VM allocation 50GB+ free disk space for VM and ISO files Basic understanding of Electron.js development Completed previous macOS 101 series videos Cost Considerations: UTM completely free from official website Crystal Fetch ISO Downloader free from App Store Avoid UTM from Mac App Store ($9.99 unnecessary) Windows 11 download free for testing/development No additional licenses needed for VM testing Timestamps: 0:00 - Introduction: Cross-Platform Testing Requirements 0:39 - Why UTM for Apple Silicon Macs 1:04 - Downloading UTM and Crystal Fetch 1:37 - Crystal Fetch ISO Download Process 2:26 - Creating Virtual Machine in UTM 3:10 - CRITICAL: Disk Space Warning (30GB Minimum) 3:46 - Installation Process and Next Steps 4:27 - Testing Applications in Virtual Environment 4:57 - Preview: Google OAuth in Electron Apps #UTM #VirtualMachine #AppleSilicon #ElectronJS #CrossPlatform #macOSDevelopment #Windows11 #WindowsOnMac #AppTesting #DeveloperTools #M1Mac #M2Mac #ARM64 #VirtualizationSoftware #SoftwareTesting