.NET library for general-purpose, modern coding
Top 47.2% on sourcepulse
Towel is a comprehensive .NET library designed to enhance developer productivity by providing a wide array of data structures, algorithms, mathematical functions, and utility extensions. It targets developers seeking to incorporate robust, well-tested components into their .NET applications, aiming to make coding more "towelerable" with a focus on modern practices.
How It Works
Towel leverages generic programming and .NET's System.Span<T>
for high-performance operations. It implements numerous algorithms, including a wide variety of sorting and searching methods, graph traversal (A*, Dijkstra, BFS), and sequence permutations/combinations. The library also features advanced data structures like AVL trees, Red-Black trees, B-trees, Skip Lists, Tries, and multi-dimensional Omnitrees for spatial partitioning. Mathematical operations utilize runtime compilation via System.Linq.Expressions
for efficient, type-safe generic math.
Quick Start & Requirements
Install-Package Towel
Highlighted Details
Angle
, Speed
, Force
).System.Random
, string manipulation, reflection, and console interaction.Maintenance & Community
The project is actively maintained by Zachary Patten. Community engagement is encouraged through GitHub Discussions, Issues, and Pull Requests.
Licensing & Compatibility
The library is licensed under the MIT License, permitting commercial use and integration into closed-source projects.
Limitations & Caveats
The project explicitly states it does not adhere to Semantic Versioning and may introduce breaking changes to keep up with modern .NET practices. Some advanced features, like ValueLazy<T>
, are noted as potentially unsafe if the struct is copied.
1 year ago
1 day