25 dépôts
Logic for selecting correct string forms based on numeric values and locale-specific grammar.
Explore 25 awesome GitHub repositories matching software engineering & architecture · Pluralization Rules. Refine with filters or upvote what's useful.
AngularJS is a structural framework for building dynamic web applications by extending standard HTML with custom tags and attributes. It operates as a client-side template engine that transforms declarative markup into interactive components, organizing application logic through a model-view-controller pattern. By utilizing a centralized dependency injection container, the framework manages the lifecycle of services and components to ensure modularity and maintainable architecture. The framework is defined by its two-way data binding mechanism, which automatically synchronizes data models wit
Selects appropriate string variations based on numeric values and locale-specific grammar rules to ensure correct text rendering.
Fyne is a cross-platform graphical user interface toolkit for the Go programming language. It provides a comprehensive framework for building native applications that run on desktop, mobile, and web environments from a single codebase. The toolkit centers on a canvas-based rendering engine and a device-independent layout engine, ensuring that visual elements maintain consistent dimensions and behavior across diverse operating systems and screen densities. The project distinguishes itself through a reactive data-binding system that automatically synchronizes application state with interface co
Selects different string variations based on numeric values to ensure grammatical correctness across languages.
react-intl is a React internationalization framework and locale-aware formatting tool. It serves as an i18n message formatting library and part of the FormatJS ecosystem, providing components and APIs to format dates, numbers, and messages within React applications. The framework uses the native browser Internationalization API to ensure numeric and temporal data adheres to specific cultural conventions. It implements a system for translating user-facing text and interpolating variables using standardized ICU message syntax. The project covers the broader requirements of React UI localizatio
Implements logic to select the correct linguistic string form based on numeric values and locale-specific grammar.
FormatJS is an internationalization framework and library designed for building web applications that support multiple languages and regional formats. It provides a comprehensive suite of tools for managing the translation workflow, including the extraction of translatable strings from source code and the compilation of human-readable templates into optimized JavaScript functions. The project distinguishes itself by implementing the ICU MessageFormat standard, which enables the handling of complex linguistic requirements such as pluralization and gender-based text variations. By utilizing a b
Implements pluralization rules to select correct grammatical forms based on numeric values and locale-specific data.
Inflector is a linguistic data processing library designed to handle string transformations and grammatical inflection within PHP applications. It provides a centralized engine for converting words between singular and plural forms and standardizing text formats to ensure consistency across dynamic content and codebase naming conventions. The library distinguishes itself through a rule-based inflection engine that utilizes regular expression pattern matching to apply grammatical logic. Developers can extend this functionality using a configurable registry, which allows for the injection or ov
Automates pluralization logic to ensure correct language usage in dynamic application interfaces.
Humanizer is a .NET natural language formatter and string manipulation library designed to convert technical identifiers, numbers, and dates into grammatically correct, human-readable text. It functions as a pluralization engine, localization utility, and case conversion tool for the .NET ecosystem. The library provides specialized capabilities for transforming programming conventions like PascalCase or snake_case into readable sentences and vice versa. It distinguishes itself by handling irregular and uncountable English words during pluralization and singularization, and by applying culture
Transforms singular nouns into plural forms while handling irregular and uncountable English words.
Home Assistant is a local home automation platform and server that acts as an IoT device orchestrator. It integrates diverse smart home hardware by wrapping third-party APIs into a standardized logic layer and stores all system state and historical statistics on local hardware to eliminate cloud dependencies. The system functions as a Matter IoT controller and an MQTT home automation bridge, allowing for local interoperability between different manufacturers. It features a state-based entity model and an internal event bus that decouple physical device logic from system automation. The platf
Adjusts nouns and verbs in strings based on numeric counts to ensure correct grammatical pluralization.
i18next is a JavaScript localization library and internationalization framework used to translate application text into multiple languages. It functions as a dynamic translation manager that handles translation resources, language detection, and the mapping of unique keys to localized strings. The system features a pluralization and interpolation engine that applies language-specific grammatical rules for numeric counts and injects dynamic variables into strings. It utilizes a plugin-based backend architecture to load and cache translation namespaces from various sources, including remote ser
Provides a rule-based engine to select translation variants based on numeric counts and locale-specific grammar.
This repository is a comprehensive collection of functional 2D and 3D demo projects and implementation samples for the Godot Game Engine. It serves as an interactive tutorial and reference library, providing a working codebase to demonstrate how to apply engine features in real-world scenarios. The collection focuses on practical implementation guides, covering a wide array of technical capabilities from basic engine fundamentals to advanced rendering and scripting techniques. It allows users to study the application of node-based composition, asset pipelines, and game logic through direct ex
Selects appropriate translated strings based on item quantity and locale-specific grammar rules.
vue-i18n is an internationalization framework and plugin for Vue.js applications. It serves as a dynamic translation manager and localization formatting library used to translate user interface text and format dates and numbers for global audiences. The project distinguishes itself through a dynamic translation workflow that supports asynchronous locale loading and the ability to reload translation messages in real-time without refreshing the page. It provides specialized mechanisms for rich text rendering, allowing the interpolation of HTML tags and Vue components directly into translated st
Selects the correct translation string based on numeric values and locale-specific grammatical rules.
Symfony Translation is a PHP library and framework component for internationalizing applications. It provides a complete system for managing message catalogs, handling locale-aware string translation, and formatting messages using ICU MessageFormat syntax to support pluralization, gender, and conditional selection. The component organizes translatable strings into named domains, supports key-based lookup that decouples source text from localized versions, and offers deferred rendering through translatable objects that store parameters and render only when output is needed. The library disting
Applies language-specific plural rules to select the correct grammatical form for a numeric count.
Lingui is a JavaScript internationalization library that provides a framework-agnostic core with bindings for React, SolidJS, Svelte, Astro, and other JavaScript frameworks. It operates through a compile-time message extraction pipeline that scans source files for translatable strings, generates standard PO, JSON, or CSV catalog files, and compiles them into optimized JavaScript modules for production deployment. The library uses macro-based message definition to wrap translatable text in source code while preserving context for extraction, and includes a plural rule engine that automatically
Generates correct plural forms for any language automatically using CLDR plural rules without developer intervention.
tModLoader is a modding framework and toolset designed for expanding game content and extending core game logic. It provides a polymorphic content API that allows for the creation of new items, NPCs, projectiles, and world assets through object-oriented inheritance. The project is distinguished by its advanced code modification capabilities, utilizing intermediate language bytecode patching and reflection-based private access to alter internal game behavior. It features a hot-reloading assembly runtime that enables developers to recompile and apply source code changes in real-time without res
tModLoader selects different word forms based on numeric values using language-specific cardinal rules.
Globalize est une bibliothèque JavaScript d'internationalisation qui utilise les données JSON du Unicode Common Locale Data Repository (CLDR) pour fournir des services de localisation. Elle fonctionne comme un formateur de chaînes sensible aux paramètres régionaux et un système de transformation des dates, heures, devises et valeurs numériques en chaînes basées sur des modèles régionaux spécifiques. La bibliothèque inclut un moteur de localisation précompilé qui génère des fonctions de formatage optimisées lors du processus de build. Cette approche réduit la surcharge à l'exécution et supprime le besoin de charger des données de localisation brutes lors de l'exécution. Le projet couvre un large éventail de capacités d'internationalisation, notamment le formatage du temps relatif, la gestion dynamique de la pluralisation et le formatage de messages localisés prenant en charge les flexions de genre et les variables spécifiques à la langue. Il gère également la conversion des valeurs monétaires et des horodatages en chaînes correspondant aux attentes régionales.
Implements logic to select the correct grammatical string forms based on numeric values and locale-specific grammar.
Globalize est une bibliothèque JavaScript d'internationalisation et un moteur de localisation Unicode CLDR. Elle fournit une boîte à outils pour formater les dates, les nombres et les devises en utilisant le Unicode Common Locale Data Repository et les fuseaux horaires IANA. Le projet dispose d'un compilateur de localisation au moment du build qui précompile les règles en formateurs statiques pour réduire la surcharge à l'exécution et la taille du bundle. Il inclut un système pour analyser et formater des chaînes complexes en utilisant la syntaxe ICU MessageFormat, prenant en charge les variables, la pluralisation et les flexions de genre. La bibliothèque couvre une large surface de capacités de localisation, notamment l'analyse bidirectionnelle des dates et heures, la tokenisation des nombres et devises, et le formatage du temps relatif. Elle gère le chargement des données de localisation, la configuration de la langue à l'échelle de l'application et les chaînes d'héritage de messages pour résoudre les clés de traduction manquantes.
Resolves and formats messages based on locale-specific pluralization rules to ensure grammatical correctness.
go-humanize est une bibliothèque Go permettant de convertir des nombres bruts, des tailles d'octets et des durées en chaînes de caractères en langage naturel pour améliorer la lisibilité humaine. Le projet fournit des formateurs spécialisés pour les tailles d'octets utilisant les normes SI ou IEC, ainsi qu'un formateur de temps relatif qui transforme les durées en descriptions telles que "il y a trois jours". Il inclut également un formateur d'unités SI pour convertir des valeurs numériques vers et depuis les préfixes et symboles du Système International d'Unités. Au-delà des unités techniques, la bibliothèque inclut des utilitaires de langage naturel pour la mise au pluriel des noms, la génération de nombres ordinaux et la jonction de listes de mots avec des conjonctions grammaticales. Des outils numériques supplémentaires gèrent les séparateurs de milliers, la précision décimale et les suffixes pour les grands nombres.
Determines the correct English noun form based on numeric counts using regular and irregular grammar rules.
Goravel est un scaffold de développement complet et un framework pour créer des applications web, des API REST et des services gRPC en utilisant le langage de programmation Go. Il implémente une architecture modèle-vue-contrôleur et fournit une boîte à outils complète pour des serveurs et clients RPC haute performance. Le framework se distingue par son écosystème intégré étendu, qui inclut un ORM fluide pour la gestion de base de données et une boîte à outils en ligne de commande dédiée pour l'automatisation administrative et le scaffolding de projet. Il dispose d'une abstraction de service basée sur des drivers qui permet aux développeurs de changer de backend de stockage, de cache et de session sans modifier la logique de l'application. La plateforme couvre une large surface de capacités applicatives, notamment le traitement de tâches asynchrones avec des files d'attente distribuées, la gestion sécurisée des identités via l'authentification par jeton, et une couche de sécurité robuste avec chiffrement et contrôle d'accès. Elle fournit également des outils pour la localisation de contenu, le rendu de modèles et une infrastructure de test automatisée avec mock de dépendances.
Implements linguistic rules to select the correct translation string based on numeric counts.
Sprig is a comprehensive library of helper functions designed to extend the Go text template engine. It provides a wide array of custom functions that can be injected into the engine to enable complex data manipulation and logic directly within templates. The project offers specialized capabilities for cryptography, including the generation of private keys, X.509 certificates, and secure password hashes. It also includes advanced logic extensions for semantic versioning comparison, ternary evaluations, and the resolution of environment variables from the host operating system. The library co
Provides logic to select different string representations based on integer counts for singular and plural forms.
AngularJS Internationalization Library est un framework de localisation pour les applications AngularJS 1.x. Il fonctionne comme un outil de traduction i18n utilisé pour remplacer le texte statique de l'interface utilisateur par des versions localisées basées sur une locale sélectionnée. Le framework gère le contenu multilingue via le chargement asynchrone de fichiers de traduction pour minimiser la taille du bundle. Il inclut des systèmes pour gérer les règles de pluralisation et interpoler des variables dynamiques dans les chaînes de traduction. Le projet fournit également des capacités de changement de langue et de résolution de chaîne de secours pour garantir qu'une chaîne lisible est affichée lorsqu'une clé de traduction principale est manquante.
Implements linguistic logic to select the correct translation string based on numeric values and grammatical plural forms.
Pyramid est un framework web Python et une boîte à outils WSGI conçus pour créer des applications web. Il fonctionne comme un moteur de routage d'URL qui mappe les requêtes HTTP entrantes vers des vues spécifiques en utilisant à la fois le routage basé sur des motifs et la traversée d'arbres de ressources hiérarchiques. Le framework se distingue par son système de dispatch hybride, permettant aux développeurs de combiner la correspondance d'URL par expressions régulières avec la capacité de résoudre les requêtes en naviguant dans un arbre d'objets imbriqués. Il implémente une architecture de composants flexible qui prend en charge la gestion du registre d'applications, l'exécution différée de la configuration et la possibilité de remplacer des vues ou des routes sans modifier le code source original. Sa surface de capacités plus large couvre la gestion des identités via des cookies signés et l'autorisation basée sur les ACL, un système de coordination piloté par les événements pour le cycle de vie des requêtes, et des services d'internationalisation pour la traduction de l'UI. Il fournit également des outils pour le rendu de contenu via des sérialiseurs personnalisés et l'intégration de templates, ainsi qu'un pipeline de middleware pour injecter une logique transversale. La boîte à outils inclut une interface de ligne de commande administrative pour l'inspection des routes, le scaffolding de projets et le débogage d'applications.
Implements linguistic rules for selecting the correct singular or plural string form based on numeric values.