{"id":46618875,"url":"https://github.com/jupre003/mbsoftlab.templateengine.core","last_synced_at":"2026-03-07T21:02:09.636Z","repository":{"id":52268520,"uuid":"318880987","full_name":"jupre003/MbSoftLab.TemplateEngine.Core","owner":"jupre003","description":"String TemplateEngine for .netCore","archived":false,"fork":false,"pushed_at":"2025-12-06T16:11:44.000Z","size":159,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-14T07:44:03.120Z","etag":null,"topics":["csharp","netcore","string-manipulation","stringtemplate","templateengine"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jupre003.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-12-05T20:17:28.000Z","updated_at":"2025-12-07T16:30:50.000Z","dependencies_parsed_at":"2022-09-11T12:40:17.725Z","dependency_job_id":null,"html_url":"https://github.com/jupre003/MbSoftLab.TemplateEngine.Core","commit_stats":null,"previous_names":["mbsoftlab/mbsoftlab.templateengine.core"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/jupre003/MbSoftLab.TemplateEngine.Core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jupre003%2FMbSoftLab.TemplateEngine.Core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jupre003%2FMbSoftLab.TemplateEngine.Core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jupre003%2FMbSoftLab.TemplateEngine.Core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jupre003%2FMbSoftLab.TemplateEngine.Core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jupre003","download_url":"https://codeload.github.com/jupre003/MbSoftLab.TemplateEngine.Core/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jupre003%2FMbSoftLab.TemplateEngine.Core/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30231490,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T19:01:10.287Z","status":"ssl_error","status_checked_at":"2026-03-07T18:59:58.103Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["csharp","netcore","string-manipulation","stringtemplate","templateengine"],"created_at":"2026-03-07T21:02:07.919Z","updated_at":"2026-03-07T21:02:09.629Z","avatar_url":"https://github.com/jupre003.png","language":"C#","readme":"# MbSoftLab.TemplateEngine.Core\n\n[![Build (develop)](https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core/workflows/BuildFromDevelop/badge.svg?branch=develop)](https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core/actions)\n[![Build (master)](https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core/workflows/BuildFromMaster/badge.svg?branch=master)](https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core/actions)\n[![Release](https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core/workflows/Release/badge.svg)](https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core/actions)\n[![CodeFactor](https://www.codefactor.io/repository/github/mbsoftlab/mbsoftlab.templateengine.core/badge)](https://www.codefactor.io/repository/github/mbsoftlab/mbsoftlab.templateengine.core)\n[![NuGet](https://img.shields.io/nuget/v/MbSoftLab.TemplateEngine.Core.svg)](https://www.nuget.org/packages/MbSoftLab.TemplateEngine.Core/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\n\u003e Eine leistungsstarke und flexible Template-Engine für .NET 8.0 mit Unterstützung für einfache String-Templates und komplexe Razor-Templates.\n\n---\n\n## 🚀 Schnellstart\n\n### Installation\n\n```bash\ndotnet add package MbSoftLab.TemplateEngine.Core\n```\n\n### Einfaches Beispiel\n\n```csharp\nusing MbSoftLab.TemplateEngine.Core;\n\nvar person = new { FirstName = \"Max\", LastName = \"Mustermann\" };\nvar engine = new TemplateEngine(person, \"Hallo ${FirstName} ${LastName}!\");\nstring result = engine.CreateStringFromTemplate();\n// Output: \"Hallo Max Mustermann!\"\n```\n\n### Razor-Template-Beispiel (optional)\n\nInstallieren Sie zusätzlich das optionale Paket:\n\n```bash\ndotnet add package MbSoftLab.TemplateEngine.Core.Razor\n```\n\n```csharp\npublic class Person : TemplateDataModel\u003cPerson\u003e\n{\n    public string FirstName { get; set; }\n    public List\u003cstring\u003e Tags { get; set; }\n}\n\nvar person = new Person { \n    FirstName = \"Anna\", \n    Tags = new List\u003cstring\u003e { \"Developer\", \"Designer\" } \n};\n\n// Razor steht erst nach Installation von MbSoftLab.TemplateEngine.Core.Razor zur Verfügung\nvar engine = new RazorTemplateEngine\u003cPerson\u003e();\nengine.TemplateString = @\"\n\u003ch1\u003e@Model.FirstName\u003c/h1\u003e\n\u003cul\u003e\n@foreach(var tag in Model.Tags) {\n    \u003cli\u003e@tag\u003c/li\u003e\n}\n\u003c/ul\u003e\";\n\nstring html = engine.CreateStringFromTemplate(person);\n```\n\n---\n\n## ✨ Features\n\n### Zwei leistungsstarke Engines\n\n- **TemplateEngine\u003cT\u003e** - Schnell und einfach für String-basierte Templates\n  - Property-Platzhalter: `${PropertyName}`\n  - Methoden-Aufrufe: `${MethodName()}`\n  - Anpassbare Delimiters\n  - Kultur-spezifische Formatierung\n  \n- **RazorTemplateEngine\u003cT\u003e** - Flexibel für komplexe HTML-Templates\n  - Volle Razor-Syntax\n  - Listen und Collections\n  - Bedingungen und Schleifen\n  - Verschachtelte Objekte\n\n### Unterstützte Datentypen\n\n✅ String, Byte, Short, Int, Long, Decimal, Double, DateTime, Boolean  \n❌ Collections (nur mit RazorTemplateEngine)\n\n---\n\n## 📚 Dokumentation\n\n**Vollständige Dokumentation verfügbar unter [`/docs`](/docs):**\n\n| Dokument | Beschreibung |\n|----------|--------------|\n| [📖 Übersicht](/docs/README.md) | Dokumentations-Einstieg |\n| [🏗️ Architektur](/docs/architecture.md) | System-Design und Komponenten |\n| [📋 API-Referenz](/docs/api.md) | Vollständige API-Dokumentation |\n| [💡 Beispiele](/docs/examples.md) | 16+ praktische Code-Beispiele |\n| [👨‍💻 Entwickler-Leitfaden](/docs/development.md) | Contribution Guidelines |\n| [📝 CHANGELOG](/CHANGELOG.md) | Versions-Historie |\n| [🎉 Release Notes](/RELEASENOTES.md) | Aktuelle Version 1.0.8-preview2 |\n\n---\n\n## 💡 Verwendungsbeispiele\n\n### Template aus Datei laden\n\n```csharp\nvar engine = new TemplateEngine\u003cCustomer\u003e(customer);\nengine.LoadTemplateFromFile(\"email-template.txt\");\nstring email = engine.CreateStringFromTemplate();\n```\n\n### JSON-Daten verwenden\n\n```csharp\nstring jsonData = \"{\\\"Name\\\":\\\"Lisa\\\",\\\"Email\\\":\\\"lisa@example.com\\\"}\";\nvar engine = new TemplateEngine\u003cCustomer\u003e();\nengine.TemplateString = \"Kunde: ${Name}, E-Mail: ${Email}\";\nstring result = engine.CreateStringFromTemplateWithJson(jsonData);\n```\n\n### Custom Delimiters\n\n```csharp\nvar engine = new TemplateEngine\u003cPerson\u003e(person, \"[[FirstName]] [[LastName]]\");\nengine.OpeningDelimiter = \"[[\";\nengine.CloseingDelimiter = \"]]\";\n```\n\n### NULL-Werte behandeln\n\n```csharp\nvar engine = new TemplateEngine\u003cCustomer\u003e(customer, \"${Email}\");\nengine.NullStringValue = \"Keine Angabe\";\n```\n\nWeitere Beispiele und Tutorials finden Sie in der [Beispiele-Dokumentation](/docs/examples.md).\n\n---\n\n## 🔧 Hauptfunktionen\n\n### TemplateEngine\n\n| Feature | Beschreibung |\n|---------|--------------|\n| Property-Binding | `${PropertyName}` für einfache Werte |\n| Methoden-Aufrufe | `${MethodName()}` für parameterlose Methoden |\n| Custom Delimiters | Anpassbare Start-/End-Zeichen |\n| NULL-Behandlung | Konfigurierbarer NULL-String |\n| Formatierung | Kultur-spezifisch (CultureInfo) |\n| JSON-Support | Direkte Deserialisierung |\n| File-Loading | Templates aus Dateien laden |\n\n### RazorTemplateEngine\n\n| Feature | Beschreibung |\n|---------|--------------|\n| Razor-Syntax | Volle C#-Unterstützung in Templates |\n| Collections | Listen, Arrays, IEnumerable |\n| Kontrollstrukturen | `@if`, `@foreach`, `@for`, `@switch` |\n| Verschachtelung | Komplexe Objekthierarchien |\n| Type-Safety | Generische Typisierung |\n\n---\n\n## 📦 NuGet Package\n\n```bash\n# .NET CLI\ndotnet add package MbSoftLab.TemplateEngine.Core\n\n# Package Manager\nInstall-Package MbSoftLab.TemplateEngine.Core\n\n# PackageReference\n\u003cPackageReference Include=\"MbSoftLab.TemplateEngine.Core\" Version=\"1.0.8-preview2\" /\u003e\n```\n\n**NuGet Gallery:** https://www.nuget.org/packages/MbSoftLab.TemplateEngine.Core/\n\n---\n\n## 🤝 Contributing\n\nWir freuen uns über Beiträge! Bitte lesen Sie unseren [Entwickler-Leitfaden](/docs/development.md) für:\n\n- Entwicklungsumgebung einrichten\n- Code-Konventionen\n- Branch-Strategie\n- Pull Request Prozess\n\n---\n\n## 📄 Lizenz\n\nDieses Projekt ist unter der [MIT-Lizenz](LICENSE) lizenziert.\n\nCopyright © 2021 MbSoftLab\n\n---\n\n## 🔗 Links\n\n- **GitHub Repository:** https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core\n- **Issues/Feedback:** https://github.com/mbsoftlab/MbSoftLab.TemplateEngine.Core/issues\n- **NuGet Package:** https://www.nuget.org/packages/MbSoftLab.TemplateEngine.Core/\n\n---\n\n## 🆕 Version 1.0.8-preview2\n\n**Highlights:**\n- ✨ RazorTemplateEngine für komplexe HTML-Templates\n- ✨ Erweiterte Methoden-Aufrufe in Templates\n- 🔧 Verbesserter Build- und Release-Prozess\n- 📚 Umfassende deutsche Dokumentation\n\nSiehe [Release Notes](/RELEASENOTES.md) für Details.\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003csub\u003eBuilt with ❤️ by MbSoftLab\u003c/sub\u003e\n\u003c/p\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjupre003%2Fmbsoftlab.templateengine.core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjupre003%2Fmbsoftlab.templateengine.core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjupre003%2Fmbsoftlab.templateengine.core/lists"}