This repository implements the Adaptive Cards specification, a JSON-based interactive card format developed by Microsoft. The system provides a cross-platform SDK for parsing, rendering, and interacting with adaptive card payloads. The core is a shared C++ object model that defines all card elements (TextBlock, Image, Container, Column, Table, Inputs, Actions, etc.) and handles JSON serialization/deserialization, schema versioning, fallback, and ID collision detection. Platform-specific renderers for Android (Java/SWIG), iOS (Objective-C), .NET (WPF), UWP (C++/WinRT), and Node.js (TypeScript) convert the parsed card model into native UI components. The architecture is a library with multiple language bindings, not a monolithic application. Key entry points include the AdaptiveCard class for parsing, platform-specific renderer classes (AdaptiveCardRenderer), and registration systems for custom elements/actions. The system also includes a designer tool (Node.js) for visually editing cards, a templating engine (ANTLR-based) for dynamic card generation, and a markdown rendering pipeline (MarkedNet). External dependencies include JSON libraries (Newtonsoft.Json, etc.), markdown parsers (MarkedNet, markdown-it), SWIG for Java bindings, and ANTLR for templating. The codebase demonstrates strong engineering practices with clean abstractions (parser registration, renderer registration, host config), extensive unit and integration tests across platforms, and a consistent fallback mechanism. However, it shows signs of technical drift: multiple platform implementations may diverge in behavior, auto-generated SWIG code requires careful synchronization, and some deprecated properties and commented-out tests indicate legacy cruft. The project is actively maintained with CI pipelines and recent commits.