Add docs for AcBinary MVC formatters and pipeline updates Comprehensive documentation for new ASP.NET Core MVC formatters supporting AcBinary, including registration, media type, request/response flow, error handling, and future plans. Updated project and topic docs to reference MVC formatters and folder structure. Added performance planning entry for StreamPipeWriter congestion fallback. Expanded markerless schema lane rationale and updated architecture docs to reflect MVC formatter integration. Improved navigation and layering documentation. |
||
|---|---|---|
| .. | ||
| Compression | ||
| Consts | ||
| Enums | ||
| Extensions | ||
| Helpers | ||
| Interfaces | ||
| Loggers | ||
| Properties | ||
| Serializers | ||
| docs | ||
| AcDomain.cs | ||
| AyCode.Core.csproj | ||
| README.md | ||
README.md
AyCode.Core
@project { type = "framework" }
Core library for the AyCode platform. Targets .NET 9 (set in AyCode.Core.targets). Provides serialization (Binary, JSON, Toon), compression, logging, validation, and shared utilities.
Documentation
| Document | Topic |
|---|---|
BINARY_FORMAT.md |
Binary wire format spec (stream layout, type markers) |
BINARY_FEATURES.md |
Binary features (interning, ref tracking, property ordering) |
BINARY_OPTIONS.md |
Binary configuration options & presets |
LOGGING.md |
Logging framework (hierarchy, config, ILogger bridge) |
Folder Structure
| Folder | Purpose | README |
|---|---|---|
Compression/ |
Brotli, GZip, LZ4 compression (pure managed, WASM-compatible) | README |
Consts/ |
Project-wide constants, error codes, regex validation, environment config | README |
Enums/ |
Shared enums: AppType, MessageContextType, TrackingState | README |
Extensions/ |
Collection merge/sync, serialization extensions, utility extensions | README |
Helpers/ |
Token generation, observable collections, JSON utilities, password hashing, task helpers | README |
Interfaces/ |
Core interfaces: IId<T>, IForeignKey, IAcSerializableToJson | README |
Loggers/ |
Custom logging framework with MS.Extensions.Logging integration | README |
Serializers/ |
Serialization framework: Binary, JSON, Toon formats on shared infrastructure | README |
Root Files
AcDomain.cs— Singleton for process-level state: process name, build type detection (IsDeveloperVersion/IsProductVersion), processor count, thread-safe unique ID generators (NextUniqueInt32,NextUniqueInt64).
Dependencies
| Dependency | Purpose |
|---|---|
AyCode.Utils |
Shared utilities (project reference) |
AyCode.Core.Serializers.SourceGenerator |
Binary serializer source generation (analyzer) |
AutoMapper |
Object mapping |
MessagePack |
MessagePack serialization |
Newtonsoft.Json |
JSON serialization (legacy, alongside System.Text.Json) |
Microsoft.Extensions.Configuration.* |
appsettings.json + environment variable support |
Microsoft.Extensions.Logging.Abstractions |
Logging abstractions |