{"id":3234819,"name":"rainsoft.validations","ecosystem":"nuget","description":"A library for easy validations. You can easily validate instances of your classes or any values, whether it be method parameters or anything else. It can also be used for validating user input or writing tests.\n\nYou may combine different validations at runtime using decorators to validate individual values. It also allows you to expressibly validate instances of your classes, either in source code or declaratively using attributes on class data members.","homepage":"https://github.com/chr1st0scli/Rainsoft.Validations","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/chr1st0scli/Rainsoft.Validations","keywords_array":["validation","attribute","decorator","dto","poco","class"],"namespace":null,"versions_count":6,"first_release_published_at":"2021-01-08T16:17:25.920Z","latest_release_published_at":"2021-04-24T09:59:18.100Z","latest_release_number":"4.0.0","latest_published_release_number":null,"last_synced_at":"2026-09-13T20:31:22.855Z","created_at":"2022-04-10T16:18:39.267Z","updated_at":"2026-09-13T20:31:22.856Z","registry_url":"https://www.nuget.org/packages/rainsoft.validations/","install_command":"Install-Package rainsoft.validations","documentation_url":null,"metadata":{"license_info":{"type":"expression","text":"MIT","version":null},"license_url":"https://licenses.nuget.org/MIT","require_license_acceptance":false,"icon":"RainApps.png","repository":{"type":null,"url":"https://github.com/chr1st0scli/Rainsoft.Validations","branch":null,"commit":null},"development_dependency":false,"serviceable":false,"framework_assemblies":[],"package_types":[],"release_notes":"New classes MemberValidator and InstanceValidator for expressibly validating instances of classes in source code.\nValidation Attributes can now have associated error messages.\nVarious improvements.\n\nBreaking changes:\nIValidator is renamed to IValueValidator and a new IValidator is introduced.\nInvalidRuleException and ValidationOffense classes change namespace.\nValidationOffense.Rule changes to a string and is renamed to ValidationOffense.OffendedRule.\nInterface IObjectValueRule becomes obsolete and replaced by a new class AttributeRule.\nNotWhiteSpaceAttribute class is renamed to NotNullOrWhiteSpaceAttribute.\nMore accurate handling of null strings in Attribute validations.\nSome string based decorators are more tolerant to null strings and do not throw ArgumentNullException.","dependency_summary":{"total_dependency_groups":1,"target_frameworks":[".NETStandard2.0"],"total_dependencies":0}},"repo_metadata":{"id":116414095,"uuid":"324605837","full_name":"chr1st0scli/Rainsoft.Validations","owner":"chr1st0scli","description":"A library for easy validations.","archived":false,"fork":false,"pushed_at":"2023-07-24T17:54:20.000Z","size":101,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-04T06:49:27.198Z","etag":null,"topics":["class","decorator-pattern","dto","poco","validation","validation-library"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chr1st0scli.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-26T17:43:57.000Z","updated_at":"2023-09-10T09:47:39.000Z","dependencies_parsed_at":null,"dependency_job_id":"11b66aa4-b032-4118-939e-56b1cbd353a0","html_url":"https://github.com/chr1st0scli/Rainsoft.Validations","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/chr1st0scli/Rainsoft.Validations","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chr1st0scli","download_url":"https://codeload.github.com/chr1st0scli/Rainsoft.Validations/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279003299,"owners_count":26083555,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"chr1st0scli","name":null,"uuid":"5046010","kind":"user","description":"","email":"","website":"https://www.linkedin.com/in/christos-giamouridis-06b18b32/","location":"Athens, Greece","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/5046010?u=a4485483e756f21e2f4e8a397f957a72f437a088\u0026v=4","repositories_count":2,"last_synced_at":"2023-03-06T07:45:54.970Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/chr1st0scli","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-16T07:20:15.513Z","updated_at":"2023-03-06T07:45:54.976Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chr1st0scli","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chr1st0scli/repositories"},"tags":[{"name":"v4.0.0","sha":"6aba7a23d8c871e746bf8fa6e338d020c97c92ae","kind":"commit","published_at":"2021-06-11T18:51:54.000Z","download_url":"https://codeload.github.com/chr1st0scli/Rainsoft.Validations/tar.gz/v4.0.0","html_url":"https://github.com/chr1st0scli/Rainsoft.Validations/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/chr1st0scli/Rainsoft.Validations@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/tags/v4.0.0/manifests"},{"name":"v3.0.0","sha":"d47b24f782674abb3737aaebf1948fb0fc75aaaf","kind":"commit","published_at":"2021-02-14T12:11:27.000Z","download_url":"https://codeload.github.com/chr1st0scli/Rainsoft.Validations/tar.gz/v3.0.0","html_url":"https://github.com/chr1st0scli/Rainsoft.Validations/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/chr1st0scli/Rainsoft.Validations@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/tags/v3.0.0/manifests"}]},"repo_metadata_updated_at":"2026-06-22T13:36:36.452Z","dependent_packages_count":1,"downloads":3847,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":32.193422142207886,"dependent_repos_count":12.696710402554181,"dependent_packages_count":10.330120096414689,"stargazers_count":7.273647882445811,"forks_count":6.915696923133724,"average":13.881919489351258},"purl":"pkg:nuget/rainsoft.validations","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nuget/rainsoft.validations","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nuget/rainsoft.validations","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nuget/rainsoft.validations/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-02T11:04:44.892Z","issues_count":0,"pull_requests_count":1,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":11.0,"issues_closed_count":0,"pull_requests_closed_count":1,"pull_request_authors_count":1,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":1,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/chr1st0scli%2FRainsoft.Validations/issues","maintainers":[{"login":"chr1st0scli","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/chr1st0scli"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/rainsoft.validations/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/rainsoft.validations/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/rainsoft.validations/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/rainsoft.validations/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/rainsoft.validations/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/rainsoft.validations/codemeta","maintainers":[{"uuid":"chr1st0scli","login":"chr1st0scli","name":null,"email":null,"url":null,"packages_count":4,"html_url":"https://www.nuget.org/profiles/chr1st0scli","role":null,"created_at":"2022-11-18T06:36:03.723Z","updated_at":"2022-11-18T06:36:03.723Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/maintainers/chr1st0scli/packages"}]}