My Top 10 Favorite NuGet Packages

There are some NuGet packages I use very often into my development and actually, they are favorite to me in terms of usability and necessity. NuGet packages are very handy for development. They solve specific development problems. Various kinds of libraries are available to download.  This could save quite a lot of time for development and also makes life easier. We can find almost everything we need to develop .Net application into NuGet. So I thought I put a list of my favorite packages together and share with others so that they can also get help from it. Those are third party libraries besides official .Net libraries which are also very popular and some situation must use.

Json.NET

Json.NET is a popular high-performance JSON framework for .NET. This is the number one downloaded package in nuget, there will be hardly anyone who worked with Json but didn’t used it. This library can serialize any .Net object to json string and also deserialize any json string to .Net object. There are other useful and powerful features of it.  https://www.nuget.org/packages/Newtonsoft.Json

Serilog

When anything unwanted happens in production first things everyone search for is the log. Logging library comes to handy here. Among all of the logging library, Serilog seems most useful to me. It has rich sets of sinks to extends its functionality like json logging, Mssql logging, CosmosDB logging, MongoDB logging and many more. Whenever I create a new project first thing I do is add logging. I recommend Serilog for production logging. https://www.nuget.org/packages/serilog

AutoMapper

Converting an object to another object is boring to write. But unfortunately developer need to do it very frequent, like creating Dto object from db entity, view model from db entity and other .Net objects. It kills valuable development time and effort. AutoMapper is to solve this problem. It can map any object to another object easily and hassle free way. I use this library very often in my Asp.Net application for REST api development.

Autofac

Autofac is an IoC container. It manages the dependencies between classes. There are some other IoC container and dependency injection library, like Unity, Spring.Net etc. But among them I like Autofac. The reason is its performance. Performance of Autofac is very fast and its very easy to use. https://www.nuget.org/packages/autofac

Dapper

We the developer who worked with database we know that Entity Framework performance is not so good in terms of large set of data query from database. Entity Framework core improve a lot from its previous version but still not up to the mark. Raw SQL perform the best but its also harder to write and main raw SQL code. Dapper solves this problem. It is a high performance Micro-ORM framework developed by Stack Exchange and actively using in Stack Overflow. https://www.nuget.org/packages/dapper

RestSharp

A REST API client library. Sometimes we need to get data from api. This library make this process easy by providing rich set of functionality to perform operation over the rest api. I like this library most beacause of its built in functions for api management. https://www.nuget.org/packages/restsharp

NodaTime

Working with date time and timezone in .Net is very painful. NodaTime is an alternative date and time API for .Net. It fills the gape of .Net date time operation and makes life easier. https://www.nuget.org/packages/nodatime

iTextSharp

I have worked on copule of projects which have PDF manipulation. During the development the library bring me the light is iTextSharp. This is a very powerful PDF manipulation library for .Net.  It allows you to CREATE, ADAPT, INSPECT and MAINTAIN documents in the Portable Document Format (PDF). If I give an honest review then really its a great library for PDF related work. https://www.nuget.org/packages/iTextSharp

Refit

Refit is automatic type-safe REST library used to turn your REST API into a live interface. Refit is useful because the API definition is defined as a C# interface it is super easy to always use it with dependency injection and also to mock the API for unit tests. https://www.nuget.org/packages/Refit

NBuilder

This library is for generating sample set for unit testing or other testing and mock purposes. It’s so easy to generate sample data using NBuilder. It can automatically assigning values to properties and public fields that are one of the built in .NET data types. https://www.nuget.org/packages/NBuilder

Conclusion

Those actually not the all best packages which developers use. Those are favorite to me and I found very useful. Choice and preference vary based on developer and use cases. Also, there are some other packages which are very popular and useful. Hats of their authors and developers who built them and make our life livable.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *