SoundInTheory.Piranha.Identity.Extensions
1.0.0
dotnet add package SoundInTheory.Piranha.Identity.Extensions --version 1.0.0
NuGet\Install-Package SoundInTheory.Piranha.Identity.Extensions -Version 1.0.0
<PackageReference Include="SoundInTheory.Piranha.Identity.Extensions" Version="1.0.0" />
<PackageVersion Include="SoundInTheory.Piranha.Identity.Extensions" Version="1.0.0" />
<PackageReference Include="SoundInTheory.Piranha.Identity.Extensions" />
paket add SoundInTheory.Piranha.Identity.Extensions --version 1.0.0
#r "nuget: SoundInTheory.Piranha.Identity.Extensions, 1.0.0"
#:package SoundInTheory.Piranha.Identity.Extensions@1.0.0
#addin nuget:?package=SoundInTheory.Piranha.Identity.Extensions&version=1.0.0
#tool nuget:?package=SoundInTheory.Piranha.Identity.Extensions&version=1.0.0
Piranha Identity Extensions
Module that extends some of the identity features of Piranha.
This module is still in development and not recommended for public use.
Key Features
- Login Page themes designed to suit any brand.
- Reset password functionality for manager admins.
Usage - Reset Password
The reset password functionality uses the Piranha Emails module to send reset password emails.
Set up Email Sender in appsettings.json. SMTP or Mailgun is currently supported.
{
"PiranhaEmails": {
"Senders": {
"TestSender": {
"FromEmail": "example@example.com",
"FromName": "Mr Example",
"SendToWhiteList": [],
"SmtpSettings": {
"SmtpUser": "example@example.com",
"SmtpPassword": "password",
"SmtpServer": "smtp.gmail.com",
"SmtpPort": 465,
"UseSsl": true,
"RequiresAuthentication": true
},
//or
"MailgunSettings": {
"MailgunSendingKey": "sendingkeyhere",
"MailgunDomain": "domain.example",
"MailgunRegion": "USAorEU"
}
}
}
}
}
Add emails and identity extensions on startup
builder.AddPiranha(options =>
{
//other services here
options.UseIdentityExtensions();
options.Services.AddPiranhaEmails(builder)
.AddEmailTemplates(typeof(IdentityExtensionsModule).Assembly);
})
app.UsePiranha(options => {
//other services here
options.UsePiranhaEmails();
options.UseIdentityExtensions();
})
The contact us template should be visible in the manager. Edit as required. Uses MJML and Handlebars
Usage - Theming
Themes are a straightforward way of changing Piranha's login page. Create a theme that implements ILoginTheme
public class SoundInTheoryLoginTheme : ILoginTheme
{
public string Title { get; set; } = "Sound in Theory Admin";
public string BackgroundColor { get; set; } = "#150536";
public string ButtonColor { get; set; } = "#ea6e2a";
public string LogoPath { get; set; } = "/assets/img/piranha-login-logo.png";
public string BgPath { get; set; } = "/assets/img/piranha-login-bg.png";
public bool IncludeVersionNumber { get; set; } = false;
}
Then add to DI
options.UseIdentityExtensions();
options.Services.AddScoped<ILoginTheme, SoundInTheoryLoginTheme>();
Your theme should appear on the login page. The latest theme that is added to the service provider will be the one that is used.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- Piranha (>= 12.0.0)
- Piranha.AspNetCore.Hosting (>= 12.0.0)
- Piranha.AspNetCore.Identity (>= 12.0.0)
- Piranha.Manager (>= 12.0.0)
- Piranha.Manager.LocalAuth (>= 12.0.0)
- SoundInTheory.Piranha.Emails (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 87 | 3/19/2026 |