Aller au contenu

Omnisense : l’écosystème Omni et sa documentation

Un préfixe, plusieurs familles 246 paquets · 25 familles

Le cœur des sites, et des structures toutes prêtes, facultatives.

Lire la documentation Démarrer

A — Le socle

Le cœur, les familles, les ponts

Ce que tout site peut prendre : omnibase, le cœur des sites ; les familles, un contrat par domaine, que leurs fournisseurs remplissent service par service ; les ponts, qui relient le tout à un cadre. Les fournisseurs ne sont pas listés ici : ils se cherchent.

Un site prend le socle, les familles qu’il appelle et les ponts de son cadre. Les structures préparées s’ajoutent si elles font gagner du temps : rien dans le socle ni dans les familles n’en dépend. S’y ajoutent 2 bibliothèques JavaScript.

B — Les familles

Un contrat par domaine, un paquet par service

Une famille écrit une fois ce qu’un domaine demande aux services du dehors - tarifs et étiquettes pour les colis, paiements et remboursements pour le commerce - et chaque fournisseur le remplit pour un service. Changer de service, c’est changer une ligne de configuration.

D — Facultatif Les structures préparées

Une structure toute prête, si elle fait gagner du temps

Une structure toute prête pour un métier — entités, écrans, back-office, traductions, données de démonstration — déjà assemblée sur le socle. Facultative : la prendre pour aller vite, ou écrire la sienne sur le socle et les familles.

Structures préparées omnibase/<métier> omnibase/adminomnibase/agendaomnibase/blog+ 26 29 structures

Rien dans le socle ni dans les familles n’en dépend. Symfony aujourd’hui, comme le cœur ; toutes se trouvent dans la recherche des paquets.

E — Compatibilité

N’importe quel cadre : les familles en PHP nu, le cœur par ses ponts

Ce qui est vrai aujourd’hui. Aucune date n’est promise pour le reste.

Aujourd’hui Les familles tournent en PHP nu

Le cœur d’une famille omni* ne requiert ni Symfony, ni Doctrine, ni Twig : seulement des bibliothèques autonomes. Son registre se monte à la main, dans un script, une application Laravel ou Symfony. Le pont Symfony est dans le paquet, sous Bridge/Symfony, et rien n’en est chargé ailleurs.

use Omnitrade\PayPal\PayPalGatewayFactory;
use Omnitrade\Registry;
use Symfony\Component\HttpClient\HttpClient;

// No container, no kernel: the registry is built by hand.
$registry = new Registry([new PayPalGatewayFactory(HttpClient::create())], [
    'paypal' => ['factory' => 'paypal', 'options' => ['client_id' => $id, 'secret' => $secret]],
]);
$gateway = $registry->get('paypal');

La preuve : chaque famille a un test sans cadre (Tests/BareTest.php) qui monte son registre à la main et vérifie qu’aucune classe d’un cadre n’est chargée.

Aujourd’hui omnibase 4 tourne par ses ponts

omnisense/omnibase 4.x ne requiert que sa fondation, sans cadre : Symfony vient par omnibridge/symfony, Laravel par omnibridge/laravel, le stockage et le rendu par omnibridge/doctrine et omnibridge/twig.

Ensuite Les structures préparées suivent

Les structures préparées omnibase/* sont aujourd’hui des bundles Symfony sur le cœur ; chacune passe son métier à la racine de son paquet (objets, règles, contrats) quand elle est reprise, ses parts de cadre dans des ponts. La colle générique, qui ne connaît aucune structure :

Cette colle, c’est omnibridge, décrit plus haut.

Le détail, et ce qu’il impose à chaque paquet : la page Compatibilité de la documentation.

F — Lire

Chaque paquet a son manuel

Les manuels sont les fichiers Markdown de chaque dépôt, tels qu’ils y sont écrits : une version par branche, un lien vers le fichier pour le corriger.

paquets au catalogue
246
manuels publiés
241
familles
25

Lire la documentation Soutenir

Annonces

  1. Six nouvelles familles, GitHub Pages, des manuels par série

    Le site est publié sur GitHub Pages par omnibridge/static ; omnifund, omnidns, omniticket, omnireach, omnifilm et omnigame entrent au catalogue ; omnidrive gagne quatre fournisseurs ; flowjs 1.5.2 ; le manuel d'omnibase pour 4.x et 3.x côte à côte.

  2. omnibridge/static — un export statique pour toute application

    La famille omnibridge gagne un exporteur générique — les pages publiques d'une application, rendues à la construction par son propre code, pour tout hébergement statique.

  3. Ce site est désormais statique

    Guides, actualités, catalogue et manuel de chaque paquet, construits depuis des fichiers et servis sans application côté serveur.

Toutes les annonces