Shiny.Extensions.Mail.Abstractions 2.0.0-preview-0009

Prefix Reserved
This is a prerelease version of Shiny.Extensions.Mail.Abstractions.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Shiny.Extensions.Mail.Abstractions --version 2.0.0-preview-0009                
NuGet\Install-Package Shiny.Extensions.Mail.Abstractions -Version 2.0.0-preview-0009                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Shiny.Extensions.Mail.Abstractions" Version="2.0.0-preview-0009" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Shiny.Extensions.Mail.Abstractions --version 2.0.0-preview-0009                
#r "nuget: Shiny.Extensions.Mail.Abstractions, 2.0.0-preview-0009"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Shiny.Extensions.Mail.Abstractions as a Cake Addin
#addin nuget:?package=Shiny.Extensions.Mail.Abstractions&version=2.0.0-preview-0009&prerelease

// Install Shiny.Extensions.Mail.Abstractions as a Cake Tool
#tool nuget:?package=Shiny.Extensions.Mail.Abstractions&version=2.0.0-preview-0009&prerelease                

SHINY SERVICE EXTENSIONS FOR .NET

<img src="https://github.com/shinyorg/shiny/raw/master/art/logo.png" width="100" />

FEATURES

  • Push Notification Management without a 3rd Party (think Azure Notification Hubs for your on-prem servers)
  • Mail Templating On Steroids! Loaders, parsers, converters, & senders!
  • Localization done right
    • Looks like Microsoft.Extensions.Configuration
    • Loads from a database, resx files, and more out of the box
    • Allows you to serialize to JSON easily for your frontend
    • Existing strongly typed classes generated for RESX, no worries - we have solutions for that too!
    • Want to use in your XAML, yup - we got that covered properly too

SUPPORT SHINY

While Shiny is free and will continue to be so, maintenance and support takes a heavy toll on sustainability. If you or your company have the resources, please consider becoming a GitHub Sponsor. GitHub Sponsorships help to make Open Source Development more sustainable.

Depending on your Sponsorship Tier, you may also get access to some great benefits on Sponsor Connect (https://sponsorconnect.dev) including:

  • The Sponsor Only Discord server
  • Training available ONLY to sponsors on Sponsor Connect
  • Special sponsor-only packages

https://sponsor.shinylib.net

How about some Shiny Gear

NUGETS

Name Stable Preview
Shiny.Extensions.Push Nuget Nuget (Preview)
Shiny.Extensions.Push.Ef Nuget Nuget (Preview)
Shiny.Extensions.Mail Nuget Nuget (Preview)
Shiny.Extensions.Mail.DotLiquid Nuget Nuget (Preview)
Shiny.Extensions.Mail.StorageNet Nuget Nuget (Preview)
Shiny.Extensions.Localization Nuget Nuget (Preview)
Shiny.Extensions.Webhooks Nuget Nuget (Preview)

SQL Scripts

Mail

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[MailTemplates](
	[MailTemplateId] [uniqueidentifier] NOT NULL,
	[TemplateName] [nvarchar](255) NOT NULL,
	[CultureCode] [varchar](5) NULL,
	[Content] [nvarchar](max) NOT NULL,
 CONSTRAINT [PK_MailTemplates] PRIMARY KEY CLUSTERED
(
	[MailTemplateId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY],
 CONSTRAINT [UK_MailTemplates] UNIQUE NONCLUSTERED
(
	[TemplateName] ASC,
	[CultureCode] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

Localization

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Localizations](
	[LocalizationId] [uniqueidentifier] NOT NULL,
	[Section] [varchar](50) NOT NULL,
	[ResourceKey] [varchar](50) NOT NULL,
	[CultureCode] [varchar](5) NULL,
	[Value] [nvarchar](4000) NOT NULL,
 CONSTRAINT [PK_Localizations] PRIMARY KEY CLUSTERED 
(
	[LocalizationId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY],
 CONSTRAINT [UK_Localizations] UNIQUE NONCLUSTERED 
(
	[Section] ASC,
	[ResourceKey] ASC,
	[CultureCode] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO

Push

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[PushRegistrations](
	[PushRegistrationId] [uniqueidentifier] NOT NULL,
	[Platform] [int] NOT NULL,
	[DeviceToken] [varchar](512) NOT NULL,
	[UserId] [varchar](50) NULL,
	[DateUpdated] [datetimeoffset](7) NOT NULL,
	[DateCreated] [datetimeoffset](7) NOT NULL,
 CONSTRAINT [PK_PushRegistrations] PRIMARY KEY CLUSTERED
(
	[PushRegistrationId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY],
 CONSTRAINT [UK_PushRegistrations] UNIQUE NONCLUSTERED
(
	[DeviceToken] ASC,
	[Platform] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object:  Table [dbo].[PushTags]    Script Date: 12/16/2021 3:27:13 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[PushTags](
	[PushTagId] [uniqueidentifier] NOT NULL,
	[PushRegistrationId] [uniqueidentifier] NOT NULL,
	[Value] [nvarchar](50) NOT NULL,
 CONSTRAINT [PK_PushTags] PRIMARY KEY CLUSTERED
(
	[PushTagId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY],
 CONSTRAINT [UK_PushTags] UNIQUE NONCLUSTERED
(
	[PushRegistrationId] ASC,
	[Value] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[PushTags]  WITH CHECK ADD  CONSTRAINT [FK_PushTags_PushRegistrations] FOREIGN KEY([PushRegistrationId])
REFERENCES [dbo].[PushRegistrations] ([PushRegistrationId])
GO
ALTER TABLE [dbo].[PushTags] CHECK CONSTRAINT [FK_PushTags_PushRegistrations]
GO
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Shiny.Extensions.Mail.Abstractions:

Package Downloads
Shiny.Extensions.Mail.StorageNet

A Mail template loader for use by Shiny.Extensions.Mail. By using Storage.NET, you can load templates up from nearly any blob provider you can think of

Shiny.Extensions.Mail

The ultimate email template engine with template parsing, loading, and sending all in one beautiful abstraction - provides razor templates, file system loading, smtp sending, and sendgrid providers out of the box

Shiny.Extensions.Mail.DotLiquid

Shiny.Extensions.Mail dotliquid template parser

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.0-preview-0036 111 10/19/2024
2.0.0-preview-0034 145 8/7/2024
2.0.0-preview-0029 125 5/19/2024
2.0.0-preview-0027 113 5/16/2024
2.0.0-preview-0025 108 5/16/2024
2.0.0-preview-0024 114 5/15/2024
2.0.0-preview-0021 90 5/14/2024
2.0.0-preview-0019 84 5/10/2024
2.0.0-preview-0018 95 5/10/2024
2.0.0-preview-0014 215 1/9/2024
2.0.0-preview-0013 240 11/27/2023
2.0.0-preview-0009 383 8/5/2023
2.0.0-preview-0005 406 3/23/2023
2.0.0-preview-0001 361 3/22/2023
1.3.0-preview-0027 761 4/25/2022
1.3.0-preview-0002 620 4/4/2022
1.3.0-preview-0001 629 4/5/2022
1.3.0-g2ba43447db 611 4/25/2022
1.3.0-alpha.2 115 4/4/2022
1.2.1-g5e4fb68cb5 645 4/5/2022
1.2.0-preview.58 125 4/3/2022
1.2.0-preview.54 128 3/15/2022
1.2.0-preview.53 115 3/15/2022
1.2.0-preview.51 129 3/14/2022
1.2.0-gfedfcb591b 662 4/4/2022
1.2.0-gc3d6596f9b 631 4/4/2022
1.1.0.60 1,493 3/2/2022
1.1.0.59-preview 665 2/3/2022
1.1.0.55-preview 653 1/23/2022
1.1.0.52-preview 673 1/22/2022
1.1.0.49-preview 684 1/19/2022
1.1.0.48-preview 601 1/18/2022
1.1.0.46-preview 667 1/18/2022
1.0.0.43-preview 652 1/16/2022
1.0.0.38 892 1/4/2022
1.0.0.37 351 1/4/2022
1.0.0.30-preview 209 12/30/2021
1.0.0.28-preview 221 12/22/2021
1.0.0.12-preview 212 12/20/2021
1.0.0.8-preview 198 12/18/2021
1.0.0.4-preview 252 12/18/2021