Skip to content

Latest commit

 

History

History
77 lines (59 loc) · 2.78 KB

File metadata and controls

77 lines (59 loc) · 2.78 KB

Windows App SDK – AI Contributor Guide

Comprehensive guidance for AI contributions to the Windows App SDK.

Quick Reference

  • Build: Use BuildAll.ps1 or BuildAll.cmd at repo root (builds the full SDK solution)
  • Run: Deploy and test on Desktop (x64, x86, ARM64) in Debug and Release configurations
  • Verify: Run tests with TestAll.ps1 or TestAll.cmd
  • Exit code 0 = success – do not proceed if build fails

Build Examples

./BuildAll.ps1                                       # Build all SDK components
./BuildAll.ps1 -Platform x64 -Configuration Release # Specific platform and config
msbuild WindowsAppRuntime.sln /p:Configuration=Debug /p:Platform=x64

Key Rules

  • Code should be production-quality – follow SDK coding standards and best practices
  • Follow modular design – each component should have clear boundaries and responsibilities
  • Support all platforms: x64, x86, ARM64 in both Debug and Release
  • Set minimum supported OS version to Windows 10 version 1809 (build 17763)
  • Include copyright headers in all source files
  • Build clean with no warnings or errors
  • Ensure all tests pass before submitting changes

Project Structure

The SDK follows this organization:

\dev                    # Source code for SDK components
     \<ComponentName>   # Individual SDK component
\build                  # Build scripts and pipeline definitions
\test                   # Test projects
\tools                  # Development tools and utilities
\specs                  # Feature specifications
\docs                   # Documentation
  • ComponentName: SDK component (e.g., AppLifecycle, DynamicDependency, MRTCore)
  • Language: Primarily C++ (C++/WinRT) with some C# projections
  • Tests: Located under \test with component-specific test projects

Style Enforcement

  • C#: Follow .editorconfig at repo root (4-space indent, Allman braces, UTF-8 BOM)
  • C++: Use C++/WinRT; follow docs/Coding-Guidelines.md
  • XAML: Use consistent formatting

Copyright Headers

For C#/C++/IDL files:

// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.

For XAML files:

<!-- Copyright (c) Microsoft Corporation.
     Licensed under the MIT License. -->

When to Ask for Clarification

  • Ambiguous requirements after reviewing docs
  • Cross-feature impact unclear
  • API usage patterns not well documented

Detailed Documentation