24 repository-uri
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 is an Android UI component library and mobile form input framework used to create text fields that implement Material Design standards. It provides a collection of input components featuring floating labels, error states, and themed visual styles. The library enables the rendering of text fields with animated labels and integrated helper text. It supports the addition of design icons and allows for the customization of colors and typefaces for primary, error, and helper text. The framework includes capabilities for mobile input validation, such as enforcing minimum and maxim
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 este o bibliotecă de programare funcțională și type class pentru Scala, concepută pentru a implementa tipare algebrice și abstracțiuni funcționale. Aceasta oferă un set standardizat de interfețe și un toolkit modular de wrapper-e și containere funcționale pentru a permite polimorfismul ad-hoc și programarea generică între tipuri disparate. Proiectul servește drept standard de abstracție funcțională, oferind o suită de monad transformer pentru a compune contexte imbricate cu efecte și a gestiona multiple efecte secundare computaționale într-un singur pipeline. De asemenea, permite construirea de limbaje specifice domeniului (DSL) încorporate prin reprezentarea logicii programului ca structuri de date care sunt interpretate separat de definițiile lor. Biblioteca acoperă domenii largi de capabilități, inclusiv manipularea algebrică a datelor pentru combinarea și reducerea valorilor, gestionarea stării cu tipizare sigură și gestionarea funcțională a erorilor pentru a formaliza acumularea și recuperarea acestora. Oferă, de asemenea, instrumente pentru gestionarea computațiilor cu efecte și extinderea tipurilor de colecții standard cu capabilități funcționale. Biblioteca include mecanisme pentru validarea legilor algebrice, asigurând că instanțele de type class respectă proprietățile matematice.
Provides specialized data types that statically guarantee a collection contains at least one element.
Bard-API este un wrapper Python asincron și un client pentru interacțiunea cu Google Gemini. Acesta funcționează ca un manager de conversație cu stare și o interfață multimodală, permițând utilizatorilor să trimită prompturi text și imagine către un model de limbaj și să primească răspunsuri. Biblioteca utilizează un sistem de autentificare bazat pe cookie-uri care extrage token-urile de sesiune din stocarea locală a browserului pentru a autoriza cererile. Pentru a gestiona accesul și conectivitatea, include rutarea cererilor prin proxy pentru a ocoli restricțiile regionale și a evita blocajele IP. Proiectul acoperă capabilități pentru analiza AI multimodală și menținerea istoricului sesiunii pentru a permite dialoguri continue multi-turn. De asemenea, oferă utilitare pentru extragerea link-urilor de imagini din răspunsuri, conversia text-to-speech și executarea automată a fragmentelor de cod generate într-un mediu local.
Limits generated output by setting a maximum number of tokens or sentences.
Sugar este o bibliotecă de utilitare JavaScript concepută pentru a extinde obiectele și prototipurile native cu metode suplimentare pentru manipularea și transformarea datelor. Funcționează ca un toolkit pentru utilitare de obiecte, manipularea datelor, inflexiunea șirurilor și polyfilling-ul funcționalităților de limbaj standard lipsă sau defecte. Biblioteca oferă posibilitatea de a mapa metode utilitare direct pe prototipurile built-in sau de a înfășura valori în obiecte temporare pentru a permite chaining-ul metodelor fără a modifica prototipurile globale. Include, de asemenea, un sistem de polyfill pentru a asigura un comportament consistent în diferite medii de execuție prin implementarea funcționalităților moderne de limbaj lipsă. Capabilitățile includ formatarea internațională a datelor și parsarea șirurilor de date umanizate. Biblioteca gestionează, de asemenea, procesarea limbajului natural prin inflexiunea și normalizarea șirurilor, traversarea profundă a proprietăților obiectelor imbricate și sortarea array-urilor conștientă de locale. În plus, oferă instrumente pentru clonarea obiectelor mutabile și definirea intervalelor de valori pentru numere, date și șiruri.
Retrieves and sets values in nested objects and arrays using dot notation.
Unform este un manager de stare a formularelor React conceput pentru a gestiona starea, validarea și trimiterea formularelor complexe de input de la utilizator. Acesta utilizează un API de formular necontrolat care minimizează re-randările prin utilizarea referințelor în loc de starea sincronizată pentru a gestiona datele formularului. Biblioteca include un mapper de date imbricate care organizează câmpurile în obiecte și array-uri ierarhice folosind scoping și notația cu punct. Include, de asemenea, un adaptor de input personalizat pentru a conecta componente UI terțe și input-uri non-standard la starea centralizată a formularului, precum și un motor de validare care verifică datele trimise față de schemele definite pentru a mapa mesajele de eroare către câmpuri specifice. Capabilitățile largi includ gestionarea centralizată a stării pentru inițializarea și resetarea datelor, gestionarea încărcării fișierelor și mascarea input-ului utilizatorului. Sistemul oferă control programatic asupra trimiterii formularului și acces direct prin referință la elementele individuale de input.
Implements dot-separated key paths to retrieve and organize values within nested objects and arrays.
Dynaconf is a configuration management library for Python applications that provides a unified system for loading, validating, and managing settings. It aggregates configuration data from multiple files, environment variables, and external stores into a single object using a defined precedence order. The project distinguishes itself through a layered environment manager that separates settings into distinct profiles, such as development and production. It includes a declarative validation framework to enforce data rules and type constraints during the loading process, as well as an external s
Enables access to nested configuration keys using dot-separated paths for simplified retrieval of complex data.
ts-essentials este un set de instrumente cuprinzător de tipuri utilitare și biblioteci pentru TypeScript, oferind primitive avansate pentru transformări structurale recursive, aserțiuni la runtime și type guards. Servește drept bibliotecă utilitară pentru efectuarea programării complexe la nivel de tip pentru a asigura o siguranță mai puternică a tipurilor și a reduce boilerplate-ul. Proiectul se distinge printr-un set specializat de instrumente pentru manipularea profundă a obiectelor, cum ar fi aplicarea recursivă a modificatorilor read-only sau opționali în ierarhii imbricate. De asemenea, oferă un set dedicat de constrângeri stricte de tip pentru a asigura că structurile de date respectă în mod specific specificațiile JSON. Setul de instrumente acoperă o gamă largă de capabilități, inclusiv analiza tipurilor pentru extracția metadatelor, manipularea uniunilor și tuplelor și validarea identității structurale. Include, de asemenea, utilitare de verificare la runtime pentru a impune exhaustivitatea cazurilor în logica condițională și pentru a valida constrângerile de tip în timpul execuției.
TypeScript-ts-tool ensures an array contains at least one element of a specific type to prevent processing empty lists.