Skip to content

Add new Borm project (#13930) - #13955

Merged
msynk merged 4 commits into
developfrom
msynk/13930-borm-initial-port
Oct 19, 2026
Merged

msynk merged 4 commits into
developfrom
msynk/13930-borm-initial-port

Conversation

@msynk

@msynk msynk commented Oct 19, 2026

Copy link
Copy Markdown
Member

closes #13930

@msynk
msynk requested a review from yasmoradi as a code owner October 19, 2026 05:00
@coderabbitai

coderabbitai Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 261 files, which is 111 over the limit of 150.

To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: cec866ae-9107-456f-90bf-8a68adfff1d3
📥 Commits

Reviewing files that changed from the base of the PR and between e43c56f and 81c2fa2.

⛔ Files ignored due to path filters: 2
  • src/Borm/Bit.Borm/package-lock.json is excluded by !**/package-lock.json
  • src/Borm/Demo/Server/wwwroot/favicon.svg is excluded by !**/*.svg
📒 Files selected for processing: 261
  • .github/agents/test-platform.md
  • .github/copilot-instructions.md
  • .github/workflows/all.cd.yml
  • .github/workflows/bit.ci.Borm.e2e.yml
  • .github/workflows/bit.ci.Borm.yml
  • .github/workflows/borm.demo.cd.yml
  • .github/workflows/nuget.org.yml
  • .github/workflows/prerelease.nuget.org.yml
  • .gitignore
  • README.md
  • src/Bit.CI.Release.slnx
  • src/Bit.slnx
  • src/BlazorUI/CLAUDE.md
  • src/BlazorUI/Demo/Bit.BlazorUI.Demo.Server/SignalR/AppHub.cs
  • src/Bmage/Bit.Bmage.Demo/Client/Pages/McpServerPage.razor
  • src/Borm/Bit.Borm.FluentValidation/Bit.Borm.FluentValidation.csproj
  • src/Borm/Bit.Borm.FluentValidation/BormFluentValidationIntegration.cs
  • src/Borm/Bit.Borm.slnx
  • src/Borm/Bit.Borm/Bit.Borm.csproj
  • src/Borm/Bit.Borm/BormDataAnnotationsIntegration.cs
  • src/Borm/Bit.Borm/BormServiceCollectionExtensions.cs
  • src/Borm/Bit.Borm/Building/BormBuilder.cs
  • src/Borm/Bit.Borm/Building/BormBuilderOfT.cs
  • src/Borm/Bit.Borm/Building/BormEnumOptions.cs
  • src/Borm/Bit.Borm/Building/BormExpressionPath.cs
  • src/Borm/Bit.Borm/Building/BormFieldBuilder.cs
  • src/Borm/Bit.Borm/Building/BormFieldTypeResolver.cs
  • src/Borm/Bit.Borm/Building/BormStepBuilder.cs
  • src/Borm/Bit.Borm/Components/BormArrayFieldView.razor
  • src/Borm/Bit.Borm/Components/BormErrorSummary.razor
  • src/Borm/Bit.Borm/Components/BormField.razor
  • src/Borm/Bit.Borm/Components/BormFieldList.razor
  • src/Borm/Bit.Borm/Components/BormFieldView.razor
  • src/Borm/Bit.Borm/Components/BormValidationMessages.razor
  • src/Borm/Bit.Borm/Components/BormView.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormCheckboxInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormComboboxInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormDateInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormFileInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormInputBase.cs
  • src/Borm/Bit.Borm/Components/Inputs/BormMultiSelectInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormNumberInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormRadioInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormRangeInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormSelectInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormStaticContent.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormTagsInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormTextAreaInput.razor
  • src/Borm/Bit.Borm/Components/Inputs/BormTextInput.razor
  • src/Borm/Bit.Borm/Data/BormDictionaryDataAccessor.cs
  • src/Borm/Bit.Borm/Data/BormModelDataAccessor.cs
  • src/Borm/Bit.Borm/Data/BormNumber.cs
  • src/Borm/Bit.Borm/Data/BormPath.cs
  • src/Borm/Bit.Borm/Data/BormPathSegment.cs
  • src/Borm/Bit.Borm/Data/BormScopedDataReader.cs
  • src/Borm/Bit.Borm/Data/IBormDataAccessor.cs
  • src/Borm/Bit.Borm/Data/IBormDataReader.cs
  • src/Borm/Bit.Borm/Generation/BormDataAnnotationsScanner.cs
  • src/Borm/Bit.Borm/Generation/BormSchemaGenerator.cs
  • src/Borm/Bit.Borm/Generation/BormSchemaGeneratorOptions.cs
  • src/Borm/Bit.Borm/Json/BormConditionJson.cs
  • src/Borm/Bit.Borm/Json/BormJsonSchemaExporter.cs
  • src/Borm/Bit.Borm/Json/BormJsonSchemaImporter.cs
  • src/Borm/Bit.Borm/README.md
  • src/Borm/Bit.Borm/Rendering/BormFieldContext.cs
  • src/Borm/Bit.Borm/Rendering/BormFieldRendererRegistry.cs
  • src/Borm/Bit.Borm/Rendering/BormValueConverter.cs
  • src/Borm/Bit.Borm/Rendering/IBormFieldRendererRegistry.cs
  • src/Borm/Bit.Borm/Schema/BormChangeHandler.cs
  • src/Borm/Bit.Borm/Schema/BormComputedValue.cs
  • src/Borm/Bit.Borm/Schema/BormConditionEvaluator.cs
  • src/Borm/Bit.Borm/Schema/BormConditionGroup.cs
  • src/Borm/Bit.Borm/Schema/BormConditionLogic.cs
  • src/Borm/Bit.Borm/Schema/BormConditionOperator.cs
  • src/Borm/Bit.Borm/Schema/BormDefinition.cs
  • src/Borm/Bit.Borm/Schema/BormFieldCondition.cs
  • src/Borm/Bit.Borm/Schema/BormFieldDefinition.cs
  • src/Borm/Bit.Borm/Schema/BormFieldType.cs
  • src/Borm/Bit.Borm/Schema/BormOptionsProvider.cs
  • src/Borm/Bit.Borm/Schema/BormPredicateCondition.cs
  • src/Borm/Bit.Borm/Schema/BormSchemaDiagnostic.cs
  • src/Borm/Bit.Borm/Schema/BormSelectOption.cs
  • src/Borm/Bit.Borm/Schema/BormStep.cs
  • src/Borm/Bit.Borm/Schema/BormUpdateTrigger.cs
  • src/Borm/Bit.Borm/Schema/BormValueNormalizer.cs
  • src/Borm/Bit.Borm/Schema/IBormCondition.cs
  • src/Borm/Bit.Borm/State/BormExternalValidator.cs
  • src/Borm/Bit.Borm/State/BormFieldState.cs
  • src/Borm/Bit.Borm/State/BormState.cs
  • src/Borm/Bit.Borm/State/BormValidationTrigger.cs
  • src/Borm/Bit.Borm/Styles/bit-borm.css
  • src/Borm/Bit.Borm/Validation/BormAsyncDelegateRule.cs
  • src/Borm/Bit.Borm/Validation/BormCollectionSizeRule.cs
  • src/Borm/Bit.Borm/Validation/BormCompareRule.cs
  • src/Borm/Bit.Borm/Validation/BormConditionalRule.cs
  • src/Borm/Bit.Borm/Validation/BormDelegateRule.cs
  • src/Borm/Bit.Borm/Validation/BormEmailRule.cs
  • src/Borm/Bit.Borm/Validation/BormFileRule.cs
  • src/Borm/Bit.Borm/Validation/BormMaxLengthRule.cs
  • src/Borm/Bit.Borm/Validation/BormMinLengthRule.cs
  • src/Borm/Bit.Borm/Validation/BormMultipleOfRule.cs
  • src/Borm/Bit.Borm/Validation/BormOneOfRule.cs
  • src/Borm/Bit.Borm/Validation/BormPatternRule.cs
  • src/Borm/Bit.Borm/Validation/BormRangeRule.cs
  • src/Borm/Bit.Borm/Validation/BormRegex.cs
  • src/Borm/Bit.Borm/Validation/BormRequiredRule.cs
  • src/Borm/Bit.Borm/Validation/BormRuleResult.cs
  • src/Borm/Bit.Borm/Validation/BormUniqueItemsRule.cs
  • src/Borm/Bit.Borm/Validation/BormUrlRule.cs
  • src/Borm/Bit.Borm/Validation/BormValidationContext.cs
  • src/Borm/Bit.Borm/Validation/BormValidationMessage.cs
  • src/Borm/Bit.Borm/Validation/BormValidationSeverity.cs
  • src/Borm/Bit.Borm/Validation/BormValidator.cs
  • src/Borm/Bit.Borm/Validation/IBormMessageProvider.cs
  • src/Borm/Bit.Borm/Validation/IBormValidationRule.cs
  • src/Borm/Bit.Borm/_Imports.razor
  • src/Borm/Bit.Borm/package.json
  • src/Borm/Demo/Client/Bit.Borm.Demo.Client.csproj
  • src/Borm/Demo/Client/Extensions/IServiceCollectionExtensions.cs
  • src/Borm/Demo/Client/Forms/JobApplicationValidator.cs
  • src/Borm/Demo/Client/Forms/Models.cs
  • src/Borm/Demo/Client/Layout/MainLayout.razor
  • src/Borm/Demo/Client/Layout/NavMenu.razor
  • src/Borm/Demo/Client/Pages/ArrayDemo.razor
  • src/Borm/Demo/Client/Pages/BuilderDemo.razor
  • src/Borm/Demo/Client/Pages/CascadingOptionsDemo.razor
  • src/Borm/Demo/Client/Pages/ComboboxAndTagsDemo.razor
  • src/Borm/Demo/Client/Pages/CompositionDemo.razor
  • src/Borm/Demo/Client/Pages/CustomRendererDemo.razor
  • src/Borm/Demo/Client/Pages/DataAnnotationsDemo.razor
  • src/Borm/Demo/Client/Pages/DependentFieldsDemo.razor
  • src/Borm/Demo/Client/Pages/FieldPolishDemo.razor
  • src/Borm/Demo/Client/Pages/FileUploadDemo.razor
  • src/Borm/Demo/Client/Pages/FluentValidationDemo.razor
  • src/Borm/Demo/Client/Pages/Home.razor
  • src/Borm/Demo/Client/Pages/JsonSchemaDemo.razor
  • src/Borm/Demo/Client/Pages/LayoutDemo.razor
  • src/Borm/Demo/Client/Pages/McpServer.razor
  • src/Borm/Demo/Client/Pages/NotFound.razor
  • src/Borm/Demo/Client/Pages/PerRowConditionsDemo.razor
  • src/Borm/Demo/Client/Pages/Quickstart.razor
  • src/Borm/Demo/Client/Pages/SettledAnswersDemo.razor
  • src/Borm/Demo/Client/Pages/StateApiDemo.razor
  • src/Borm/Demo/Client/Pages/ValidationModesDemo.razor
  • src/Borm/Demo/Client/Pages/WizardDemo.razor
  • src/Borm/Demo/Client/Program.cs
  • src/Borm/Demo/Client/Renderers/StarRatingInput.razor
  • src/Borm/Demo/Client/Routes.razor
  • src/Borm/Demo/Client/_Imports.razor
  • src/Borm/Demo/Server/Bit.Borm.Demo.Server.csproj
  • src/Borm/Demo/Server/Components/App.razor
  • src/Borm/Demo/Server/Components/Pages/Error.razor
  • src/Borm/Demo/Server/Components/_Imports.razor
  • src/Borm/Demo/Server/Controllers/McpController.cs
  • src/Borm/Demo/Server/Controllers/McpPrompts.cs
  • src/Borm/Demo/Server/Controllers/McpResources.cs
  • src/Borm/Demo/Server/Dtos/BormMcpDtos.cs
  • src/Borm/Demo/Server/Program.cs
  • src/Borm/Demo/Server/Properties/launchSettings.json
  • src/Borm/Demo/Server/Services/BormApiCatalog.cs
  • src/Borm/Demo/Server/Services/BormCompletions.cs
  • src/Borm/Demo/Server/Services/BormSchemaLab.cs
  • src/Borm/Demo/Server/Services/BormSearchIndex.cs
  • src/Borm/Demo/Server/Services/BormServerInstructions.cs
  • src/Borm/Demo/Server/Services/BormSetupGuide.cs
  • src/Borm/Demo/Server/Services/BormSourceCatalog.cs
  • src/Borm/Demo/Server/Services/BormStylesheetClasses.cs
  • src/Borm/Demo/Server/Services/BormThemeCatalog.cs
  • src/Borm/Demo/Server/Services/BormXmlDocs.cs
  • src/Borm/Demo/Server/appsettings.json
  • src/Borm/Demo/Server/wwwroot/app.css
  • src/Borm/README.md
  • src/Borm/Tests/Bit.Borm.Tests.E2E/AssemblySetup.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/Bit.Borm.Tests.E2E.csproj
  • src/Borm/Tests/Bit.Borm.Tests.E2E/ChoiceTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/ConditionalTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/DemoPagesTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/FieldTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/Infrastructure/BormTest.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/Infrastructure/ChildProcess.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/Infrastructure/DemoHost.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/Infrastructure/E2EEnvironment.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/Infrastructure/PlaywrightSession.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/Infrastructure/RepoLayout.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/JsonSchemaTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/KeyboardTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/README.md
  • src/Borm/Tests/Bit.Borm.Tests.E2E/RepeaterTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/ThemingAndLayoutTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/ValidationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.E2E/WizardTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/Bit.Borm.Tests.Mcp.csproj
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpCall.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpOracleTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpResourcePromptTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpSchemaLabTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpSearchTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpSurfaceTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpTestHost.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/McpToolTests.cs
  • src/Borm/Tests/Bit.Borm.Tests.Mcp/ToolNames.cs
  • src/Borm/Tests/Bit.Borm.Tests/AccessibilityAndOrderingTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ArrayAndWizardTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ArrayPropagationAndWizardKeyTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/BatchAndFileTypeTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/Bit.Borm.Tests.csproj
  • src/Borm/Tests/Bit.Borm.Tests/BrowserFindingsTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/BuilderAndRuleTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ChangePropagationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ChoiceAndReorderTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ChoiceCollectionAndRegistrationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/CombinedExternalValidatorTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ComboboxTagsAndListenerTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ComponentRegressionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ComponentRenderingTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ComputedValueTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ConditionalReadOnlyAndCascadeTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/DataAndPathTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/DataAnnotationsAndTagRuleTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/DataValidationRegressionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/DateRangeAndNormalisationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/DependentRevalidationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/DirtyAndResetFieldTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/FieldOptionsAndLocalisationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/GenerationStateAndJsonTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/GlobalUsings.cs
  • src/Borm/Tests/Bit.Borm.Tests/GroupingAndCompositionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/JsonRoundTripTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/JsonSchemaRegressionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/JsonSchemaTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/MessageIdentityAndOrderingTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/Models.cs
  • src/Borm/Tests/Bit.Borm.Tests/OptionsResilienceTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/RenderingPolishTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/RepeaterFocusTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/RobustnessTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ScopeResolutionAndAnnotationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ScopedConditionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/SearchAndDiagnosticTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/SnapshotCloneAndNotificationTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/StateApiTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/StateBehaviourTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/StateConsistencyRegressionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/StateSemanticsTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/SupersededWorkAndRowStateTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/UpdateTriggerAndFocusTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/UpdateTriggerDiagnosticTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ValidationAndConditionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/ValueConversionTests.cs
  • src/Borm/Tests/Bit.Borm.Tests/WizardNavigationTests.cs
  • src/Templates/Boilerplate/Bit.Boilerplate/.docs/19- Project Miscellaneous Files.md
  • src/Websites/Platform/src/Bit.Websites.Platform.Client/Pages/Home/Products.razor
  • src/Websites/Platform/src/Bit.Websites.Platform.Client/Shared/Footer.razor
  • src/Websites/Platform/src/Bit.Websites.Platform.Client/Shared/Header.razor.cs
  • src/Websites/Platform/src/Bit.Websites.Platform.Client/Shared/Urls.cs
  • src/Websites/Platform/src/Bit.Websites.Platform.Server/Services/Mcp/CodebaseMemoryCli.cs
  • src/Websites/Platform/src/Bit.Websites.Platform.Server/Services/Mcp/McpDocumentationSite.cs
  • src/Websites/Platform/src/Bit.Websites.Platform.Server/Services/Mcp/McpFeedbackTool.cs
  • src/Websites/Platform/src/Bit.Websites.Platform.Server/Services/Mcp/McpProxyService.cs
  • src/Websites/Platform/src/Bit.Websites.Platform.Server/SignalR/AppHub.cs
  • src/Websites/Platform/src/Bit.Websites.Platform.Server/Startup/Services.cs

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@yasmoradi

Copy link
Copy Markdown
Member

@msynk All CI can't have more than 25 workflow_dispatch inputs, and going over that limit broke it (#13947). #13948 removes the input of every job that took about 7 minutes or less, so those jobs always run. If the Borm job doesn't take much time either, please remove the borm input and the if: of its job.

@msynk
msynk merged commit c61663e into develop Oct 19, 2026
11 checks passed
@msynk
msynk deleted the msynk/13930-borm-initial-port branch October 19, 2026 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Port BlazorForm to bitplatform repo

2 participants