Présentation – Concevoir un site statique

Formation proposée dans le cadre de la semaine du libre accès de l’Université Paris Nanterre.

Le support au format PDF est disponible sur Nakala

Plan

  1. Qu’est-ce qu’un site web ?
  2. Écrire pour le web : HTML et Markdown
  3. Une solution de publication : GitHub/GitLab Pages

1 — Qu’est-ce qu’un site web ?

Internet et web

Internet = réseau informatique mondial

Réseau mondial de télécommunication reliant entre eux des ordinateurs ou des réseaux locaux et permettant l’acheminement de données numérisées de toutes sortes (messages électroniques, textes, images, sons, etc.). (CNRTL)

Web = une application d’Internet (parmi d’autres)

Le web est un système de pages reliées par des hyperliens, qui contiennent des informations et des ressources variées. Internet est le réseau informatique sur lequel le web repose.
(Numerama)

Principales composantes du web

Pour en savoir plus : MOOC Comprendre le web

Un site web

Plusieurs manières de créer un site web : à la main, avec un CMS (Content Management System) ou avec un générateur de site statique

Au départ tous les sites étaient statiques !

Mais les besoins se sont complexifiés et de nouvelles technologies sont apparues, comme les langages serveur (ex. PHP) et les CMS (ex. Wordpress)

→ Explosion des sites dynamiques, depuis les années 2000, notamment avec l’arrivée de Wordpress en 2003

Site web dynamique ou statique ?

Site web dynamique

Un site web dynamique est conçu pour offrir une expérience interactive et personnalisée aux utilisateurs. [… ] Un site dynamique génère du contenu en temps réel en fonction de divers facteurs tels que les interactions de l’utilisateur, l’heure de la visite, ou encore les données utilisateur spécifiques stockées dans des bases de données.

Site web statique

Un site web statique est constitué de pages dont le contenu ne change pas automatiquement. Chaque page est codée en HTML, CSS, et parfois JavaScript, et affiche la même information à tous les visiteurs, sans intégration de bases de données ou de contenu interactif qui change en fonction de l’utilisateur.

Source / Pour en savoir plus : Sites web statiques ou dynamiques : Quelle différence ?

Site dynamique Site statique
Contenu Personnalisable selon le profil et les choix des visiteurs Stable et identique pour tous les visiteurs, pas de personnalisation
Conception Plus facile, logique du WYSWYG Nécessite quelques compétences techniques
Fonctionnalités Plus avancées Par défaut peu avancées (mais les SSG permettent d’en ajouter)
Vitesse de chargement Plus lent car il faut interroger la base de données Plus rapide car l’intégralité du site est stockée au même endroit
Maintenance À faire régulièrement Pas ou peu de maintenance
Sécurité Inférieure Optimale
Suivi des modifications Pas ou peu accessible Simple à mettre en place avec un logiciel de gestion de versions
Empreinte écologique Plus élévée (car plus d’interactions et de technologies sollicitées) Moins élevée (low tech)

Low tech

Terme qui est apparu dans les années 1970 pour désigner un concept et une philosophie de vie s’inscrivant dans une démarche minimaliste et écologique.

→ Solutions «  basse technologie  » (en opposition à la «  high tech  »)

Ensemble des technologies utiles, durables et économiques visant la sobriété énergétique et matérielle. (Hello Carbo)

Trois grands principes :

  1. Utilité : réponse à un besoin réel et pertinent, usage agréable et autonome…
  2. Accessibilité : coût abordable, facilité d’utilisation, normes partagées…
  3. Durabilité : réutilisation, réparation, recyclage, faible niveau de dépendance…

center

Source : https://fr.wikipedia.org/wiki/Low-tech

Exemples de sites statiques

2 — Écrire pour le web

Le langage du web : HTML

HTML (HyperText Markup Language)

Beaucoup de ressources pour apprendre !

Une alternative pour l’écriture web : Markdown

Markdown est un langage de balisage léger facile à lire et à écrire
crée en 2004 par John Gruber (avec l’aide d’Aaron Swartz pour la syntaxe)

Philosophie de Markdown (selon son créateur) :

Un document formaté en Markdown doit pouvoir être publié tel quel, en texte brut, sans donner l’impression d’avoir été structuré par des balises ou des instructions de formatage.

La syntaxe Markdown est conçue dans un seul but : être utilisée comme format d’écriture pour le web.

Avantages :

Écrire en Markdown

Markdown HTML Rendu
# Titre 1 <h1>Titre1</h1> Titre 1
*italique* ou _italique_ <em>italique</em> italique
**gras** <strong>gras<strong> gras
***gras italique*** <strong><em>gras italique</em></strong> gras italique
XIX^e^ XIX<sup>e</sup> XIXe
H~2~O H<sub>2</sub>O H2O
[hyperlien](url) <a href="url">hyperlien</a> hyperlien
- Liste <ul><li>Liste</li></ul> - Liste
![légende](image.jpg) <img src="image.jpg" alt="légende"> width:50

Grande variété d’éditeurs Markdown (à télécharger, en ligne, intégré dans d’autres outils..)

bg 88%

Un éditeur en ligne : HedgeDoc

Outil de prise de notes collaborative simultanée

Instance test officielle : https://demo.hedgedoc.org Instance gouv.fr : https://pad.numerique.gouv.fr

Principales fonctionnalités :

–  Espaces de travail : lecture, écriture, les deux –  Thèmes : jour ou nuit –  Barre d’aide à la rédaction (et bouton aide) –  Aperçu des personnes connectées –  Gestion fine des permissions –  Historique des versions –  Page de visualisation partageable –  Mode présentation (avec reveal.js) –  Exports en MD et HTML

Découvrir Markdown

tutoriel interactif du CommonMark (traduction d’Arthur Perret)

width:1000

3 — Une solution de publication : GitHub/GitLab Pages

Le protocole Git

Protocole d’échange, de synchronisation et de versionnement de fichiers textes

Quels fichiers ?

Les plateformes Git

Git ≠ GitHub/GitLab/Framagit :
→ plateformes collaboratives de gestion de projet et de partage de codes basées sur le protocole Git

Trois niveaux de visibilité des contenus :

Regroupement possible de plusieurs projets au sein d’un groupe (ou d’une organisation)

Partager vos fichiers de documentation sur GitLab ou GitHub

Fichier « Lisez-moi » (readme) :

Fichier « Licence » : informations sur la licence utilisée

Tickets (issues) :

Répertoire de documentation (wiki) : documentation interne au sein d’un groupe/projet

center

Créer un site web avec la fonctionnalité Pages

GitLab Pages (ou GitHub Pages) : fonctionnalité qui permet de générer et de publier, gratuitement et en continu, un site statique associé à un répertoire GitLab (ou GitHub) et hébergé sur les serveurs de GitLab (ou GitHub) – en France pour l’instance Huma-Num

Avantages

Fonctionnement

Les générateurs de site statiques

= outil qui permet de créer des sites web composés de pages statiques, généralement au format HTML (ou MD)

Contrairement aux systèmes de gestion de contenu (CMS) dynamiques, les générateurs de sites statiques produisent des fichiers HTML, CSS et JavaScript prêts à être servis directement par un serveur web, sans nécessiter de traitement côté serveur au moment de la requête.

Fonctionnement (Wikipédia)

  1. Création du contenu – L’utilisateur crée le contenu du site, souvent dans un langage de balisage léger comme Markdown.
  2. Design des pages – Des modèles sont créés pour définir l’architecture et la mise en page du site, par exemple avec des feuilles de style CSS.
  3. Configuration – L’utilisateur configure les paramètres du site, tels que les métadonnées et la structure de navigation.
  4. Génération – Le générateur compile le contenu, les modèles et la configuration pour produire des fichiers HTML statiques.
  5. Déploiement – Les fichiers générés sont téléchargés sur un serveur web ou une plateforme d’hébergement.

center