28 مستودعات
Custom types created by the programmer to extend the set of available primitive types.
Distinct from Primitive Type Utilities: Candidates focus on formatters or restrictions rather than the general concept of defining custom types.
Explore 28 awesome GitHub repositories matching programming languages & runtimes · User-Defined Types. Refine with filters or upvote what's useful.
Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie
Allows the grouping of named values and methods into structured object types.
The Concise TypeScript Book: A Concise Guide to Effective Development in TypeScript. Free and Open Source.
Teaches how to define the shape and constraints of data using static types to catch errors before runtime.
This project is an interactive programming education resource and tutorial designed for learning the Rust programming language and systems programming concepts. It provides a collection of runnable and editable code examples that serve as a practical reference for language syntax and implementation. The resource features an interactive code sandbox that allows users to execute and test code snippets in real time. It emphasizes the verification of technical accuracy by executing embedded code blocks during the build process to ensure all examples remain functional. The content covers a compre
Teaches the use of both primitive and custom-defined types to represent data.
Penrose is a compiler that transforms structured mathematical notation into optimized SVG diagrams. It uses a three-stage pipeline of separate domain, substance, and style files to define mathematical objects, relationships, and visual presentation, then solves continuous optimization problems with user-defined spatial constraints and objectives to automatically arrange diagram elements. The system separates diagram content from visual style using distinct declarative languages, and provides a typed domain language with subtype hierarchies for mathematical objects. It supports embedding compi
Defines the kinds of objects that can appear in a diagram, establishing the vocabulary for the visual domain.
Arktype is a TypeScript runtime validation library and schema orchestrator. It synchronizes TypeScript types with runtime data validation, allowing users to define type-safe schemas that ensure unknown data adheres to specific structures during application execution. The project distinguishes itself by using set-theory type analysis to determine intersections and subtype compatibility, alongside JIT-compiled validation functions for optimized performance. It supports advanced type modeling through branded type constraints, recursive alias resolution, and the ability to generate runtime valida
Allows the creation of composite types by extending or intersecting multiple object definitions.
C4-PlantUML is a code-driven library that generates C4 model software architecture diagrams from PlantUML source text. It provides a set of reusable macros for creating system context, container, component, and deployment diagrams, enabling architects and developers to describe and communicate software architecture using the C4 model notation directly from diagram-as-code source files. The library distinguishes itself through hierarchical element nesting, which builds diagrams by nesting elements inside boundaries using PlantUML's rectangle and package constructs, and layout-direction control
Supports creating dynamic C4 diagrams that model interaction sequences between system elements.
MobX State Tree is a structured, tree-based state management library for JavaScript applications that combines typed model definitions with reactive snapshots and patch-based change tracking. It provides a reactive state container with runtime and compile-time type safety, where application state is defined as a tree of typed models with collocated actions, computed views, and lifecycle hooks for predictable state mutations. The library is built around an action-centric mutation model that encapsulates all state changes within named functions that directly modify the tree, supported by genera
Declares typed properties with defaults for state models, a fundamental part of model definition.
Gopher-lua is a complete implementation of the Lua language and its standard libraries written natively in Go. It serves as an embedded scripting engine and virtual machine that allows Go applications to execute Lua scripts and exchange data between the host and the script environment. The project provides a bytecode compiler to transform source code into a binary format for faster execution. It enables deep integration between the two languages by allowing the registration of native Go functions to be called from scripts, and the invocation of script functions directly from Go. The engine c
Enables the definition of custom data types and behaviors using user-defined data and metatables.
cva is a TypeScript utility for defining and resolving visual variants for UI components with full type safety. It generates CSS class strings from typed variant definitions, enabling compile-time validation of component usage by deriving the union of all variant prop types from a configuration object. The library distinguishes itself through compound variant matching, which activates styles only when multiple independent variant conditions are simultaneously satisfied, merging their class names. It also provides default value propagation to ensure consistent rendering when no explicit varian
Defines component variants as typed objects so the compiler catches invalid combinations before runtime.
Provides a flexible type system for defining custom chromosomes and individuals in evolutionary algorithms.
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
Creates a shorthand name for a complex type expression, simplifying syntax without affecting the type graph.
هذا المشروع عبارة عن مجموعة أدوات تعتمد على TypeScript توفر مصممات (decorators) وهياكل قائمة على الفئات لبناء مكونات Vue.js. تعمل كغلاف يستبدل تكوين كائن واجهة برمجة التطبيقات القياسي بمكتبة قائمة على الفئات، مما يسمح للمطورين بتحديد منطق المكون، والحالة، والبيانات الوصفية باستخدام خصائص مكتوبة (typed properties). تركز مجموعة الأدوات على استخدام مصممات TypeScript لتعيين خصائص الفئة إلى خيارات المكون مثل الدعائم (props)، والنماذج، والمراقبين. تتيح التحقق من الدعائم القائم على النوع وتوفر بناء جملة مهيكلاً لإدارة مزامنة الحالة التفاعلية وتواصل المكونات. تغطي المكتبة مجالات قدرة واسعة بما في ذلك مشاركة البيانات الهرمية من خلال حقن التبعية، وربط النموذج ثنائي الاتجاه، ومراقبة تغيير الخصائص. كما تتضمن أنظمة لإنشاء مراجع مكتوبة لعناصر HTML أو مثيلات المكونات الفرعية للتلاعب المباشر.
Defines input properties for components with expected types and default values.
gofakeit is a Go library for creating realistic synthetic datasets and populating Go structs with mock information. It functions as a deterministic data generator, allowing for seedable random number generation to ensure reproducible datasets for software testing. The project distinguishes itself by providing a mock data API server that exposes generation functions as HTTP endpoints and a synthetic dataset exporter for producing files in CSV, JSON, and XML formats. It also includes a command-line interface for generating mock data directly from the terminal. The library covers a wide array o
Allows developers to define custom fake data logic by implementing specific Go interfaces.
هذا المشروع عبارة عن مجموعة شاملة من مواد تعليم برمجة Python، بما في ذلك البرامج التعليمية، والتمارين، وعينات الكود المنسقة. يعمل كمنهج تعليمي ومجموعة أدوات هندسة برمجيات، باستخدام Jupyter Notebooks لدمج الكود القابل للتنفيذ مع نص تعليمي وصفي. يوفر المستودع أدلة تنفيذ عملية لبناء تطبيقات نماذج لغوية كبيرة، مثل أنظمة التوليد المعزز بالاسترجاع، ووكلاء الذكاء الاصطناعي ذوي الحالة، وسير عمل التعلم الآلي. يتميز بتقديم نهج منظم لسير عمل الترميز الوكيل، وتغطية تقطير نافذة السياق، وتوجيه النموذج المستقل عن المزود، والمخرجات المهيكلة المفروضة بالمخطط. تغطي المواد مجموعة واسعة من قدرات هندسة البرمجيات، بما في ذلك البرمجة غير المتزامنة مع طوابير المهام الموزعة، وتطوير تطبيقات الويب مع REST APIs، وسير عمل تحليل البيانات. كما يتضمن موارد لإتقان التصميم الموجه للكائنات، وتنفيذ خطوط أنابيب CI/CD، وتطبيق معايير التنسيق والتدقيق المهنية.
Determine an object's class or check if an object is an instance of a type.
Slang is a shader compiler framework that combines a modular shading language with automatic differentiation, multi-target code generation, and an intrinsic mapping and extension system. At its core, Slang provides a differentiable shader compiler that automatically generates forward and backward derivative propagation for functions with control flow, enabling gradient-based optimization in graphics. The framework also includes a fully featured shader language with modules, generics, interfaces, and separate compilation, all designed for building reusable shader libraries. From a single source
Replaces declared structs or types with target-specific types in generated output for direct use of native library types.
easyjson is a high-performance JSON serializer and memory-optimized parser for Go. It provides a reflectionless code generator that creates static Go methods for marshaling and unmarshaling data, eliminating the need for runtime reflection to improve execution speed. The library reduces CPU and memory overhead through several optimization strategies. It employs a system of reusable memory buffer pools to minimize heap allocations and garbage collection pressure. Additionally, it utilizes string interning to deduplicate repeated values and zero-copy string referencing to point to existing buff
Maps JSON fields to struct members using generated logic tailored to the specific data schema.
هذا المشروع عبارة عن دليل شامل ومورد تعليمي للغة TypeScript. يغطي المبادئ الأساسية للغة، بما في ذلك نظام الأنواع الهيكلي، وتحليل الأنواع الساكن، وعملية تحويل ملفات المصدر المكتوبة بأنواع إلى JavaScript. تفصل المادة كيفية نمذجة البيانات المعقدة ومنطق الأنواع القابل لإعادة الاستخدام باستخدام الأنواع العامة (generics)، والأنواع الشرطية، والأنواع المعينة. كما يشرح استخدام ملفات الإعلان لتوفير سلامة الأنواع لمكتبات JavaScript الخارجية ودمج فحص الأنواع في مشاريع JavaScript الحالية عبر تعليقات JSDoc. يمتد نطاق المحتوى إلى أنماط البرمجة كائنية التوجه، ومعالجة DOM، وتكوين سلوكيات المترجم. يتضمن توجيهاً حول إدارة قابلية التشغيل البيني للوحدات، وإعداد خطوط أنابيب البناء، واستخدام ذكاء المحرر لتحسين إنتاجية المطور.
Provides instructions on using interfaces and intersections to compose and extend object types.
Walt هو مترجم (transpiler) ولغة مكتوبة تحول صيغة تشبه JavaScript إلى تنسيق WebAssembly الثنائي. تعمل كأداة لتطوير منطق عالي الأداء للمتصفحات وبيئات التشغيل عبر ترجمة كود المصدر المكتوب إلى تنسيق نص WebAssembly. يتضمن المشروع محملاً مدمجاً مع أداة التجميع (bundler) يقوم بأتمتة إعادة تجميع ملفات المصدر أثناء عملية البناء. ويوفر مديراً للذاكرة الخطية يستخدم لتحديد تخطيطات البيانات المخصصة، والهياكل، ومخصصات الذاكرة داخل كومة متجاورة. تدعم اللغة توقيعات الدوال المحددة، والأنواع الرقمية، والقدرة على تصدير الدوال والمتغيرات العامة أو استيراد دوال خارجية من بيئة المضيف. وتمكن من استخدام الإغلاقات الوظيفية (closures)، ومؤشرات الدوال، وتنظيم البيانات المهيكل عبر إزاحات الذاكرة الثنائية.
Provides the ability to create user-defined function and object types to guide the compiler.
Buck2 هي أداة بناء monorepo قابلة للبرمجة ونظام بناء محكم (hermetic) مصمم لإدارة المشاريع واسعة النطاق ذات الرسوم البيانية المستهدفة المعقدة وتبعيات اللغات المتعددة. تعمل كإطار عمل للتنفيذ عن بُعد ومحلل للرسم البياني للتبعية، وتوفر محرك تخزين مؤقت للقطع الأثرية (artifact) لضمان نتائج بناء قابلة لإعادة الإنتاج ومتسقة عبر بيئات مختلفة. يتميز النظام بمحرك حساب تزايدي يعيد حساب العقد المحددة فقط في الرسم البياني للتبعية التي تم إبطالها بسبب التغييرات. ويستخدم تخزيناً قابلاً للعنونة بالمحتوى لتخزين نتائج البناء مؤقتاً ويدعم سباق التنفيذ عن بُعد، حيث يتم تنفيذ إجراءات البناء محلياً وعن بُعد في وقت واحد لإرجاع النتيجة الأسرع. يغطي سطح قدراتها أتمتة البناء متعدد اللغات، وتجريد سلسلة الأدوات، والتكوين القائم على القيود لإدارة متغيرات البناء عبر المنصات. يتضمن المشروع أيضاً أدوات مراقبة البناء لاستبطان الرسم البياني واكتشاف التغييرات، بالإضافة إلى آليات التحكم في الوصول لتقييد رؤية الهدف.
Combines attribute specifications with implementation functions to create new types of buildable targets.
lua-language-server is a static analysis tool and type checker for the Lua language that implements the Language Server Protocol. It provides a system for detecting type mismatches, unused code, and logic errors in source files. The project features an inference-based type system that deduces variable types and supports optional annotations and meta files to enforce type safety. It allows for the definition of custom types and function signatures, including support for overloads and member visibility controls. The server provides a broad set of IDE capabilities, including real-time code auto
Allows the definition of custom type aliases, enums, and class structures to enforce type safety.