# XNA project migration inventory
Guide: https://yenra.com/xna/
Purpose: select and validate one small port before committing to full migration.
Original source revision and backup; license/asset rights; reproducible old build:
XNA version; .NET/runtime; platforms; third-party dependencies; build tools:
Assets: original source formats, processors, fonts, shaders, audio, content references:
APIs: Storage, GamerServices, Net, platform-specific calls, native libraries:
Target MonoGame version, backend, OS and toolchain (record exact versions):
First slice: launch -> input -> one level -> sound -> pause -> menu:
Add save/load to the slice if it is a critical dependency for your game:
Baseline captures: resolution, coordinates, timing, controller mapping, save contents:
Tests: clean build, content build, resize/fullscreen, focus loss, audio, save reload:
Known differences: shader compiler/backend, removed APIs, graphics offset behavior:
Decision per dependency: port / replace / remove feature / investigate:
Open blockers; estimated work with confidence range; owner; next proof:
Preserve the original source assets and build instructions. Record intentional
behavior differences. Successful compilation alone does not validate a port.
Source: https://docs.monogame.net/articles/migration/migrate_xna.html
