• Pre-Release

    claunia released this 2025-10-16 06:44:08 +00:00 | 254 commits to main since this release

    📅 Originally published on GitHub: Fri, 31 Oct 2025 16:20:08 GMT
    🏷️ Git tag created: Thu, 16 Oct 2025 06:44:08 GMT

    ElectronNET.Core

    Highlights

    • Complete MSBuild Integration: Eliminated CLI tool dependency, moved all build processes to MSBuild with deep Visual Studio integration
    • Modernized Architecture: Restructured process lifecycle with .NET launching first and running Electron as child process for better control and reliability
    • Cross-Platform Development: Build and debug Linux applications directly from Windows Visual Studio via WSL integration
    • Flexible Electron Versioning: Removed version lock-in, users can now select any Electron version with build-time validation
    • Enhanced Debugging Experience: ASP.NET-first debugging with Hot Reload support and improved process termination handling
    • Console App Support: No longer requires ASP.NET - now works with simple console applications for file system or remote server HTML/JS

    Build System & Project Structure

    • Eliminated electron.manifest.json configuration file, replaced with MSBuild project properties
    • Introduced new package structure: ElectronNET.Core (main package), ElectronNET.Core.Api (API definitions), ElectronNET.Core.AspNet (ASP.NET integration)
    • Added Runtime Identifier (RID) selection as part of project configuration
    • Restructured build folder layout to use standard .NET format (bin\net8.0\win-x64) instead of bin\Desktop
    • Implemented incremental build support for Electron assets to improve build performance
    • Added custom MSBuild tasks for Electron-specific build operations

    Development Experience

    • Implemented unpackaged run-mode for development using regular .NET builds with unpackaged Electron configuration
    • Added support for building Linux packages on Windows via WSL integration
    • Enabled running and debugging Linux application outputs on Windows through WSL
    • Integrated TypeScript compilation with ASP.NET tooling for consistent builds
    • Added process orchestration supporting 8 different launch scenarios (packaged/unpackaged � console/ASP.NET � dotnet-first/electron-first)

    Debugging & Runtime

    • Dramatically improved debugging experience with ASP.NET-first launch mode
    • Added Hot Reload support for ASP.NET code during development
    • Implemented proper process termination handling for all exit scenarios
    • Minimized startup times through optimized build and launch procedures

    Technical Improvements

    • Enhanced splash screen handling with automatic path resolution
    • Improved ElectronHostHook integration as proper npm package dependency
    • Updated to latest TypeScript version with ESLint configuration
    • Added support for custom main.js files in projects
    • Implemented version management through common.props file
    • Added build-time Electron version compatibility validation

    Package & Distribution

    • Integrated MSBuild publishing mechanisms for creating Electron packages
    • Added folder publishing support with improved parameter handling
    • Implemented automated package.json generation from MSBuild properties
    • Added GitHub release automation with proper versioning
    • Reduced package sizes by eliminating unnecessary TypeScript dependencies

    Migration & Compatibility

    • Maintained backward compatibility for existing ElectronHostHook implementations
    • Removed ASP.NET requirement: Now works with simple console applications for file system or remote server HTML/JS scenarios
    • Added support for both console and ASP.NET Core application types
    • Preserved all existing Electron API functionality while modernizing architecture
    • Added migration path for existing projects through updated package structure
      This represents a comprehensive modernization of Electron.NET, addressing the major pain points around debugging, build complexity, and platform limitations while maintaining full API compatibility.
    Downloads