OpenMVPBox V1 : la boite de stack no/low-code pour ton MVP ( Partie 1 -  Le concept)

no-code low-code django Vuejs python less-code template docker

Pour concrétiser ses idées et construire un MVP simplement, OpenMVPBox offre une suite d'outils no/low-code opensource.

Pour ceux qui ne savent pas c'est qu'est un MVP (Minimal Viable Product), c'est le moment où ce que tu construis te semble assez évolué pour qu'il est puisse être présenté et utilisé par des béta testeurs. Cela permet aussi de voir si le produit peut s'insérer dans un marché et si cela fait sens.

Dans cet article tu apprendras :

  • Ce qu'est l'OpenMVPBox et son écosystème
  • Comment Installer L'OpenMVPBox (requiert un minimum de technicité) avec un exemple de Stack

Cet article est le début d'une longue série, il reste un peu moins concret et très théorique .
Les prochains articles concerneront l'utilisation de l'OpenMVPBox et de l'installation d'une stack ainsi que des études de cas sur les différentes stacks disponibles.

Fais moi moi un retour via le formulaire suivant : https://cloud.batisseurdunumerique.fr/apps/forms/xQLZQXCJwkF7pFXg afin de m'aider à améliorer OpenMVPBox ou me dire ce qui ne va pas :)
Tu peux aussi me soutenir en partageant cet article sur les réseaux sociaux.

Qu'est-ce qu'est OpenMVPBox

OpenMVPBox est un outil comprenant une suite de logiciels opensource au format no/low-code.
OpenMVPBox peut-être hébergé en local ou directement sur un serveur privé sur le cloud (VPS). Elle peut être utilisé en Offline ou Online en fonction du besoin.
OpenMVPBox propose l'installation de stack prête à l'emploi pour débuter son MVP. Chaque stack logiciel correspond à une catégorie, par exemple la stack NAN pour n8n, Appsmith et NocoDB, permet de construire un tableau de bord personnalisé avec Appsmith dont les données sont issues de NocoDB, et où certains traitements ou recherches d'informations sont réalisés par N8n.
Tu peux composer ta stack comme bon te semble. A ce jour, OpenMVPBox contient environ une quizaine de logiciels opensource.
Au fur et à mesure des besoins, cet outil évoluera bien évidement.

OpenMVPBox est hébergée sur le github suivant : https://github.com/Jazys/OpenMVPBox , elle est donc aussi opensource.

Pourquoi OpenMVPBox

Aujourd'hui nos parlons souvent des outils no-code comme Airtable, Bubble, etc. Ce sont effectivement de supers outils pour les gens non techniques comme techniques afin de mettre en forme les idées et de constituer son premier MVP.
Ces outils sont propriétaires, tu dépends donc d'eux. Tu dépends également de leur plateforme et d'un certain coût financier .
Demain ,ce qui sera quand même très rare car il y a des équipes et des financements , tu pourrais être contraint à la fermeture de l'outil, et à ce moment là, tous les MVP produits ou autres que tu as réalisés seront perdus.

Les données dans un projet sont aussi primordiales. Avec les outils grand public, les données sont hébergées sur des serveurs sue lesquels tu n'as pas la main. Cela peut-être gênant pour certains projets car les données peuvent être confidentielles ou tout simplement parce que le client final souhaite pouvoir récupérer ces informations/les héberger.

La gouvernance des données, c'est pour moi la clé de demain, être maître de ses données va devenir incontournable. Et malheureusement peu d'outils proposent un stockage sur le serveur de notre choix.

Il faut constater aussi que si ton projet nécessite d'être utilisé en interne de façon offline (sans connexion internet), peu d'outils vont aujourd'hui te permettre de répondre à ce critère... OpenMVPBox te permet d'héberger tes applications et données sur tes propres serveurs sans dépendance internet (A noter que l'installation requiert une connexion).

_OpenMVPBox répond donc aux contraintes :

  • Hébergement de tes logiciels en ayant un contrôle total
  • Hébergement de tes données en ayant un contrôle total
  • Possibilité d'une utilisation en Offline de tous les outils
  • Un coût de 0 euros en local et de quelques euros pour la création de ton serveur
  • Evolutivité du système: tu peux corriger les bugs ou coder/faire coder tes nouvelles fonctionnalités sur le logiciel que tu utilises

Mais voilà, l'OpenMVPBox a aussi des inconvénients :

  • Elle est basée sur des outils opensource, ce sont donc généralement de petites équipes qui vont créer gratuitement un logiciel. Les fonctionnalités par rapport à un produit grand public seront moindres. Du jour au lendemain, le projet peut s'arrêter par manque de temps. C'est pour cela que je t'invite à participer à un projet Opensource, que ce soit en diffusant des informations, faisant des dons, des tests aux autres pour soutenir les développeurs.
  • La gestion du serveur se fait par tes petites mains, quelques connaissances peuvent donc s'imposer. De mon côté, je vais faire en sorte de fournir une solution la plus simple possible, mais tu auras tout de même des interventions à faire en cas de problèmes.
  • Les mises à jour ne sont pas automatiques (il y a du bon des fois :))
  • l'aspect sécurité reste encore à développer

Choisi ton camp, pour moi c'est déjà fait.

A qui est destinée OpenMVPBox

L'OpenMVPBox est destinée à toutes les personnes qui souhaitent concrétiser leurs idées en MVP.
Comme tu l'auras compris, quelques manipulations sont à prévoir pour l'installation, comme le choix du serveur. Ne t'inquiète pas je vais te proposer un moyen pour la déployer assez facilement.

Les outils de l'OpenMVPBox nécessitent pour la plupart un peu de technicité. Oui, il s'agit plutôt d'outils Low-code. Au fur et à mesure , je vais proposer différents tutoriels pour chacun des outils afin de poser les bases d'utilisation.

Au départ, j'avais plutôt pensé l'OpenMVPBox pour les développeurs qui veulent gagner du temps pour créer leur projet. Mais au fil de ma découverte des outils, je me suis dis que, finalement, avec un peu de motivation et d'aide, OpenMVPBox peut-être utilisée par tous.

Pour résumer, les utilisateurs cibles :

  • tu n'as pas peur de mettre un peu les mains dans le cambouis
  • tu t'y connais un peu en technique

Alors Fonce et installe ton OpenMVPBox :)

L'architecture d'OpenMVPBox

L'OpenMVPBox est une suite de scripts à exécuter sur un serveur ( Ubuntu uniquement pour le moment) avec la mise en place de Docker.

Un peu de description technique :

Mais qu'est-ce que ce système Docker? C'est tout simplement un ensemble de composants logiciels qui permet d'exécuter tes applications dans des conteneurs.
Par exemple n8n, NocoDB seront chacun d'eux un conteneur.
Chaque conteneur possède son propre OS avec sa liste de dépendances liées à ton application. Chacun des conteneurs est indépendant, peu importe le système d'exploitation qui héberge docker. Cela permet donc une meilleure isolation de tes conteneurs et de ta machine hôte.
Une conteneur est donc basé sur une image, par exemple Ubuntu, python, Debian, ... qui contient tout le nécessaire pour la faire tourner. Ensuite tu enrichis ce conteneur avec une liste de commandes, comme par exemple une suite d'installation de paquets, propre au fonctionnement de ton application finale.

Illustrons cela par une image toute simple :
0_Xm4puL2OQlim6Htz

L'avantage de ce système c'est qu'il est possible de reproduire le fonctionnement de ton application d'une machine à un autre en écrivant uniquement la recette du Dockerfile et dudocker-compose.
Le Dockerfile est un fichier qui va indiquer comment construire l'image (= le conteneur) avec la distribution et les paquets qui vont bien (python3, ssl,...).
Le docker-compose, quant à lui, est un fichier qui indique comment va être lancé le conteneur :

  • le type de variable d'environnement à utiliser
  • l'emplacement des volumes à utiliser
  • ...

Je vous invite à lire la documentation officielle (https://docs.docker.com/ et https://docs.docker.com/compose/) pour comprendre plus en détails le fonctionnement.

L'OpenMVPBox possède, pour une instance hébergée (cloud), a minima deux services Docker :

  • traefik : pour la gestion des redirections web et le https. C'est un outil très puissant et super configurable et qui s'occupera de tous les routages web.
  • portainer : pour la gestion des fameux containers (arrêt/redémarrage)

Tous les autres Dockers, ce sont vos stacks.

Passons aux choses sérieuses avec la mise en place de l'OpenMVPBox dans notre prochain article

Voilà, j'espère que cette tutoriel n'a pas été très compliqué et que le concept est bien compris.

Happy MVP !!

Article précédent Article suivant