SurfTimer.Shared is a shared .NET 8 class library used across the SurfTimer solution.
It provides a centralized foundation for common logic and data structures, ensuring consistent behavior between different projects.
- DTOs and Entities: Strongly-typed models representing SurfTimer data.
- Custom Data Types & Handlers: Type-safe conversions and helpers for specialized values.
- Database Integration: Built-in support for MySqlConnector and Dapper.
- Code Reuse: Centralizes logic shared by both the API and the Counter-Strike 2 plugin.
Both SurfTimer.Api
and SurfTimer.Plugin
(also called Timer) rely on this library.
They will NOT work without it, as it contains the core definitions required to interact with the database and exchange data.