GosharpTemplate 0.1.10
dotnet add package GosharpTemplate --version 0.1.10
NuGet\Install-Package GosharpTemplate -Version 0.1.10
<PackageReference Include="GosharpTemplate" Version="0.1.10" />
paket add GosharpTemplate --version 0.1.10
#r "nuget: GosharpTemplate, 0.1.10"
// Install GosharpTemplate as a Cake Addin #addin nuget:?package=GosharpTemplate&version=0.1.10 // Install GosharpTemplate as a Cake Tool #tool nuget:?package=GosharpTemplate&version=0.1.10
GosharpTemplate
This is a lightweight, fast, easy to use, dependency free, Go-style templating library. It is NOT a goal to implement all the features in available in Go Templates. I do NOT think views/templates should be full of logic. Keep It Simple.
Supported features so far:
- '-' to trim whitespace
- define
- block
- template
- pipelines
- Only data member access ex:
.Title
. or.Address.Street
- No function or method calls
- Only data member access ex:
- with
- range
- continue and break is NOT implemented yet
- Simple if statements
- Only supports a boolean variable as condition so far
- {{else if}} is currently not supported, use nested ifs if needed
Injection
Templates are not html injection safe. It is assumed that the template author and the data is trusted. If you are using this for where users can input data, you can sanitize the data using something like: System.Web.HttpUtility.HtmlEncode / .HtmlAttributeEncode / .UrlEncode.
Contribute
This is a hobby/learning project, and i have limited time to work on this. If you are missing any features, or want to contribute please let me know by making a PR or an issue.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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 was computed. 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. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
With no longer crash on data members that does not exists