Giter Site home page Giter Site logo

forevolve / forevolve-framework Goto Github PK

View Code? Open in Web Editor NEW
9.0 2.0 3.0 490 KB

A .NET Standard 2.1 Toolbox (a.k.a. .NET Core 3+, .NET 5)

License: MIT License

C# 99.31% JavaScript 0.65% CSS 0.05%
netcore csharp framework aspnet-core net5 azure forevolve aspnetcore toolbox pdf-generation markdown-converter azure-storage

forevolve-framework's Introduction

ForEvolve Framework (or toolbox)

VSTS master build

This 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.

Examples 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<string, object> to JSON), markdown to HTML, HTML to pdf, Razor View to HTML string service, and more.

Versioning

The packages follows semantic versioning and uses Nerdbank.GitVersioning under the hood to automate versioning based on Git commits.

Packages

Packages are available on NuGet https://www.nuget.org/profiles/ForEvolve.

For the pre-release packages, use the ForEvolve/Toolbox feedz.io packages source.

List of packages

Name NuGet.org feedz.io
dotnet add package ForEvolve.AspNetCore NuGet.org feedz.io
dotnet add package ForEvolve.Azure NuGet.org feedz.io
dotnet add package ForEvolve.Contracts NuGet.org feedz.io
dotnet add package ForEvolve.Core NuGet.org feedz.io
dotnet add package ForEvolve.EntityFrameworkCore NuGet.org feedz.io
dotnet add package ForEvolve.Markdown NuGet.org feedz.io
dotnet add package ForEvolve.Markdown.Abstractions NuGet.org feedz.io
dotnet add package ForEvolve.Pdf NuGet.org feedz.io
dotnet add package ForEvolve.Pdf.Abstractions NuGet.org feedz.io

The projects

In 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.

ForEvolve

You can find the meta-package that references all ForEvolve.* projects at the following repo: ForEvolve/MetaPackages.

ForEvolve.AspNetCore

This project aims at adding features over Asp.Net Core. Example: myObject.ToJsonHttpContent(), myObject.ToJson(), myHttpContent.ReadAsJsonObjectAsync<MyObjectType>(), anyString.ToObject<MyObjectType>(), IViewRendererService, IEmailSenderService, IHttpHeaderValueAccessor, IUserIdAccessor, some base middlewares and more.

See ForEvolve.AspNetCore for more information.

ForEvolve.Azure

This project aims at adding features over the Azure SDK like Object (Blob), Queue, Table and KeyVault repositories.

See ForEvolve.Azure for more information.

ForEvolve.Contracts

This project contains shared models.

See ForEvolve.Contracts for more information.

ForEvolve.Core

This project stand as the root of all projects. For now, it only contains the ForEvolveException class.

See ForEvolve.Core for more information.

ForEvolve.EntityFrameworkCore

This project adds EF Core utilities, like easy data seeding, and value conversion.

See ForEvolve.EntityFrameworkCore for more information.

ForEvolve.Markdown

Allows consumers to easily convert strings to Markdown using the IMarkdownConverter interface.

See ForEvolve.Markdown for more information.

ForEvolve.Markdown.Abstractions

This is the abstractions library. Only use this if you want to create your own custom implementation of the IMarkdownConverter.

See the ForEvolve.Markdown project for more info.

ForEvolve.Pdf

This library contains implementations of the ForEvolve.Pdf.Abstractions.IHtmlToPdfConverter interface, allowing convertion of HTML to a PDF.

See the ForEvolve.Pdf project for more info.

ForEvolve.Pdf.Abstractions

This is the abstractions library. Only use this if you want to create your own custom implementation of the IHtmlToPdfConverter.

See the ForEvolve.Pdf.Abstractions project for more info.

How to contribute?

If you would like to contribute to the Framework, first, thank you for your interest and please read Contributing to ForEvolve open source projects for more information.

Contributor Covenant Code of Conduct

Also, please read the Contributor Covenant Code of Conduct that applies to all ForEvolve repositories.

Release notes

Version 2.1

  • Add the app.Seed<MyDbContext>(); extension method to help seed the database without writing boilerplate code.

Version 2.0

  • Original version after the switch to GitVersioning

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.