Skip to content

Latest commit

History

942 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Pure

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

Repositories

Primitives

RepositoryDescription
Pure.Primitives.AbstractionsBase interfaces for the Pure ecosystem — immutable, composable abstractions over .NET primitive types; AOT-compatible.
Pure.PrimitivesConcrete implementations of immutable, composable primitive types for the Pure ecosystem — type-safe wrappers over .NET primitive types; AOT-compatible.
Pure.Primitives.MaterializedEagerly evaluated Pure primitive wrappers — MaterializedBool, MaterializedString, MaterializedNumber, MaterializedGuid, MaterializedDate, MaterializedTime, and more.
Pure.Primitives.CachedMemoized Pure primitive wrappers — CachedBool, CachedString, CachedNumber, CachedGuid, CachedDate, CachedTime, CachedDateTime, and others.
Pure.Primitives.ChoicesConditional selection types for Pure primitives — BoolChoice, StringChoice, NumberChoice, GuidChoice, DateChoice, TimeChoice, DateTimeChoice, and CharChoice.
Pure.Primitives.SwitchesSwitch-based conditional primitives for the Pure ecosystem — evaluate one of N branches based on a discriminant value.
Pure.Primitives.RandomRandom value generators for Pure primitive types — RandomChar, RandomDate, RandomTime, RandomDateTime, RandomNumber, and collection variants.

Primitive Operations

RepositoryDescription
Pure.Primitives.Bool.OperationsBoolean operations for Pure IBool primitives — And, Or, Xor, Not, BitwiseAnd, BitwiseOr, and equality conditions.
Pure.Primitives.Char.OperationsCharacter classification and comparison operations for Pure IChar primitives — IsDigit, IsLetter, IsUpper, IsLower, EqualCondition, and more.
Pure.Primitives.String.OperationsString operations for Pure IString primitives — concatenation, joining, comparison conditions, substring, and hex encoding.
Pure.Primitives.Number.OperationsComposable arithmetic and comparison value objects over any INumber<T> for the Pure ecosystem — lazy, immutable sealed records.
Pure.Primitives.Date.OperationsImmutable, composable date operations for the Pure ecosystem — comparison conditions and utilities over IDate primitives.
Pure.Primitives.Time.OperationsTemporal comparison conditions for Pure ITime primitives — Before, After, NotBefore, NotAfter, Equal, NotEqual, and a TimeComparer.
Pure.Primitives.DateTime.OperationsTemporal comparison conditions and ordering checks for IDateTime values in the Pure ecosystem — six IBool condition types.

Primitives — Serialization & EF Core

RepositoryDescription
Pure.Primitives.Abstractions.Serialization.SystemSystem.Text.Json converters for Pure.Primitives abstract types — serialize and deserialize IBool, IChar, IString, INumber<T>, IGuid, IDate, ITime, IDateTime.
Pure.Primitives.Abstractions.EFCore.ConvertersEF Core ValueConverter implementations for Pure.Primitives — maps Pure primitive interfaces to .NET types for database storage.
Pure.Primitives.Abstractions.EFCore.ValueComparersEF Core ValueComparer implementations for Pure.Primitives — correct change-tracking for Pure primitive types stored via EF Core.
Pure.Primitives.Abstractions.OpenAPI.SchemaOpenAPI document transformer for the Pure ecosystem — replaces abstract primitive interface schemas with native OpenAPI type representations.

Hash Codes

RepositoryDescription
Pure.HashCodes.AbstractionsBase IDeterminedHash interface for the Pure hash code ecosystem — a byte-enumerable contract for deterministic hash sequences.
Pure.HashCodesDeterministic hash code generation for the Pure ecosystem — stable, byte-enumerable hashes over immutable primitive types via DeterminedHash.

Collections & LINQ

RepositoryDescription
Pure.Collections.GenericGeneric collection types for the Pure ecosystem — Dictionary, Set, Array, OrderedDictionary, and Lookup backed by IDeterminedHash equality.
Pure.Linq.ConditionsLINQ-compatible IBool conditions over IEnumerable<T> sequences for the Pure ecosystem — Empty, NotEmpty, Equal, and NotEqual.

Serialization

RepositoryDescription
Pure.Serialization.JsonJSON serialization utilities for the Pure ecosystem.

Relational Schema

RepositoryDescription
Pure.RelationalSchema.AbstractionsImmutable, composable interfaces for relational database schema metadata — schemas, tables, columns, column types, indexes, and foreign keys.
Pure.RelationalSchemaConcrete implementations of the relational schema domain model — schemas, tables, columns, indexes, and foreign keys using Pure.Primitives.
Pure.RelationalSchema.HashCodesDeterministic hash implementations for relational schema components — schemas, tables, columns, indexes, and foreign keys as composable IDeterminedHash byte sequences.
Pure.RelationalSchema.ConditionsIBool condition types over relational schema components for the Pure ecosystem.
Pure.RelationalSchema.RandomRandom value generators for relational schema components in the Pure ecosystem — schemas, tables, columns, indexes, and foreign keys.
Pure.RelationalSchema.Abstractions.Serialization.SystemSystem.Text.Json converters for Pure.RelationalSchema abstract types — ISchema, ITable, IColumn, IColumnType, IForeignKey, and IIndex.
Pure.RelationalSchema.Abstractions.OpenAPI.SchemaOpenAPI document transformer for Pure.RelationalSchema.Abstractions — corrects schema components for IColumn, IIndex, ITable, IForeignKey, and ISchema.

Relational Schema — Relational & Rich Relational Model

RepositoryDescription
Pure.RelationalSchema.RelationalModel.AbstractionsRelational model interfaces for database schema structures — schemas, tables, columns, indexes, and foreign keys with GUID identity.
Pure.RelationalSchema.RichRelationalModel.AbstractionsUnified schema + relational-model interfaces for the Pure ecosystem — merges structural schema with relational model identity into single composable contracts.
Pure.RelationalSchema.RichRelationalModel.EFCore.ModelsEF Core models implementing the Rich Relational Model abstractions for database schema introspection in the Pure ecosystem.
Pure.RelationalSchema.RichRelationalModel.EFCore.Models.ConfigurationsEF Core IEntityTypeConfiguration<T> implementations for the Pure rich relational schema model — schemas, tables, columns, column types, indexes, and foreign keys.

Relational Schema — Storage

RepositoryDescription
Pure.RelationalSchema.Storage.AbstractionsBase interfaces for reading stored relational schema data — ICell, IRow, IStoredTableDataSet, and IStoredSchemaDataSet; AOT-compatible.
Pure.RelationalSchema.StorageConcrete implementations of stored relational schema data types for the Pure ecosystem — Cell, Row, and StoredSchemaDataset.
Pure.RelationalSchema.Storage.HashCodesDeterministic hash code implementations for relational schema storage types — Cell, Row, IStoredTableDataSet, and IStoredSchemaDataSet.
Pure.RelationalSchema.Storage.Abstractions.Serialization.SystemSystem.Text.Json converters for relational schema storage abstractions — ICell, IRow, IStoredTableDataSet, and IStoredSchemaDataSet.
Pure.RelationalSchema.Storage.Abstractions.OpenAPI.SchemaOpenAPI document transformer for Pure — corrects auto-generated schemas for ICell, IRow, IStoredTableDataSet, and IStoredSchemaDataSet.
Pure.RelationalSchema.Storage.PostgreSQLPostgreSQL storage implementation for the Pure relational schema ecosystem — DDL execution, row access, and row insertion via IDbConnection.
Pure.RelationalSchema.Storage.PureQL.ProjectionExecutes PureQL queries against in-memory relational schema datasets — translates a Query AST into a LINQ-backed IStoredTableDataSet.

Relational Schema — Self-Description

RepositoryDescription
Pure.RelationalSchema.Self.SchemaConcrete ISchema that self-describes the relational schema metadata model — the database schema for a schema registry with 13 tables and 17 foreign keys.
Pure.RelationalSchema.Self.Storage.ProjectionProjects an ISchema into normalized storage rows for the Pure relational schema meta-model.
Pure.RelationalSchema.Self.Storage.IntrojectionConverts relational schema storage rows into a LINQ-queryable IQueryable<ISchema> object graph — schema introspection over IStoredSchemaDataSet.

Chart Model

RepositoryDescription
Pure.Chart.Model.AbstractionsChart model interfaces for the Pure ecosystem — immutable, composable abstractions over chart data structures; AOT-compatible.
Pure.Chart.ModelConcrete immutable record implementations of the chart domain model for the Pure ecosystem — implements Pure.Chart.Model.Abstractions contracts.
Pure.Chart.Model.HashCodesDeterministic hash code implementations for chart model abstractions in the Pure ecosystem.
Pure.Chart.RelationalModel.AbstractionsRelational-model interfaces for chart entities in the Pure ecosystem — immutable contracts for charts, types, series, and axes.
Pure.Chart.RelationalModelConcrete relational model records for the Pure ecosystem — immutable implementations of chart, axis, and series domain entities.
Pure.Chart.RelationalModel.HashCodesDeterministic hash code implementations for chart relational model entities in the Pure ecosystem.
Pure.Chart.RelationalModel.Abstractions.Serialization.SystemSystem.Text.Json converters for chart relational model abstractions in the Pure ecosystem.
Pure.Chart.RichRelationalModel.AbstractionsCombined chart domain-model and relational-model interfaces for the Pure ecosystem — rich view with both navigation properties and FK identity.
Pure.Chart.RichRelationalModelConcrete immutable record implementations of the rich relational chart model for the Pure ecosystem — carries both FK IDs and resolved navigations.
Pure.Chart.RichRelationalModel.HashCodesDeterministic hash code implementations for chart rich relational model entities in the Pure ecosystem.
Pure.Chart.RichRelationalModel.Abstractions.Serialization.SystemSystem.Text.Json converters for the Pure.Chart rich relational model abstractions — IChartRichRelationalModel and related interfaces.
Pure.Chart.RichRelationalModel.EFCoreEF Core DbContext for the Pure.Chart RichRelationalModel — maps chart, axis, chart type, and series entities to a relational database.
Pure.Chart.RichRelationalModel.EFCore.ModelsEF Core entity record implementations of the chart rich relational model for the Pure ecosystem.
Pure.Chart.RichRelationalModel.EFCore.Models.ConfigurationsEF Core IEntityTypeConfiguration<T> implementations for the Pure.Chart rich relational model — chart, axis, chart type, and series entity configurations.

Diagram Model

RepositoryDescription
Pure.Diagram.Model.AbstractionsDiagram model interfaces for the Pure ecosystem — immutable, composable abstractions over IDiagram, IDiagramType, and IDiagramSeries; AOT-compatible.
Pure.Diagram.ModelConcrete immutable record implementations of the diagram domain model for the Pure ecosystem — implements Pure.Diagram.Model.Abstractions contracts.
Pure.Diagram.Model.HashCodesDeterministic hash code implementations for diagram model abstractions in the Pure ecosystem.
Pure.Diagram.RelationalModel.AbstractionsRelational-model interfaces for diagram entities in the Pure ecosystem — immutable contracts for diagrams, diagram types, and series.
Pure.Diagram.RelationalModelConcrete relational model records for the Pure ecosystem — immutable implementations of diagram domain entities.
Pure.Diagram.RelationalModel.HashCodesDeterministic hash code implementations for diagram relational model entities in the Pure ecosystem.
Pure.Diagram.RelationalModel.Abstractions.Serialization.SystemSystem.Text.Json converters for diagram relational model abstractions in the Pure ecosystem.
Pure.Diagram.RichRelationalModel.AbstractionsCombined diagram domain-model and relational-model interfaces for the Pure ecosystem — rich view with both navigation properties and FK identity.
Pure.Diagram.RichRelationalModelConcrete immutable record implementations of the rich relational diagram model for the Pure ecosystem — carries both FK IDs and resolved navigations.
Pure.Diagram.RichRelationalModel.HashCodesDeterministic hash code implementations for diagram rich relational model entities in the Pure ecosystem.
Pure.Diagram.RichRelationalModel.Abstractions.Serialization.SystemSystem.Text.Json converters for the Pure.Diagram rich relational model abstractions — IDiagramRichRelationalModel and related interfaces.
Pure.Diagram.RichRelationalModel.EFCoreEF Core DbContext for the Pure.Diagram RichRelationalModel — maps diagram, diagram type, and series entities to a relational database.
Pure.Diagram.RichRelationalModel.EFCore.ModelsEF Core entity record implementations of the diagram rich relational model for the Pure ecosystem.
Pure.Diagram.RichRelationalModel.EFCore.Models.ConfigurationsEF Core IEntityTypeConfiguration<T> implementations for the Pure.Diagram rich relational model — diagram, diagram type, and series entity configurations.

Infrastructure

RepositoryDescription
Pure.TemplateProject 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

About

Home repository for the Pure ecosystem — immutable, composable, AOT-compatible .NET libraries.

Resources

Code of conduct

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Generated from kudima03/Pure.Template