Git Product home page Git Product logo

liquid-application-framework's Introduction

Liquid Application Framework

This repository contains Liquid Application Framework full code, samples, templates and documentation.

New Major Version Warning
  • This is the new major version of Liquid Application Framework, launched on April/2021.
  • We've made significant breaking changes and a complete rearchitecture of our framework. So, this version isn't compatible and there is no easy conversion from the old one.
  • We decided to deprecate the old version and it will not receive any kind of updates, not even bug fixes. But, for historical purposes and to allow anyone relying on it to fork the code and maintain its own version of it, we'll keep the old repository public.

What is Liquid?

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.

Feature

  • Abstracts a number of services from cloud providers such as Azure, AWS and Google Cloud to enable you to write code that could run anywhere.
  • Brings a directed programming model that will save you time on thinking how to structure your application, allowing you to focus on writing business code.

Getting Started

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 Nuget (with prereleases)
Liquid.Domain desirable Nuget (with prereleases)
Liquid.Repository optional Nuget (with prereleases)
Liquid.Cache optional Nuget (with prereleases)
Liquid.Messaging optional Nuget (with prereleases)
Liquid.Services optional Nuget (with prereleases)
Liquid.WebApi.Http optional Nuget (with prereleases)
Liquid.WebApi.Grpc optional Nuget (with prereleases)
Liquid.Serverless optional Nuget (with prereleases)
Liquid.Tests desirable Nuget (with prereleases)

And then choose the implementation cartridges you need to your project, for example:

Liquid Templates 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)

Sample:

To create an WebAPI solution with CRUD handlers, you must:

  • execute command :
dotnet new liquidcrudsolution --projectName "some root namespace" --entityName "some entity" --entityIdType "type of your unique ID"
  • open the folder where the command was executed, and open the project created in the IDE of your choice:

template_sample

  • follow the instructions found in the generated code TODOs, and run!

You can make changes in code, add more classes and project if you need, and also using others Liquid templates to do it!

Contribute

Some of the best ways to contribute are to try things out, file issues, and make pull-requests.

  • You can provide feedback by filing issues on GitHub or open a discussion in Discussions tab. We accept issues, ideas and questions.
  • You can contribute by creating pull requests for the issues that are listed. Look for issues marked as ready if you are new to the project.

In any case, be sure to take a look at the contributing guide before starting.

Useful Links

Liquid Application Framework Old Repositories
Liquid.Core
Liquid.Domain
Liquid.Repository
Liquid.Cache
Liquid.Messaging
Liquid.Services
Liquid.WebApi
Liquid.Serverless
Liquid.Tests

liquid-application-framework's People

Contributors

aledaccas avatar andreracz avatar felipementel avatar fructuoso avatar lucianareginalino avatar marcoshidalgonunes-avanade avatar rodrigogfreire avatar ycamargo avatar

Stargazers

 avatar  avatar

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.