Skip to main content

Templates to use when developing modules with the Crosser SDK.

Total Downloads
2.3K
2,283
Published
Nov 11, 2025
11mo ago

Get Started

dotnet add package Crosser.Templates --version 1.0.0
ProductVersions
.NET
net9.0

README

Crosser Templates

Official .NET template for creating a Crosser flow module using the Crosser SDK.

Overview

This package provides a dotnet template to help developers quickly create new Crosser flow modules with best practices and proper structure.

Installation

Install the dotnet template package:

dotnet new install Crosser.Templates

Crosser Flow Module (crosser-flowmodule)

Creates a new Crosser flow module project with the following structure:

  • Main module project with sample implementation
  • Settings class for module configuration
  • Optional unit test project with sample tests
  • Documentation files
  • Proper project references and dependencies

Basic Usage

Create a new crosser module with default settings:

dotnet new crosser-flowmodule -n MyOrg.FlowModule.SampleModule

Template Options

Option Short Type Default Description
--includeTest -in bool true Include a unit test project with sample tests
--skipRestore -s bool false Skip automatic NuGet package restore after creation
--moduleName -m string MyModule Name of the module class and related files

Naming Conventions and Namespaces

⚠️ Important: Company-Scoped Naming

Always scope your module names to your company or organization to avoid naming conflicts in Crosser environments. This is crucial when deploying modules to shared environments or when distributing modules.

βœ… Recommended naming patterns: Include your organization name or domain in the module name

  • YourOrg.FlowModule.ModuleName (e.g., Acme.FlowModule.DataTransformer)

❌ Avoid generic names: Avoid ommitting your organization name or using overly generic names that coulds conflict with other packages.

  • DataProcessor (too generic, likely to conflict)
  • SQL.Transformer (very common name)

Namespace Structure

The template creates the following namespace structure:

  • Project Name: Uses the -n parameter (e.g., YourOrg.FlowModule.EmailProcessor)
  • Module Class: Uses the -m parameter (e.g., EmailProcessor)
  • Namespace: Matches the project name for consistency

Example:

dotnet new crosser-flowmodule -n Acme.FlowModule.EmailProcessor -m EmailProcessor

This creates:

  • Project: Acme.FlowModule.EmailProcessor
  • Namespace: Acme.FlowModule.EmailProcessor
  • Module class: EmailProcessor
  • Settings class: EmailProcessorSettings

Generated Project Structure

YourModuleName/
β”œβ”€β”€ Module/
β”‚   β”œβ”€β”€ YourModuleName.csproj
β”‚   β”œβ”€β”€ YourModule.cs              # Main module implementation
β”‚   β”œβ”€β”€ YourModuleSettings.cs      # Module settings/configuration
β”‚   β”œβ”€β”€ GlobalUsings.cs            # Global using statements
β”‚   β”œβ”€β”€ CHANGELOG.md               # Module changelog
β”‚   └── docs/
β”‚       β”œβ”€β”€ YourModule.md          # Module documentation
β”‚       β”œβ”€β”€ YourModule.svg         # Module icon/diagram
β”‚       └── YourModule.teaser.md   # Module description
└── UnitTests/ (if includeTest = true)
    β”œβ”€β”€ YourModuleName.UnitTests.csproj
    β”œβ”€β”€ YourModuleTests.cs         # Unit tests for module
    β”œβ”€β”€ FlowMessageTests.cs        # Flow message tests
    └── GlobalUsings.cs

Next Steps

After creating your module:

  1. Customize the module logic in YourModule.cs
  2. Configure settings in YourModuleSettings.cs
  3. Update documentation and icon in the docs/ folder
  4. Add unit tests to validate your module behavior
  5. Build and test your module locally
  6. Package and deploy to your Crosser cloud.

Requirements

  • .NET 6.0 or later
  • Crosser SDK (automatically referenced by the template)

Development Resources

Crosser SDK Documentation

For comprehensive guidance on module development with the Crosser SDK, including advanced concepts, best practices, and API references, please refer to the official SDK documentation:

πŸ“š Crosser SDK Module Development Guide

This documentation covers:

  • Module lifecycle and event handling
  • Advanced message processing patterns
  • Settings and configuration management
  • Error handling and logging best practices
  • Performance optimization techniques
  • Testing strategies for flow modules
  • Deployment and packaging guidelines

Support

For more information about developing Crosser modules, visit the Crosser documentation or contact Crosser Technologies support.

Downloads by Version

Similar & Alternative Packages

Hand-picked matching NuGet libraries based on tags & ecosystem

Depended On By

Find packages that declare this package as a dependency. NuGet does not provide a reverse-dependency endpoint, so candidates are checked on demand.

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

No SPDX license expression is published. Review the license text and your organisation's policy before redistribution.Compatibility metadata lists 1 target framework; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.