NP.Lti13Platform
1.0.0-preview003
dotnet add package NP.Lti13Platform --version 1.0.0-preview003
NuGet\Install-Package NP.Lti13Platform -Version 1.0.0-preview003
<PackageReference Include="NP.Lti13Platform" Version="1.0.0-preview003" />
paket add NP.Lti13Platform --version 1.0.0-preview003
#r "nuget: NP.Lti13Platform, 1.0.0-preview003"
// Install NP.Lti13Platform as a Cake Addin #addin nuget:?package=NP.Lti13Platform&version=1.0.0-preview003&prerelease // Install NP.Lti13Platform as a Cake Tool #tool nuget:?package=NP.Lti13Platform&version=1.0.0-preview003&prerelease
NP.Lti13Platform
NP.Lti13Platform is a .NET 8 project that provides an implementation of an LTI 1.3 platform. This project is a wrapper for the other LTI 1.3 projects. For specific information regarding any of the specific specs, please see their respective projects.
Features
- LTI 1.3 Core (Launch)
- Deep Linking
- Assignment and Grade Services
- Name and Role Provisioning Services
Getting Started
Add the nuget package to your project:
Add an implementation of the
IDataService
interface:
public class DataService: IDataService
{
...
}
- Add the required services (most configurations are optional, the required configurations are shown):
*For information regarding configurations, please see the individual projects.
builder.Services
.AddLti13Platform()
.WithLti13DataService<DataService>();
- Setup the routing for the LTI 1.3 platform endpoints:
app.UseLti13Platform();
IDataService
There is no default IDataService
implementation to allow each project to store the data how they see fit.
The IDataService
interface is a combination of all data services required for all the specs of the LTI 1.3 platform. Each service can be individually overridden instead of implementing the entire data service in a single service.
builder.Services
.AddLti13Platform()
- .WithLti13DataService<DataService>();
+ .WithLti13CoreDataService<CoreDataService>()
+ .WithLti13DeepLinkingDataService<DeepLinkingDataService>()
+ .WithLti13AssignmentGradeDataService<AssignmentGradeDataService>()
+ .WithLti13NameRoleProvisioningDataService<NameRoleProvisioningDataService>();
All of the internal services are transient and therefore the data services may be added at any scope (Transient, Scoped, Singleton).
Defaults
Many of the specs have default implementations that use a static configuration on startup. If you can't configure the services at startup you can add your own implementation of the services.
builder.Services
.AddLti13Platform()
.WithLti13DataService<DataService>()
+ .WithLti13TokenConfigService<TokenService>()
+ .WithLti13PlatformService<PlatformService>()
+ .WithLti13DeepLinkingConfigService<DeepLinkingConfigService>()
+ .WithLti13DeepLinkingHandler<DeepLinkingHandler>()
+ .WithLti13AssignmentGradeConfigService<AssignmentGradeConfigService>()
+ .WithLti13NameRoleProvisioningConfigService<NameRoleProvisioningConfigService>();
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. |
-
net8.0
- NP.Lti13Platform.AssignmentGradeServices (>= 1.0.0-preview003)
- NP.Lti13Platform.Core (>= 1.0.0-preview003)
- NP.Lti13Platform.DeepLinking (>= 1.0.0-preview003)
- NP.Lti13Platform.NameRoleProvisioningServices (>= 1.0.0-preview003)
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-preview003 | 39 | 11/2/2024 |
1.0.0-preview002 | 45 | 10/26/2024 |
1.0.0-preview001 | 38 | 10/26/2024 |
0.1.0-preview002 | 43 | 10/23/2024 |
0.1.0-beta | 38 | 10/23/2024 |