The Twelve-Factor App Methodology Part I: Introduction
--
In the modern era, the software is commonly delivered as a service: called web apps, or software-as-a-service. The twelve-factor app is a methodology for building software-as-a-service apps that:
- Use declarative formats for setup automation, to minimize time and cost for new developers joining the project;
- Have a clean contract with the underlying operating system, offering maximum portability between execution environments;
- Are suitable for deployment on modern cloud platforms, obviating the need for servers and systems administration;
- Minimize divergence between development and production, enabling continuous deployment for maximum agility;
- And can scale up without significant changes to tooling, architecture, or development practices
The twelve-factor methodology can be applied to apps written in any programming language and that use any combination of backing services (database, queue, memory cache, etc)
In this case, I will use python for practice, I will use Flask framework with modular pattern use MVC for project structure
Background
I just designed an application to run a service in one of my jobs, then I did an analysis of the project structure design on the application I made, after I read from various sources, I found readings about the 12 Factor App methodology, then I applied the methodology earlier. into the application that I made.
From various sources I have read, including the book Two Scoops of Django 3 by Daniel Roy Greenfeld and Audrey Roy Greenfeld, they have already implemented this methodology, so how do you apply this methodology in a different framework? flask for example?
So in the next chapter, we will explain what the 12 Factor App are and how to apply them in the flask framework 😀