24 Repos
Rules for validating the types, length, and content of array elements.
Distinguishing note: None of the candidates cover the validation of array elements within a schema.
Explore 24 awesome GitHub repositories matching software engineering & architecture · Array Schema Validation. Refine with filters or upvote what's useful.
Yup is a JavaScript schema validation library used to define data shapes and validate runtime values. It functions as an object schema validator and a data coercion engine, allowing developers to transform raw input values into desired types before performing validation checks. The library is distinguished by its support for dynamic schema validation, where rules can be adjusted at runtime based on sibling field values or external context. It also enables recursive data structuring for polymorphic fields and provides a system for extracting static TypeScript interfaces from runtime schema def
Defines the required type for array elements and constrains array length and content.
type-fest is a library of reusable utility types for performing complex transformations and validations on objects, arrays, strings, and numeric ranges in TypeScript. It provides a collection of type definitions designed to handle advanced structural changes and constraints. The project distinguishes itself by offering specialized logic for string literal processing, such as casing transformations and pattern-based modifications, and type-level arithmetic for calculating numeric ranges and absolute values. It also includes utilities for enforcing deep immutability, ensuring union mutual exclu
Determines if every element within an array type extends a specific target type.
class-validator is a TypeScript class validation library that uses decorators to define constraints and rules for object properties. It functions as a decorator-based schema validator that ensures data integrity and structural correctness through a combination of synchronous checks and promise-based asynchronous rules. The library provides a recursive validation system for checking complex data hierarchies, including nested classes and individual elements within collections. It includes an object property whitelist utility capable of stripping undocumented properties or blocking unknown field
Applies validation rules to every individual element within arrays, sets, or maps.
Valibot is a modular, type-safe schema library for validating and parsing structural data in TypeScript environments.
Ensures strings or arrays contain at least a specified number of elements.
This PHP assertion library is a runtime data validator used to verify method inputs and outputs. It provides a toolkit for validating data types, numeric ranges, and string patterns during program execution to prevent invalid states. The project serves as a static analysis helper by providing type hints and annotations that improve the accuracy of formal verification tools. It includes a collection validation utility for applying rules across arrays or iterable collections, and a filesystem validation tool to verify path existence and read or write permissions. The library covers a broad ran
Includes checks to verify array keys, element counts, and whether collections are sequential or associative.
Hyperf is a high-performance PHP coroutine framework designed for building microservices and middleware. It utilizes non-blocking coroutines to handle high concurrency and low-latency request processing, providing a foundation for scalable distributed systems. The framework is distinguished by an aspect-oriented programming based dependency injector that enables pluggable components and meta-programming. It includes a coroutine-optimized object-relational mapper with integrated model caching and an orchestration toolkit for microservice governance, featuring service discovery, circuit breaker
Verifies that input arrays adhere to a specific schema by checking for allowed keys.
collect.js is a dependency-free JavaScript library that provides a fluent, chainable interface for manipulating arrays and objects. It mirrors the Laravel Collection API, offering a consistent set of methods for data transformation across JavaScript and Laravel backend environments. The library stores collection data as plain arrays internally and supports fluent method chaining, where each method returns a new collection instance. The library distinguishes itself by closely replicating the Laravel Collection API in JavaScript, mapping each PHP method to an equivalent JavaScript implementatio
Retrieves values from nested arrays or objects using dot notation with optional default fallback.
Arrow is a functional programming library for Kotlin that provides tools for implementing data-oriented programming patterns. It serves as a framework for typed error handling, a concurrency toolkit, and a library for the manipulation of immutable data. The project distinguishes itself through specialized capabilities for managing application failures using explicit types instead of exceptions and implementing resilience patterns such as circuit breakers and retry policies for distributed services. It also provides optics to update and query deeply nested immutable data structures without man
Includes specific validations to ensure collections are non-empty before processing.
This is a configuration library for JVM applications that parses HOCON, JSON, and Java properties files into an immutable tree structure. It resolves ${...} placeholders by traversing the configuration tree and falling back to environment variables and system properties, and validates loaded configurations against a reference schema. The library loads configuration from classpath resources, files, URLs, system properties, and environment variables, merging them with priority-based override semantics. It provides typed value access with automatic type coercion, supports dot-path navigation,
Retrieves values from nested configuration objects using dot-separated key paths.
Go Package of validators and sanitizers for strings, numerics, slices and structs
Verifies that string length in bytes or runes falls within specified minimum and maximum bounds.
MaterialEditText ist eine Android-UI-Komponentenbibliothek und ein Framework für mobile Formulareingaben, mit dem Textfelder gemäß Material-Design-Standards erstellt werden können. Es bietet eine Sammlung von Eingabekomponenten mit Floating Labels, Fehlerzuständen und themenbasierten visuellen Stilen. Die Bibliothek ermöglicht das Rendern von Textfeldern mit animierten Labels und integrierten Hilfetexten. Sie unterstützt das Hinzufügen von Design-Icons und erlaubt die Anpassung von Farben und Schriftarten für Primär-, Fehler- und Hilfetexte. Das Framework umfasst Funktionen für die mobile Eingabevalidierung, wie etwa die Durchsetzung von Mindest- und Höchstzeichenanzahlen für Texteingaben.
Provides a character counter that updates in real-time based on minimum and maximum length constraints.
CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools
Validates fields within nested associative arrays using dot-notation and wildcards.
attrs is a Python library that automatically generates initialization, representation, equality, hashing, and ordering methods from declarative class attribute definitions. At its core, it provides a class decorator metaprogramming framework that intercepts class creation to rewrite the class body, producing dunder methods without manual boilerplate. The library includes a comprehensive attribute validation toolkit with built-in validators for type checks, range constraints, regex matching, length limits, and logical composition of validation rules. The library distinguishes itself through it
Validates that a string or collection attribute has at least a minimum length.
Provides utilities for validating the data type of every element in an array.
Cats ist eine funktionale Programmierbibliothek für Scala und eine Typklassen-Bibliothek, die darauf ausgelegt ist, algebraische Muster und funktionale Abstraktionen zu implementieren. Sie bietet einen standardisierten Satz an Schnittstellen und ein modulares Toolkit aus funktionalen Wrappern und Containern, um Ad-hoc-Polymorphismus und generische Programmierung über unterschiedliche Typen hinweg zu ermöglichen. Das Projekt dient als Standard für funktionale Abstraktion und bietet eine Monad-Transformer-Suite zur Komposition verschachtelter, effektbehafteter Kontexte und zur Handhabung mehrerer rechnerischer Seiteneffekte innerhalb einer einzigen Pipeline. Es ermöglicht zudem die Konstruktion eingebetteter domänenspezifischer Sprachen, indem Programmlogik als Datenstrukturen dargestellt wird, die unabhängig von ihren Definitionen interpretiert werden. Die Bibliothek deckt breite Funktionsbereiche ab, einschließlich algebraischer Datenmanipulation zum Kombinieren und Reduzieren von Werten, typsicherem Zustandsmanagement und funktionaler Fehlerbehandlung zur Formalisierung von Fehlerakkumulation und -wiederherstellung. Sie bietet zudem Werkzeuge für das Management effektbehafteter Berechnungen und die Erweiterung von Standard-Collection-Typen um funktionale Fähigkeiten. Die Bibliothek enthält Mechanismen zur Validierung algebraischer Gesetze, um sicherzustellen, dass Typklassen-Instanzen mathematische Eigenschaften einhalten.
Provides specialized data types that statically guarantee a collection contains at least one element.
Bard-API ist ein asynchroner Python-Wrapper und Client für die Interaktion mit Google Gemini. Er fungiert als zustandsbehafteter Konversationsmanager und multimodale Schnittstelle, die es Benutzern ermöglicht, Text- und Bild-Prompts an ein Sprachmodell zu senden und Antworten abzurufen. Die Bibliothek nutzt ein Cookie-basiertes Authentifizierungssystem, das Session-Token aus dem lokalen Browserspeicher extrahiert, um Anfragen zu autorisieren. Zur Verwaltung von Zugriff und Konnektivität beinhaltet sie Proxy-basiertes Request-Routing, um regionale Beschränkungen zu umgehen und IP-Sperren zu vermeiden. Das Projekt deckt Funktionen für multimodale KI-Analyse und die Pflege der Sitzungshistorie ab, um kontinuierliche Multi-Turn-Dialoge zu ermöglichen. Es bietet zudem Dienstprogramme zum Extrahieren von Bildlinks aus Antworten, zur Text-zu-Sprache-Konvertierung und zur automatischen Ausführung generierter Code-Snippets in einer lokalen Umgebung.
Limits generated output by setting a maximum number of tokens or sentences.
Sugar ist eine JavaScript-Utility-Bibliothek, die darauf ausgelegt ist, native Objekte und Prototypen um zusätzliche Methoden zur Datenmanipulation und -transformation zu erweitern. Sie fungiert als Toolkit für Objekt-Utilities, Datumsmanipulation, String-Inflektion und das Polyfilling fehlender oder fehlerhafter Standard-Sprachfunktionen. Die Bibliothek bietet die Möglichkeit, Utility-Methoden direkt auf eingebaute Prototypen zu mappen oder Werte in temporäre Objekte zu wrappen, um Method-Chaining zu ermöglichen, ohne globale Prototypen zu modifizieren. Sie enthält zudem ein Polyfill-System, um konsistentes Verhalten über verschiedene Ausführungsumgebungen hinweg sicherzustellen, indem fehlende moderne Sprachfunktionen implementiert werden. Die Funktionen umfassen internationale Datumsformatierung und das Parsen von humanisierten Datums-Strings. Die Bibliothek handhabt zudem natürliche Sprachverarbeitung durch String-Inflektion und Normalisierung, tiefe Eigenschaftstraversierung verschachtelter Objekte und locale-bewusste Array-Sortierung. Zusätzlich bietet sie Tools zum Klonen veränderbarer Objekte und zur Definition von Wertebereichen für Zahlen, Daten und Strings.
Retrieves and sets values in nested objects and arrays using dot notation.
Unform ist ein React-Form-State-Manager, der darauf ausgelegt ist, den Status, die Validierung und die Übermittlung komplexer Benutzereingabeformulare zu handhaben. Er nutzt eine unkontrollierte Form-API, die Re-Renders minimiert, indem sie Referenzen anstelle eines synchronisierten Status verwendet, um Formulardaten zu verwalten. Die Bibliothek bietet einen verschachtelten Daten-Mapper, der Felder in hierarchische Objekte und Arrays unter Verwendung von Scoping und Punktnotation organisiert. Sie enthält zudem einen benutzerdefinierten Input-Adapter, um UI-Komponenten von Drittanbietern und nicht-standardisierte Eingaben mit dem zentralisierten Formularstatus zu verbinden, sowie eine Validierungs-Engine, die übermittelte Daten gegen definierte Schemata prüft, um Fehlermeldungen spezifischen Feldern zuzuordnen. Zu den umfassenden Funktionen gehören zentralisiertes State-Management für Dateninitialisierung und -zurücksetzung, Handhabung von Datei-Uploads und Maskierung von Benutzereingaben. Das System bietet programmgesteuerte Kontrolle über die Formularübermittlung und direkten Referenzzugriff auf einzelne Eingabeelemente.
Implements dot-separated key paths to retrieve and organize values within nested objects and arrays.
Dynaconf ist eine Konfigurationsmanagement-Bibliothek für Python-Anwendungen, die ein einheitliches System zum Laden, Validieren und Verwalten von Einstellungen bereitstellt. Sie aggregiert Konfigurationsdaten aus mehreren Dateien, Umgebungsvariablen und externen Speichern in einem einzigen Objekt unter Verwendung einer definierten Prioritätsreihenfolge. Das Projekt zeichnet sich durch einen geschichteten Umgebungsmanager aus, der Einstellungen in verschiedene Profile trennt, wie z. B. Entwicklung und Produktion. Es enthält ein deklaratives Validierungs-Framework zur Durchsetzung von Datenregeln und Typbeschränkungen während des Ladevorgangs sowie einen Integrator für externe Secret-Stores zum Abrufen sensibler Daten aus HashiCorp Vault und Redis. Die Bibliothek unterstützt das Laden von Dateien in mehreren Formaten für TOML, YAML, JSON, INI und Python-Dateien. Sie bietet Funktionen für das Casting von Umgebungsvariablen, Dot-Notation-Lookup und die Integration mit Web-Frameworks wie Django und Flask, um Standard-Konfigurationsobjekte zu ersetzen. Befehlszeilen-Utilities sind für das Bootstrapping der Konfiguration, die Validierung von Einstellungen und die Durchführung von Laufzeit-Overrides verfügbar.
Enables access to nested configuration keys using dot-separated paths for simplified retrieval of complex data.
ts-essentials ist ein umfassendes Toolkit mit Utility-Types und Bibliotheken für TypeScript, das erweiterte Primitive für rekursive strukturelle Transformationen, Laufzeit-Assertions und Type-Guards bereitstellt. Es dient als Utility-Bibliothek zur Durchführung komplexer Type-Level-Programmierung, um eine stärkere Typsicherheit zu gewährleisten und Boilerplate-Code zu reduzieren. Das Projekt zeichnet sich durch ein spezialisiertes Set an Tools für die tiefe Objektmanipulation aus, wie etwa das rekursive Anwenden von Read-only- oder Optional-Modifikatoren über verschachtelte Hierarchien hinweg. Zudem bietet es ein dediziertes Set an strikten Type-Constraints, um sicherzustellen, dass Datenstrukturen spezifisch den JSON-Spezifikationen entsprechen. Das Toolkit deckt ein breites Spektrum an Funktionen ab, einschließlich Typanalyse für die Metadatenextraktion, Union- und Tuple-Manipulation sowie Validierung der strukturellen Identität. Es enthält zudem Laufzeit-Verifizierungs-Utilities, um die Vollständigkeit von Cases in der bedingten Logik zu erzwingen und Typ-Constraints während der Ausführung zu validieren.
TypeScript-ts-tool ensures an array contains at least one element of a specific type to prevent processing empty lists.