9 dépôts
Systems that use class decorators to define metadata-driven validation constraints on object properties.
Distinct from Class Decorators: Existing candidates focus on instrumentation or design patterns, not the use of decorators for data validation schemas.
Explore 9 awesome GitHub repositories matching software engineering & architecture · Decorator-Based Validation. Refine with filters or upvote what's useful.
This project is a Python-based proxy pool manager that collects, validates, and serves free proxy IP addresses through an HTTP API. It consists of an automated scraper to gather addresses from multiple online sources, a persistent database-backed store for organization, and a delivery interface for retrieving validated proxies. The system features a pluggable scraper architecture that allows for the integration of custom discovery methods and source expansion via generator functions. It employs decorator-based validation logic, enabling the definition of custom connectivity and HTTPS criteria
Employs function decorators to define custom connectivity and HTTPS validation criteria.
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
Uses TypeScript decorators to define constraints and rules for object properties as metadata.
koro1FileHeader est une extension VSCode conçue pour générer et mettre à jour automatiquement des blocs de commentaires standardisés en haut des fichiers source. Il sert de gestionnaire de métadonnées de fichiers et de documentateur de code automatisé qui suit la paternité, les dates de modification et les chemins de fichiers directement dans le code lors de l'enregistrement. L'outil synchronise les noms d'auteur et les adresses e-mail à partir des configurations Git locales pour remplir les champs d'en-tête. Il dispose également d'un décorateur de commentaires de code source capable d'insérer de l'art ASCII décoratif et des motifs visuels pour organiser les sections de code. L'extension couvre un large éventail de capacités, notamment la génération automatique de docstrings de fonctions par extraction de paramètres, la personnalisation basée sur des modèles pour les avis de copyright et les licences, et le mappage de délimiteurs spécifiques au langage. Elle inclut des mécanismes de filtrage pour exclure des répertoires ou des extensions de fichiers spécifiques et utilise la détection de changement pour annuler les mises à jour de métadonnées triviales, évitant ainsi les commits de contrôle de version redondants.
Merges file metadata with decorative patterns so a single block serves both documentation and style.
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
Provides the core decorator and field API for defining data classes with validators, converters, and defaults.
TypeSpec is a language for defining cloud API shapes and generating OpenAPI, JSON Schema, and client/server code from a single source of truth. It functions as a protocol-agnostic API designer that models REST, gRPC, and other API protocols using a unified, extensible syntax, with a decorator-based metadata system for attaching metadata, validation rules, and lifecycle visibility to API models and operations. The compiler produces OpenAPI 3.0 specifications and other artifacts, and the tool supports declaring API versions and tracking changes to models, properties, and operations across releas
Attaches metadata, validation rules, and lifecycle visibility to API models and operations using decorators.
Easy-peasy est une bibliothèque de gestion d'état React et un framework typé qui fournit un store centralisé pour gérer l'état global de l'application. Il fonctionne comme un store d'état immuable et un orchestrateur d'état asynchrone, assurant une sécurité de type de bout en bout pour les définitions d'état, les actions et les valeurs dérivées. La bibliothèque se distingue en convertissant la syntaxe de mutation directe en mises à jour immuables pour simplifier la gestion des données imbriquées. Elle inclut un mécanisme pour persister l'arbre d'état vers le stockage et le réhydrater pendant le processus de démarrage de l'application, avec la capacité de suspendre l'interface utilisateur jusqu'à ce que la réhydratation soit terminée. Le framework couvre plusieurs domaines de capacités, incluant l'orchestration d'appels API asynchrones avec rendu optimiste et le calcul d'état dérivé mis en cache. Il fournit également des outils pour gérer les mises à jour non urgentes et accéder au store en dehors des composants React.
Uses TypeScript generics and class decorators to ensure strict type safety across the state management lifecycle.
Dataclasses-json is a library designed to facilitate the bidirectional conversion between Python data classes and JSON formats. It serves as a serialization tool that populates structured objects from raw data and transforms object instances into JSON strings, utilizing Python type hints to automate the mapping process. The library distinguishes itself by providing mechanisms for schema validation and runtime type coercion, ensuring that incoming data adheres to predefined model structures. It supports complex data requirements through recursive object traversal, which allows for the processi
Uses decorators to store serialization rules and configuration directly within data class definitions.
NestJS Access Control est un framework d'autorisation basé sur les rôles et les attributs conçu pour l'écosystème NestJS. Il fournit un système déclaratif pour sécuriser les routes et les ressources de l'application, permettant aux développeurs d'imposer des politiques d'accès granulaires via des décorateurs pilotés par les métadonnées. Le framework se distingue en prenant en charge l'héritage hiérarchique des rôles, ce qui permet la résolution d'ensembles de permissions complexes en parcourant les relations entre rôles parents et enfants. Il facilite également la gestion dynamique des autorisations, permettant aux règles de sécurité d'être chargées de manière asynchrone depuis des sources de données externes pendant la phase de bootstrap de l'application pour garantir que les politiques restent à jour. Au-delà de la protection de route de base, la bibliothèque offre un filtrage au niveau des attributs pour restreindre les opérations de lecture ou d'écriture sur des propriétés de ressource spécifiques. Elle s'intègre directement avec le conteneur d'injection de dépendances et le cycle de vie de la requête, fournissant des outils pour extraire l'identité de l'utilisateur et les informations de rôle des requêtes entrantes pour à la fois l'application automatisée et les vérifications de permission manuelles et sensibles au contexte.
Attaches security configuration to route handlers using metadata-driven decorators.
This project is a comprehensive backend framework built on NestJS, designed to accelerate the development of multi-tenant software-as-a-service applications. It provides a production-ready foundation that integrates essential infrastructure, including user authentication, subscription billing, and team management, into a modular, decorator-based architecture. The framework distinguishes itself by offering a complete suite of SaaS-specific orchestration tools, such as a built-in billing engine for managing recurring revenue and a multi-tenant database partitioning system. It also includes a ro
Uses metadata annotations on class methods to define routing, validation, and security guards.