Aller au contenu
Tous les articles

Søcle : gérer son site soi-même, sans développeur, sécurisé et ultra rapide

Sébastien Mizrahi
Søcle : gérer son site soi-même, sans développeur, sécurisé et ultra rapide

Avec Søcle, vous gérez votre site vous-même, sans développeur : vous écrivez ce que vous voulez changer en français courant, et c'est fait. Pas d'extensions à suivre, pas de mises à jour, et un site qui reste rapide et sûr. La question qu'un développeur se pose aussitôt, et que je me suis posée en construisant Søcle, la plateforme de sites que je développe, c'est celle-ci : comment laisser modifier un site sans jamais risquer de le casser ? Voici comment ça marche, et ce qui rend la chose fiable, y compris sous le capot, en Python.

Gérer son site soi-même, en une phrase

Le principe est simple : vous décrivez votre besoin comme vous l'écririez à votre prestataire, "ajoute une page recrutement avec nos deux offres", "corrige la faute dans le dernier article". Il n'y a pas d'interface à apprendre ni de constructeur de pages.

La modification n'est jamais appliquée directement au site en ligne. Elle part sur une copie privée, vous recevez un aperçu accessible à vous seul, et le site public ne bouge pas tant que vous n'avez pas cliqué sur "Publier". Si le résultat ne vous convient pas, vous annulez, et rien n'a changé. Les versions précédentes restent restaurables.

Les étapes d'une modification avec Søcle : vous écrivez votre demande, l'IA travaille sur une copie privée, vous voyez un aperçu, puis vous publiez ou vous annulez. Une demande, un aperçu, puis vous décidez.

Ultra rapide, parce que le site est statique

Søcle génère un site statique avec Astro : le HTML est préparé à l'avance et servi tel quel, sans PHP ni base de données derrière les pages publiques. Concrètement, quand un visiteur arrive, le serveur n'a presque rien à calculer, il renvoie une page déjà prête. C'est ce qui rend ces sites très rapides, sans cache à régler. Et ce qui est rapide est souvent plus sûr : sans code exécuté à chaque visite, les attaques classiques contre les sites dynamiques n'ont pas grand-chose où s'accrocher.

Le dynamique, c'est du Python

Un site n'est jamais entièrement figé : il faut bien traiter un formulaire de contact, une inscription à la newsletter, ou enregistrer une modification au moment de la publication. Dans Søcle, tout ce qui reste dynamique tourne sur un back-office en Python, écrit avec Flask et servi par gunicorn. C'est lui qui gère les formulaires, la newsletter, la publication des contenus, le lien avec la boutique et les paiements.

Dans le détail, c'est un découpage d'application Python classique et carré : des routes publiques et des routes d'administration séparées, chaque entrée validée par pydantic, le HTML reçu nettoyé avec nh3 avant d'être stocké, les données en PostgreSQL via SQLAlchemy avec des migrations Alembic, et des appels sortants en httpx vers la boutique et les prestataires de paiement (Stripe, Mollie, PayPal). Même la reprise d'un ancien site WordPress passe par un outillage écrit en Python.

C'est exactement l'architecture que j'aime concevoir en tant que développeur Python : un front statique, rapide et sans surface d'attaque inutile, et un backend Python mince, présent seulement là où il apporte vraiment quelque chose. Les entrées utilisateur sont validées et nettoyées côté serveur avant d'être stockées, le navigateur ne parlant qu'au site. Si ce découpage vous parle, c'est le coeur de mes expertises backend Python.

Sécurisé : l'IA ne touche qu'à ce qu'elle doit

C'est le point qui m'importait le plus. Laisser une IA modifier un site n'a de sens que si une erreur ne peut pas partir en ligne ni fragiliser le serveur. Le périmètre de l'assistant est donc volontairement étroit : il ne modifie que les fichiers du site, jamais la configuration du serveur ni les secrets. Il ne voit ni les mots de passe, ni les clés, ni les réglages d'hébergement, et il n'a ni shell ni accès réseau.

D'autres limites sont vérifiées automatiquement : les couleurs ne peuvent venir que des jetons de thème, aucun script en ligne n'est accepté par la politique de sécurité, et une URL déjà publiée ne peut pas disparaître, elle est redirigée. Ce ne sont pas des consignes que l'IA est priée de suivre, ce sont des barrières que le système fait respecter.

Ce que l'IA peut modifier (pages, articles, images, thème, redirections), ce qui reste hors de sa portée (mots de passe, configuration serveur, secrets), et le build qui contrôle avant toute mise en ligne. L'IA a un périmètre précis, et un build valide avant publication.

Dernier filet : la mise en ligne déclenche une reconstruction complète du site et une série de contrôles. Si le build échoue, rien n'est publié. Une modification qui casserait structurellement le site ne peut tout simplement pas atteindre la production, et l'aperçu que vous validez est exactement ce que verront vos visiteurs.

Un fichier de contexte pour un résultat fidèle

Empêcher l'IA de nuire ne suffit pas : encore faut-il qu'elle sache à qui elle a affaire. Chaque site Søcle possède un fichier de contexte, des notes permanentes qui décrivent le site, son ton, ses règles maison et ce qui ne doit jamais changer. L'assistant le relit au début de chaque conversation. C'est ce qui évite qu'il réinvente le style ou casse une convention d'un passage à l'autre, sans avoir à relire tout le projet.

Aller plus loin sans développeur : votre propre Claude ou ChatGPT

Tout l'intérêt, c'est justement de ne pas avoir à rappeler un développeur. L'IA intégrée au Studio couvre les retouches courantes ; pour un chantier plus ambitieux, vous branchez votre propre Claude ou ChatGPT sur le site et vous lui demandez les modifications, en langage courant. Søcle expose pour cela un serveur MCP : votre assistant travaille sur les mêmes copies privées, avec le même aperçu, le même bouton "Publier" et les mêmes garde-fous, toujours sans voir les mots de passe ni la configuration du serveur. MCP est le protocole standard qui laisse un modèle appeler des outils ; je l'explique, en Python, dans mon article sur comment connecter ses outils à un LLM avec LiteLLM.

La même philosophie que mes autres projets IA

Cette approche n'a rien d'isolé. C'est celle que je défends pour automatiser sans tout confier à l'IA, ou dans Alfred, ma plateforme de chatbot : le modèle propose, un cadre déterministe dispose. Le travail intéressant n'est pas dans le prompt, il est dans les rails qu'on met autour. Une IA utile en production est une IA bien encadrée.

Pour aller plus loin

Le produit est détaillé sur socle.le-programmeur.com, et j'en raconte la genèse, côté usage, dans un article sur mon site principal. Si vous avez un projet Python où une IA doit agir sans déraper, c'est précisément le genre d'architecture que je conçois : voyez mes expertises ou parlons-en.

Un projet Python ou IA à concrétiser ?

Discutons de votre besoin.

Me contacter