Liquid Application Framework documentation, useful links and sample project
This repository contains Liquid Application Framework full code, samples, templates and documentation.
New Major Version Warning |
---|
Liquid is a multi-cloud framework designed to accelerate the development of cloud-native microservices while avoiding coupling your code to specific cloud providers.
When writing Liquid applications, you stop worrying about the technology and focus on your business logic - Liquid abstracts most of the boilerplate and let you just write domain code that looks great and gets the job done.
To use Liquid, you create a new base ASP.Net Core application and then download and install the following nuget packages:
Liquid Application Framework Binaries | Type | Version |
---|---|---|
Liquid.Core |
mandatory | |
Liquid.Domain |
desirable | |
Liquid.Repository |
optional | |
Liquid.Cache |
optional | |
Liquid.Messaging |
optional | |
Liquid.WebApi.Http |
optional |
And then choose the implementation cartridges you need to your project, for example:
Liquid.WebApi.Http
)Liquid.Repository.MongoDB
) or to use Entity Framework (Liquid.Repository.EntityFramework
)Liquid.Messaging.Azure
) or to use AWS SQS (Liquid.Messaging.Aws
)new
Now you can use Liquid Templates to get your microservice started faster!
To use it, just install the templates by running the following dotnet CLI command at the PowerShell prompt :
dotnet new --install Liquid.Templates
and run dotnet new command with the name and parameters of the following templates:
Name | Description |
---|---|
liquidcrudsolution |
Liquid WebAPI CRUD Solution (Domain and WebAPI projects) |
liquidwebapisolution |
Liquid WebAPI solution (Domain and WebAPI projects) |
liquidcrudextsolution |
Liquid CRUD Extension solution (Domain and WebAPI projects) |
liquidworkersolution |
Liquid WorkerService solution (Domain and WorkerService projects) |
liquiddomainaddhandler |
Liquid mediator command handler |
liquidcrudaddentity |
Liquid entity class, CRUD mediator handlers and CRUD controller |
liquidcrudextaddentity |
Liquid CRUD Extension entity and controller classes |
liquidwebapiaddentity |
Liquid entity class, mediator command handler and CRUD controller |
liquidbcontextaddentity |
Liquid DbContext entity configuration class (for Entity Framework) |
liquiddbcontextproject |
Liquid Repository project (EntityFramework DbContext configurations) |
liquidwebapiproject |
Liquid WebAPI project |
liquidworkerproject |
Liquid WorkerService project |
liquiddomainproject |
Liquid Domain project (mediator command handler) |
To create an WebAPI solution with CRUD handlers, you must:
dotnet new liquidcrudsolution --projectName "some root namespace" --entityName "some entity" --entityIdType "type of your unique ID"
You can make changes in code, add more classes and project if you need, and also using others Liquid templates to do it!
Some of the best ways to contribute are to try things out, file issues, and make pull-requests.
In any case, be sure to take a look at the contributing guide before starting, and see our security disclosure policy.
Liquid Application Framework Old Repositories |
---|
Liquid.Core |
Liquid.Domain |
Liquid.Repository |
Liquid.Cache |
Liquid.Messaging |
Liquid.Services |
Liquid.WebApi |
Liquid.Serverless |
Liquid.Tests |
Avanade is the leading provider of innovative digital, cloud and advisory services, industry solutions and design-led experiences across the Microsoft ecosystem.