{"id":28625345,"url":"https://github.com/forevolve/forevolve-framework","last_synced_at":"2025-06-12T08:10:30.526Z","repository":{"id":45552900,"uuid":"95982376","full_name":"ForEvolve/ForEvolve-Framework","owner":"ForEvolve","description":"A .NET Standard 2.1 Toolbox (a.k.a. .NET Core 3+, .NET 5)","archived":false,"fork":false,"pushed_at":"2025-01-05T20:15:22.000Z","size":492,"stargazers_count":10,"open_issues_count":5,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-11T14:47:59.268Z","etag":null,"topics":["aspnet-core","aspnetcore","azure","azure-storage","csharp","forevolve","framework","markdown-converter","net5","netcore","pdf-generation","toolbox"],"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/ForEvolve.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-07-01T18:56:56.000Z","updated_at":"2025-02-06T04:50:57.000Z","dependencies_parsed_at":"2023-02-03T03:15:36.072Z","dependency_job_id":null,"html_url":"https://github.com/ForEvolve/ForEvolve-Framework","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ForEvolve/ForEvolve-Framework","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ForEvolve%2FForEvolve-Framework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ForEvolve%2FForEvolve-Framework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ForEvolve%2FForEvolve-Framework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ForEvolve%2FForEvolve-Framework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ForEvolve","download_url":"https://codeload.github.com/ForEvolve/ForEvolve-Framework/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ForEvolve%2FForEvolve-Framework/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259427060,"owners_count":22855564,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["aspnet-core","aspnetcore","azure","azure-storage","csharp","forevolve","framework","markdown-converter","net5","netcore","pdf-generation","toolbox"],"created_at":"2025-06-12T08:10:22.480Z","updated_at":"2025-06-12T08:10:30.505Z","avatar_url":"https://github.com/ForEvolve.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ForEvolve Framework (or toolbox)\n\n\u003c!-- ![Build, Test, and Deploy master](https://github.com/ForEvolve/ForEvolve.Testing/workflows/Build,%20Test,%20and%20Deploy%20master/badge.svg) --\u003e\n\n[![VSTS master build](https://forevolve.visualstudio.com/ForEvolve-Framework/_apis/build/status/ForEvolve.ForEvolve-Framework?branchName=master)](https://forevolve.visualstudio.com/ForEvolve-Framework/_build/latest?definitionId=50\u0026branchName=master)\n\nThis project is my personal toolbox, where I add utility classes that I was tired of copying from project to project, that I needed to facilitate my life or for any other reason toward reusability.\n\nExamples of features are Azure table repository, Azure blob repositories (JSON object and files), email services, EF Core data Seeders, EF Core value converters (`object` to JSON, `Dictionary\u003cstring, object\u003e` to JSON), markdown to HTML, HTML to pdf, Razor View to HTML string service, and more.\n\n## Versioning\n\nThe packages follows _semantic versioning_ and uses [Nerdbank.GitVersioning](https://github.com/dotnet/Nerdbank.GitVersioning) under the hood to automate versioning based on Git commits.\n\n## Packages\n\nPackages are available on NuGet [https://www.nuget.org/profiles/ForEvolve](https://www.nuget.org/profiles/ForEvolve).\n\nFor the pre-release packages, use the ForEvolve/Toolbox [feedz.io](https://f.feedz.io/forevolve/toolbox/nuget/index.json) packages source.\n\n**List of packages**\n\n| Name                                                 | NuGet.org                                                                                                                                          | feedz.io                                                                                                                                                                                                                                                                                             |\n| ---------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `dotnet add package ForEvolve.AspNetCore`            | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.AspNetCore)](https://www.nuget.org/packages/ForEvolve.AspNetCore/)                       | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.AspNetCore%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.AspNetCore/latest/download)                                  |\n| `dotnet add package ForEvolve.Azure`                 | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.Azure)](https://www.nuget.org/packages/ForEvolve.Azure/)                                 | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.Azure%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.Azure/latest/download)                                                 |\n| `dotnet add package ForEvolve.Contracts`             | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.Contracts)](https://www.nuget.org/packages/ForEvolve.Contracts/)                         | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.Contracts%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.Contracts/latest/download)                                     |\n| `dotnet add package ForEvolve.Core`                  | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.Core)](https://www.nuget.org/packages/ForEvolve.Core/)                                   | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.Core%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.Core/latest/download)                                                    |\n| `dotnet add package ForEvolve.EntityFrameworkCore`   | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.EntityFrameworkCore)](https://www.nuget.org/packages/ForEvolve.EntityFrameworkCore/)     | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.EntityFrameworkCore%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.EntityFrameworkCore/latest/download)       |\n| `dotnet add package ForEvolve.Markdown`              | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.Markdown)](https://www.nuget.org/packages/ForEvolve.Markdown/)                           | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.Markdown%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.Markdown/latest/download)                                        |\n| `dotnet add package ForEvolve.Markdown.Abstractions` | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.Markdown.Abstractions)](https://www.nuget.org/packages/ForEvolve.Markdown.Abstractions/) | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.Markdown.Abstractions%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.Markdown.Abstractions/latest/download) |\n| `dotnet add package ForEvolve.Pdf`                   | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.Pdf)](https://www.nuget.org/packages/ForEvolve.Pdf/)                                     | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.Pdf%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.Pdf/latest/download)                                                       |\n| `dotnet add package ForEvolve.Pdf.Abstractions`      | [![NuGet.org](https://img.shields.io/nuget/vpre/ForEvolve.Pdf.Abstractions)](https://www.nuget.org/packages/ForEvolve.Pdf.Abstractions/)           | [![feedz.io](https://img.shields.io/badge/endpoint.svg?url=https%3A%2F%2Ff.feedz.io%2Fforevolve%2Ftoolbox%2Fshield%2FForEvolve.Pdf.Abstractions%2Flatest)](https://f.feedz.io/forevolve/toolbox/packages/ForEvolve.Pdf.Abstractions/latest/download)                |\n\n## The projects\n\nIn this section are quick descriptions of assemblies and links to their README file. _This is until I find the time to build a documentation website._\n\n### ForEvolve\n\nYou can find the meta-package that references all `ForEvolve.*` projects at the following repo: [ForEvolve/MetaPackages](https://github.com/ForEvolve/MetaPackages).\n\n### ForEvolve.AspNetCore\n\nThis project aims at adding features over Asp.Net Core.\nExample: `myObject.ToJsonHttpContent()`, `myObject.ToJson()`, `myHttpContent.ReadAsJsonObjectAsync\u003cMyObjectType\u003e()`, `anyString.ToObject\u003cMyObjectType\u003e()`, `IViewRendererService`, `IEmailSenderService`, `IHttpHeaderValueAccessor`, `IUserIdAccessor`, some base middlewares and more.\n\nSee [ForEvolve.AspNetCore](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.AspNetCore) for more information.\n\n### ForEvolve.Azure\n\nThis project aims at adding features over the Azure SDK like Object (Blob), Queue, Table and KeyVault repositories.\n\nSee [ForEvolve.Azure](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.Azure) for more information.\n\n### ForEvolve.Contracts\n\nThis project contains shared models.\n\nSee [ForEvolve.Contracts](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.Contracts) for more information.\n\n### ForEvolve.Core\n\nThis project stand as the root of all projects. For now, it only contains the `ForEvolveException` class.\n\nSee [ForEvolve.Core](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.Core) for more information.\n\n### ForEvolve.EntityFrameworkCore\n\nThis project adds EF Core utilities, like easy data seeding, and value conversion.\n\nSee [ForEvolve.EntityFrameworkCore](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.EntityFrameworkCore) for more information.\n\n### ForEvolve.Markdown\n\nAllows consumers to easily convert strings to Markdown using the `IMarkdownConverter` interface.\n\nSee [ForEvolve.Markdown](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.Markdown) for more information.\n\n### ForEvolve.Markdown.Abstractions\n\nThis is the abstractions library. Only use this if you want to create your own custom implementation of the `IMarkdownConverter`.\n\nSee the [`ForEvolve.Markdown`](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.Markdown) project for more info.\n\n### ForEvolve.Pdf\n\nThis library contains implementations of the `ForEvolve.Pdf.Abstractions.IHtmlToPdfConverter` interface, allowing convertion of HTML to a PDF.\n\nSee the [`ForEvolve.Pdf`](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.Pdf) project for more info.\n\n### ForEvolve.Pdf.Abstractions\n\nThis is the abstractions library. Only use this if you want to create your own custom implementation of the `IHtmlToPdfConverter`.\n\nSee the [`ForEvolve.Pdf.Abstractions`](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/src/ForEvolve.Pdf.Abstractions) project for more info.\n\n## How to contribute?\n\nIf you would like to contribute to the Framework, first, thank you for your interest and please read [Contributing to ForEvolve open source projects](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/CONTRIBUTING.md) for more information.\n\n### Contributor Covenant Code of Conduct\n\nAlso, please read the [Contributor Covenant Code of Conduct](https://github.com/ForEvolve/ForEvolve-Framework/tree/master/CODE_OF_CONDUCT.md) that applies to all ForEvolve repositories.\n\n# Release notes\n\n## Version 2.1\n\n-   Add the `app.Seed\u003cMyDbContext\u003e();` extension method to help seed the database without writing boilerplate code.\n\n## Version 2.0\n\n-   Original version after the switch to GitVersioning\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fforevolve%2Fforevolve-framework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fforevolve%2Fforevolve-framework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fforevolve%2Fforevolve-framework/lists"}