Home repository for the Pure ecosystem — a collection of immutable, composable, AOT-compatible .NET libraries.
Clone with all submodules:
git clone --recurse-submodules https://github.com/kudima03/Pure.git
Or, after a plain clone:
git submodule update --init --recursive
Repository
Description
Pure.Primitives.Abstractions
Base interfaces for the Pure ecosystem — immutable, composable abstractions over .NET primitive types; AOT-compatible.
Pure.Primitives
Concrete implementations of immutable, composable primitive types for the Pure ecosystem — type-safe wrappers over .NET primitive types; AOT-compatible.
Pure.Primitives.Materialized
Eagerly evaluated Pure primitive wrappers — MaterializedBool, MaterializedString, MaterializedNumber, MaterializedGuid, MaterializedDate, MaterializedTime, and more.
Pure.Primitives.Cached
Memoized Pure primitive wrappers — CachedBool, CachedString, CachedNumber, CachedGuid, CachedDate, CachedTime, CachedDateTime, and others.
Pure.Primitives.Choices
Conditional selection types for Pure primitives — BoolChoice, StringChoice, NumberChoice, GuidChoice, DateChoice, TimeChoice, DateTimeChoice, and CharChoice.
Pure.Primitives.Switches
Switch-based conditional primitives for the Pure ecosystem — evaluate one of N branches based on a discriminant value.
Pure.Primitives.Random
Random value generators for Pure primitive types — RandomChar, RandomDate, RandomTime, RandomDateTime, RandomNumber, and collection variants.
Repository
Description
Pure.Primitives.Bool.Operations
Boolean operations for Pure IBool primitives — And, Or, Xor, Not, BitwiseAnd, BitwiseOr, and equality conditions.
Pure.Primitives.Char.Operations
Character classification and comparison operations for Pure IChar primitives — IsDigit, IsLetter, IsUpper, IsLower, EqualCondition, and more.
Pure.Primitives.String.Operations
String operations for Pure IString primitives — concatenation, joining, comparison conditions, substring, and hex encoding.
Pure.Primitives.Number.Operations
Composable arithmetic and comparison value objects over any INumber<T> for the Pure ecosystem — lazy, immutable sealed records.
Pure.Primitives.Date.Operations
Immutable, composable date operations for the Pure ecosystem — comparison conditions and utilities over IDate primitives.
Pure.Primitives.Time.Operations
Temporal comparison conditions for Pure ITime primitives — Before, After, NotBefore, NotAfter, Equal, NotEqual, and a TimeComparer.
Pure.Primitives.DateTime.Operations
Temporal comparison conditions and ordering checks for IDateTime values in the Pure ecosystem — six IBool condition types.
Primitives — Serialization & EF Core
Repository
Description
Pure.HashCodes.Abstractions
Base IDeterminedHash interface for the Pure hash code ecosystem — a byte-enumerable contract for deterministic hash sequences.
Pure.HashCodes
Deterministic hash code generation for the Pure ecosystem — stable, byte-enumerable hashes over immutable primitive types via DeterminedHash.
Repository
Description
Pure.Collections.Generic
Generic collection types for the Pure ecosystem — Dictionary, Set, Array, OrderedDictionary, and Lookup backed by IDeterminedHash equality.
Pure.Linq.Conditions
LINQ-compatible IBool conditions over IEnumerable<T> sequences for the Pure ecosystem — Empty, NotEmpty, Equal, and NotEqual.
Repository
Description
Pure.RelationalSchema.Abstractions
Immutable, composable interfaces for relational database schema metadata — schemas, tables, columns, column types, indexes, and foreign keys.
Pure.RelationalSchema
Concrete implementations of the relational schema domain model — schemas, tables, columns, indexes, and foreign keys using Pure.Primitives.
Pure.RelationalSchema.HashCodes
Deterministic hash implementations for relational schema components — schemas, tables, columns, indexes, and foreign keys as composable IDeterminedHash byte sequences.
Pure.RelationalSchema.Conditions
IBool condition types over relational schema components for the Pure ecosystem.
Pure.RelationalSchema.Random
Random value generators for relational schema components in the Pure ecosystem — schemas, tables, columns, indexes, and foreign keys.
Pure.RelationalSchema.Abstractions.Serialization.System
System.Text.Json converters for Pure.RelationalSchema abstract types — ISchema, ITable, IColumn, IColumnType, IForeignKey, and IIndex.
Pure.RelationalSchema.Abstractions.OpenAPI.Schema
OpenAPI document transformer for Pure.RelationalSchema.Abstractions — corrects schema components for IColumn, IIndex, ITable, IForeignKey, and ISchema.
Relational Schema — Relational & Rich Relational Model
Relational Schema — Storage
Repository
Description
Pure.RelationalSchema.Storage.Abstractions
Base interfaces for reading stored relational schema data — ICell, IRow, IStoredTableDataSet, and IStoredSchemaDataSet; AOT-compatible.
Pure.RelationalSchema.Storage
Concrete implementations of stored relational schema data types for the Pure ecosystem — Cell, Row, and StoredSchemaDataset.
Pure.RelationalSchema.Storage.HashCodes
Deterministic hash code implementations for relational schema storage types — Cell, Row, IStoredTableDataSet, and IStoredSchemaDataSet.
Pure.RelationalSchema.Storage.Abstractions.Serialization.System
System.Text.Json converters for relational schema storage abstractions — ICell, IRow, IStoredTableDataSet, and IStoredSchemaDataSet.
Pure.RelationalSchema.Storage.Abstractions.OpenAPI.Schema
OpenAPI document transformer for Pure — corrects auto-generated schemas for ICell, IRow, IStoredTableDataSet, and IStoredSchemaDataSet.
Pure.RelationalSchema.Storage.PostgreSQL
PostgreSQL storage implementation for the Pure relational schema ecosystem — DDL execution, row access, and row insertion via IDbConnection.
Pure.RelationalSchema.Storage.PureQL.Projection
Executes PureQL queries against in-memory relational schema datasets — translates a Query AST into a LINQ-backed IStoredTableDataSet.
Relational Schema — Self-Description
Repository
Description
Pure.Chart.Model.Abstractions
Chart model interfaces for the Pure ecosystem — immutable, composable abstractions over chart data structures; AOT-compatible.
Pure.Chart.Model
Concrete immutable record implementations of the chart domain model for the Pure ecosystem — implements Pure.Chart.Model.Abstractions contracts.
Pure.Chart.Model.HashCodes
Deterministic hash code implementations for chart model abstractions in the Pure ecosystem.
Pure.Chart.RelationalModel.Abstractions
Relational-model interfaces for chart entities in the Pure ecosystem — immutable contracts for charts, types, series, and axes.
Pure.Chart.RelationalModel
Concrete relational model records for the Pure ecosystem — immutable implementations of chart, axis, and series domain entities.
Pure.Chart.RelationalModel.HashCodes
Deterministic hash code implementations for chart relational model entities in the Pure ecosystem.
Pure.Chart.RelationalModel.Abstractions.Serialization.System
System.Text.Json converters for chart relational model abstractions in the Pure ecosystem.
Pure.Chart.RichRelationalModel.Abstractions
Combined chart domain-model and relational-model interfaces for the Pure ecosystem — rich view with both navigation properties and FK identity.
Pure.Chart.RichRelationalModel
Concrete immutable record implementations of the rich relational chart model for the Pure ecosystem — carries both FK IDs and resolved navigations.
Pure.Chart.RichRelationalModel.HashCodes
Deterministic hash code implementations for chart rich relational model entities in the Pure ecosystem.
Pure.Chart.RichRelationalModel.Abstractions.Serialization.System
System.Text.Json converters for the Pure.Chart rich relational model abstractions — IChartRichRelationalModel and related interfaces.
Pure.Chart.RichRelationalModel.EFCore
EF Core DbContext for the Pure.Chart RichRelationalModel — maps chart, axis, chart type, and series entities to a relational database.
Pure.Chart.RichRelationalModel.EFCore.Models
EF Core entity record implementations of the chart rich relational model for the Pure ecosystem.
Pure.Chart.RichRelationalModel.EFCore.Models.Configurations
EF Core IEntityTypeConfiguration<T> implementations for the Pure.Chart rich relational model — chart, axis, chart type, and series entity configurations.
Repository
Description
Pure.Template
Project template for new Pure ecosystem NuGet libraries — pre-configured with standard CI workflows, code style, and package settings.
72 repositories · updated automatically via git submodules