Work on updated items
This commit is contained in:
40
radar/2019-11-01/flamingo.md
Normal file
40
radar/2019-11-01/flamingo.md
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
title: "Flamingo"
|
||||
ring: adopt
|
||||
quadrant: languages-and-frameworks
|
||||
|
||||
---
|
||||
Flamingo
|
||||
|
||||
Flamingo is a high productivity go based framework for rapidly building fast and pluggable web projects.
|
||||
It is used to build scalable and maintainable (web)applications.
|
||||
|
||||
Flamingo is:
|
||||
|
||||
* open source
|
||||
* written in go
|
||||
* easy to learn
|
||||
* fast and flexible
|
||||
|
||||
Go as simple, powerful and typesafe language is great to implement and scale serverside logic.
|
||||
Flamingo has a clean architecture with clear dependencies in mind and offers a typical features and support for nowadays web applications:
|
||||
|
||||
* Powerful Templating Engines. E.g. support for Pug templates with reusable mixins and lightweight scripting.
|
||||
* Configuration concepts using yml and support for multiple areas and contexts
|
||||
* Powerful Dependency Injection
|
||||
* A Module concept for building modular and pluggable applications
|
||||
* Authentication concepts and security middleware
|
||||
* Flexible routing with support for prefix routes and reverse routing
|
||||
* Web Controller Support with: Request / Response / Form Handling etc
|
||||
* Operational Readyness: Logging, (distributed) Tracing, Metrics and Healthchecks with seperate endpoint
|
||||
* Localisation
|
||||
* Commands
|
||||
* Sessionhandling and Management
|
||||
* GraphQL support and therefore support to build nice SPA and PWAs on top of it
|
||||
* Resilience and Caching for external APIs calls.
|
||||
|
||||
Flamingo itself does not contain ORM Mapper or libraries - instead it emphasizes "ports and adapters" architecture - so that you have a technology free (domain) model and any possible (and replaceable) persitence behind it.
|
||||
That makes Flamingo useful to build microservices and applications - especially to build "frontends" or portals that require interaction with other (micro) services in a distributed architecture.
|
||||
When sticking to the architectural recommendation you can build modular applications with replaceable adapters that gives you independed testability.
|
||||
|
||||
With **"Flamingo Commerce"** there is an additional active projects that offer rich and flexible features to build modern e-commerce applications.
|
||||
Reference in New Issue
Block a user