# ldqk/masuit.tools

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/ldqk-masuit-tools).**

6,182 stars · 1,298 forks · C# · MIT

## Links

- GitHub: https://github.com/ldqk/Masuit.Tools
- Homepage: https://www.masuit.tools/
- awesome-repositories: https://awesome-repositories.com/repository/ldqk-masuit-tools.md

## Topics

`datetime` `encryption` `excel` `excel-export` `expression` `lambda` `linq` `multithreading` `net5` `net6` `reflection`

## Description

Masuit.Tools is a comprehensive static utility library for .NET and ASP.NET Core development. It provides a broad collection of reusable helper methods and infrastructure components that cover common programming tasks without requiring dependency injection or instance management. The library is organized as flat utility classes, making its functionality directly accessible from anywhere in a project.

The toolkit distinguishes itself through a wide range of integrated capabilities that go beyond typical utility libraries. It includes a multithreaded range-request file downloader with pause and resume support, a perceptual hash engine for comparing image similarity, and a Snowflake-based distributed ID generator for creating unique, ordered identifiers. The library also offers zero-width character steganography for hiding text within ordinary strings, an expression tree composition engine for building dynamic LINQ queries, and an attribute-driven service registration system that automatically scans assemblies and registers classes in the ASP.NET Core dependency injection container.

Beyond these differentiators, the library covers a broad surface of everyday development needs. It provides utilities for file compression and decompression across multiple archive formats, IP address resolution with geographic lookup, JSON serialization with multiple alias binding per property, and request body binding that accepts data from query strings, forms, or JSON interchangeably. The toolkit also includes data validation for common formats, collection manipulation with safe operations and duplicate removal, date and time calculations including Chinese lunar calendar conversion, and text comparison with diff and patch generation. Additional capabilities span cryptography with symmetric and asymmetric encryption, CAPTCHA image generation, HTML sanitization for XSS prevention, malware scanning via Windows Defender, and system monitoring for real-time hardware metrics.

The library is distributed as a NuGet package and integrates directly into .NET projects, with documentation covering its static utility classes and ASP.NET Core integration helpers.

## Tags

### Programming Languages & Runtimes

- [Static Utility Libraries](https://awesome-repositories.com/f/programming-languages-runtimes/c-common-utility-libraries/static-utility-libraries.md) — Providing a comprehensive set of static utility classes for common C# development tasks like encryption, reflection, file compression, and image processing.
- [Common Utility Libraries](https://awesome-repositories.com/f/programming-languages-runtimes/c-common-utility-libraries/common-utility-libraries.md) — An all-purpose toolkit for .NET developers offering static helper classes for encryption, reflection, file compression, image processing, and data validation.
- [Data Compression and Decompression](https://awesome-repositories.com/f/programming-languages-runtimes/data-compression-and-decompression.md) — Ships utilities for compressing and decompressing files using 7-Zip with ASP.NET Core DI support. ([source](https://www.masuit.tools/api.html))
- [File Compression and Decompression](https://awesome-repositories.com/f/programming-languages-runtimes/data-compression-and-decompression/incremental-stream-processing/file-compression-and-decompression.md) — Handling file operations including compression, decompression, multi-threaded downloads, resume support, and stream copying with hashing.

### Software Engineering & Architecture

- [Static Class Utilities](https://awesome-repositories.com/f/software-engineering-architecture/static-class-utilities.md) — Organizes hundreds of standalone static methods into flat utility classes with no instance state or dependency injection requirements.
- [Attribute-Driven Service Registrations](https://awesome-repositories.com/f/software-engineering-architecture/object-management-systems/dependency-injection-containers/container-type-resolvers/container-based-dependency-injection/attribute-driven-service-registrations.md) — Scans assemblies for classes marked with a custom attribute and registers them in the dependency injection container. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Common Format Validators](https://awesome-repositories.com/f/software-engineering-architecture/regex-pattern-validators/common-format-validators.md) — Ships validators for common data formats including email, phone, URL, IP, and Chinese ID card numbers. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Automatic Service Registrations](https://awesome-repositories.com/f/software-engineering-architecture/service-instance-managers/automatic-service-registrations.md) — Scans assemblies at startup for classes decorated with a custom attribute and automatically registers them in the ASP.NET Core DI container.
- [Automatic Dependency Registrations](https://awesome-repositories.com/f/software-engineering-architecture/service-instance-managers/automatic-service-registrations/automatic-dependency-registrations.md) — Scans assemblies for classes marked with ServiceInject and registers them in the DI container. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Reflection-Based Property Accessors](https://awesome-repositories.com/f/software-engineering-architecture/reflection-based-unmarshallers/reflection-based-property-accessors.md) — Provides runtime interfaces for inspecting and manipulating object properties dynamically. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))

### Part of an Awesome List

- [Compression and Archiving](https://awesome-repositories.com/f/awesome-lists/data/compression-and-archiving.md) — Ships utilities for compressing and decompressing files in ZIP, 7z, and tar formats. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Encryption and Hashing](https://awesome-repositories.com/f/awesome-lists/security/encryption-and-hashing.md) — Computes MD5, SHA, CRC, AES, DES, and RSA digests or ciphertexts from plaintext strings using optional salts or keys. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Calendars And Dates](https://awesome-repositories.com/f/awesome-lists/devtools/calendars-and-dates.md) — Ships a utility for converting Gregorian dates to Chinese lunar calendar with zodiac and stem-branch year. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [File Compression](https://awesome-repositories.com/f/awesome-lists/devtools/file-compression.md) — Creates and extracts ZIP archives from files and directories using built-in compression utilities. ([source](https://www.masuit.tools/guid.html))

### Data & Databases

- [Collection Manipulators](https://awesome-repositories.com/f/data-databases/data-manipulation-libraries/collection-manipulators.md) — Ships utilities for safe collection manipulation including add, remove, insert, and reorder operations. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Predicate Composers](https://awesome-repositories.com/f/data-databases/expression-based-data-querying/linq-expression-translators/predicate-composers.md) — Ships a dynamic expression tree composition engine for building LINQ predicates with AND/OR logic. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Date and Time Libraries](https://awesome-repositories.com/f/data-databases/date-and-time-libraries.md) — Ships utilities for calculating week numbers, timestamps, and period intervals including lunar calendar. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [LINQ Expression Translators](https://awesome-repositories.com/f/data-databases/expression-based-data-querying/linq-expression-translators.md) — Combines, extends, or conditionally applies expression trees for flexible query filtering. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Dynamic Predicate Composers](https://awesome-repositories.com/f/data-databases/expression-based-data-querying/linq-expression-translators/dynamic-predicate-composers.md) — Builds and combines LINQ expression predicates dynamically using AND/OR logic and conditional application at runtime.
- [MIME Type Detection](https://awesome-repositories.com/f/data-databases/mime-type-detection.md) — Identifies a file's true extension, MIME type, and text encoding from its binary signature. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Tree Builders & Traversers](https://awesome-repositories.com/f/data-databases/row-expansion/tree-structures/tree-builders-traversers.md) — Converts flat collections into hierarchical trees and retrieves ancestors, descendants, depth, and paths. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))

### Networking & Communication

- [Distributed ID Generators](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-computing/distributed-id-generators.md) — Creates unique, short, URL-friendly identifiers suitable for distributed systems without a central coordinator. ([source](https://www.masuit.tools/guid.html))
- [Snowflake ID Generators](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-computing/distributed-id-generators/snowflake-id-generators.md) — Generates unique, ordered, short identifiers using a configurable Snowflake algorithm with machine ID and timestamp components.
- [Cloud File Downloads](https://awesome-repositories.com/f/networking-communication/remote-file-downloads/progress-tracking-file-downloads/cloud-file-downloads.md) — Splits a remote file into chunks and downloads them concurrently, supporting pause and resume. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Multi-threaded Downloading](https://awesome-repositories.com/f/networking-communication/resumable-downloads/multi-threaded-downloading.md) — Downloads a remote file faster by splitting it into segments and fetching them concurrently, with pause and resume support. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [Byte-Range Requesting](https://awesome-repositories.com/f/networking-communication/byte-range-requesting.md) — Splits remote file downloads into parallel byte-range chunks with pause, resume, and progress reporting support.
- [Resumable Downloads](https://awesome-repositories.com/f/networking-communication/resumable-downloads.md) — Supports byte-range requests and conditional headers for resumable and multi-threaded file downloads. ([source](https://www.masuit.tools/api.html))

### Security & Cryptography

- [Static Encryption Utilities](https://awesome-repositories.com/f/security-cryptography/privacy-data-protection/data-encryption/end-to-end-encryption/media-encryption/stream-encryption-and-decryption/general-data-encryption/static-encryption-utilities.md) — Provides static methods for symmetric and asymmetric encryption and decryption of strings and byte arrays. ([source](https://www.masuit.tools/guid.html))

### Web Development

- [Static Helper Collections](https://awesome-repositories.com/f/web-development/api-management-tools/content-static-site-generation/content-collection-managers/collection-manipulation-utilities/static-helper-collections.md) — A library of reusable static methods covering common tasks like string manipulation, date calculations, and collection operations.
- [Development Helpers](https://awesome-repositories.com/f/web-development/asp-net-core-application-frameworks/development-helpers.md) — Accelerating web application development with helpers for model binding, dependency injection, file serving, and request handling in ASP.NET Core.

### Content Management & Publishing

- [Lunar Calendar Services](https://awesome-repositories.com/f/content-management-publishing/lunar-calendar-services.md) — Converts between Gregorian and Chinese lunar calendar dates and retrieves lunar day information. ([source](https://www.masuit.tools/guid.html))
- [Chinese Calendar Converters](https://awesome-repositories.com/f/content-management-publishing/lunar-calendar-services/chinese-calendar-converters.md) — Converts Gregorian dates to Chinese lunar calendar with heavenly stems, earthly branches, and solar terms. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))

### Development Tools & Productivity

- [Perceptual Image Deduplication](https://awesome-repositories.com/f/development-tools-productivity/asset-hashing-and-deduplication/perceptual-image-deduplication.md) — Compares images by computing difference, average, DCT, or median hash fingerprints and returning a similarity score.
- [Date and Time Utilities](https://awesome-repositories.com/f/development-tools-productivity/date-and-time-utilities.md) — Ships utilities for calculating week numbers, timestamps, and period intervals for any date. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [File Compression Utilities](https://awesome-repositories.com/f/development-tools-productivity/developer-utilities-libraries/workflow-productivity-enhancers/developer-productivity-utilities/developer-utilities/file-resource-management/file-compression-utilities.md) — Supports creating and extracting ZIP, 7z, and tar archives from files and directories with built-in compression.

### DevOps & Infrastructure

- [Range Request File Servings](https://awesome-repositories.com/f/devops-infrastructure/file-uploaders/s3-file-uploads/public-file-serving/range-request-file-servings.md) — Delivers file content over HTTP with ETag, Last-Modified, and range-request headers for resumable downloads. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))

### Graphics & Multimedia

- [Image Cropping Tools](https://awesome-repositories.com/f/graphics-multimedia/image-editing-processing/image-editors/image-cropping-tools.md) — Scales or crops image files to specified dimensions while preserving aspect ratio. ([source](https://www.masuit.tools/guid.html))
- [Image Processing](https://awesome-repositories.com/f/graphics-multimedia/image-editing-processing/image-processing.md) — Generates thumbnails, converts to grayscale, crops, resizes, mirrors, and adjusts brightness. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
- [.NET Image Processing Libraries](https://awesome-repositories.com/f/graphics-multimedia/net-image-processing-libraries.md) — Offers common image operations including resizing, cropping, grayscale conversion, watermarking, and thumbnail generation.
- [Perceptual Similarity Scoring](https://awesome-repositories.com/f/graphics-multimedia/perceptual-similarity-scoring.md) — Computes perceptual hashes (difference, average, DCT, median) and returns similarity scores. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))

### User Interface & Experience

- [Attribute-Based Property Validators](https://awesome-repositories.com/f/user-interface-experience/component-property-systems/property-validation/attribute-based-property-validators.md) — Ships attribute-based validation for model properties covering email, phone, and password complexity. ([source](https://cdn.jsdelivr.net/gh/ldqk/masuit.tools@master/README.md))
