GithubHelp home page GithubHelp logo

fabmob.io's Introduction

fabmob.io

Le nouveau site Web de la FabMob France.

Comment modifier le contenu

  1. se connecter ou créer un compte github

Ajouter ou modifier un article de blog

Les articles sont dans le dossier /articles. Ce sont des fichiers .md dits "markdown", qui est une alternative 10x plus simple au .doc.

Pas de panique, ça s'apprend en 5 minutes puis ça se pratique ;).

▶️ Concrètement :

  • si vous avez les droits sur fabmob (donc par exemple vous êtes membres de l'équipe), alors vous allez travailler directement dans le dépôt principal de code. Sinon, github vous proposera de créer un "fork", une copie qui vous appartient, et à partir de ce fork une "pull request", qui constiste à dire : "eh, fabmob, j'ai fait cette modification chez moi, et j'aimerais que vous l'appliquiez au dépôt principal :)".
  • pour créer un fichier, une fois connecté à votre compte github, cliquez sur Add file > Create a new file, remplissez son nom en haut (par exemple 2019-tu-me-manques.md). Le .md est à ajouter impérativement à la fin de votre nom d'article.
  • pour modifier un fichier, cliquez sur l'icône crayon 🖋 en haut à droite, puis modifiez-le.

En début de fichier, vous devez respecter un peu de formalisme dans un deuxième format très intéressant et simple qu'on appelle le YAML. Si vous voulez, vous pouvez suivre le tuto "le YAML pour les nuls".

---
title: Bouger, un phénomène culturel intégral
date: 2000-04-26
image: https://i.imgur.com/OZEwzs5.jpg
résumé: Le résumé est important pour la liste des articles qui s'affiche sur le site, sinon le premier paragraphe sera extrait.
categories: 
  - articles
  - innovation
tags: 
  - imaginaire
author: Gabriel Plassat
---

Blabla

## Mon sous-titre

Blabla2

Au sujet du titre : il faut s'efforcer de mettre des titres courts, moins de 10 mots (par exemple "Vers un bloc opératoire décarboné et open source"), d'une pour que le titre ne dépasse pas sur la page d'accueil du blog, et de deux parce qu'un article de blog avec un titre trop long sera beaucoup moins lu ! Le résumé est là pour en dire plus ;)

Pour le contenu principal, c'est au format markdown. Sur github, l'éditeur ne propose pas de boutons (par exemple mettre un paragraphe en gras). Si vous préférez, vous pouvez créer votre contenu dans pad.fabmob.io ou un autre outil et copier coller cela dans l'éditeur github une fois terminé. Ctrl-a (sélectionner tout), Ctrl-c, Ctrl-v, modifier le contenu, puis pareil en sens inverse ;)

Pour les images, à la fois l'image de couverture (image: xxx dans l'en-tête) et les images du corps de l'article, vous avez le choix :

  • soit mettre des images via l'interface de github dans le dossier de l'année de l'article /contenu/articles/2023/images, puis référencer l'image avec un lien relatif comme ceci : image: /contenu/articles/2023/images/monimage.jpg ou dans le corps de l'article comme ceci : ![description de l'image](/contenu/articles/2023/images/monimage.jpg). Pensez à éviter les espaces dans le nom du fichier. Evitez aussi les guillements dans la description de l'image.
  • soit utiliser un service externe comme imgur.com ou piquer une belle image libre de droit sur unsplash.com et référencer l'URL complète

Les images de couverture (image: xxx dans l'en-tête) sont aussi utilisées pour les vignettes dans les réseaux sociaux. Twitter est particulièrement strict sur les dimensions d'image, elles doivent correspondre au ratio 1.9:1 (par exemple une largeur de 768px et une hauteur de 403px).

Si vous choisissez d'héberger l'image ici dans le dossier contenu, alors vous devez le faire sur la branche que vous avez créé pour la publication de votre article .md. Si vous crééz deux branches différentes, donc deux Pull requests, vous ne verrez pas l'image sur le lien d'aperçu de votre article.

💡 Pour travailler sur une branche, quand vous explorez les fichiers de ce dépôt (par exemple ici), assurez-vous que le sélecteur en haut à gauche indique le nom de la branche voulue, par exemple master. C'est la branche qui représente le code du site déployé sur lafabriquedesmobilites.fr. Votre branche de travail aura donc forcément un autre nom.

Avec le contenu juste au-dessus (et si possible, un texte un peu plus intéressant de votre création), il vous suffit alors de cliquer tout en bas de la page sur le bouton vert "Commit changes".

Vous arrivez sur un écran qui vous permet de visualiser vos changements qui est surtout intéressant quand vous modifiez quelque chose car vous verrez des lignes rouges (supprimées) et des vertes (ajoutées).

Cliquez sur "Create pull request". Les membres de l'équipe qui suivent ce site auront une notification et pourront discuter / valider vos changements. N'ayez pas peur de tenter quelque chose : tout se corrige, tout s'améliore, github est fait pour discuter des changements 🙂

Bravo 👏 !

Modifier le contenu d'une page de texte

Certaines pages du site, celles de la section à-propos, sont dans le dossier /contenu.

Par exemple, la page d'accueil "à-propos" ici. C'est du markdown. Pour les modifier, voir la section au-dessus à propos des pages de blog, c'est le même procédé mais sans l'en-tête entre les ---, juste du markdown.

D'autres contenus sont des fichiers .yaml. Ils nous permettent de lister les membres et de lister les communs que l'on veut mettre en avant. Ils sont lus par les pages Ecosystème.js et Communs.js, des pages qui mélangent du Javascript (le langage de programmation du Web) et du HTML (le langage d'affichage des pages Web) pour afficher les pages dans le navigateur.

Infos techniques

C'est un site écrit en Javascript/React, comme une single page application très simple, sans dépendance à un framework comme create-react-app, Gatsby ou Nextjs.

Rappelons-nous les objectifs de ce nouveau site en 2020 : remplacer un Wordpress pas à jour, lent, usine à gaz qui sert surtout pour le blog et comme mauvais site vitrine, pas dispo en https, et qui de toute façons nécessitait régulièrement de faire appel à un développeur.

Nous avons estimé que les gains du server-side-rendering ne sont aujourd'hui plus aussi important qu'à l'époque. D'après les dernières infos, le moteur de Google (le moteur utilisé en écrasante majorité par les Français) indexe très bien les pages générées côté client, la grosse différence étant le temps de traitement qui peut être allongé de quelques jours, qui ne nous touche ici que très peu.

Le site utilise un mini-moteur de blog intégré, Article.js, développé pour github.com/laem/blog pas encore assez complexe pour mériter d'être externalisé dans son propre dépot, qui lit les articles présents dans articles/xx/x.md, .md étant le format markdown utilisé notamment ici sur Github, sur pad.fabmob.io (Codimd), ou encore forum.fabmob.io (Discourse).

Du point de vue CSS, on a commencé à styler les éléments HTML "nativement", sur le même principe que l'excellent https://andybrewer.github.io/mvp/, puis à utiliser style-components en mode attribut css parce que c'est vraiment pratique pour itérer, avant de construire notre propre bibliothèque de composants.

Le site est hébergé par Netlify, pour sa simplicité d'utilisation, sa gratuité et sa performance. N'en déduisez pas qu'il est servi depuis Silicon Valley à l'autre bout du monde : le code de ce dépôt est compilé en un site statique qui est déposé par Netlify sur un CDN, content delivery network. Autrement dit, quand vous tapez lafabriquedesmobilites.fr depuis Rennes, il sera servi par des serveurs à Rennes, Paris ou Berlin, mais pas San Francisco.

⚙️ Pour le lancer sur votre machine, installez node, yarn puis faites yarn && yarn start.

fabmob.io's People

Contributors

art-ev avatar carlosgarciabriceno1 avatar dependabot[bot] avatar eline31 avatar gabrielplassat avatar iciatech-yprime avatar juliefabmob avatar laem avatar maloufabmob avatar nicledouarec avatar patgendre avatar romainbenjamin avatar ttalex avatar yannberga avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

fabmob.io's Issues

Ajouter "protection de données personelles"

blog: https://lafabriquedesmobilites.fr/blog/Standards-ouverts-pour-MaaS-d-interet-general

Cela nécessite aussi de tenir compte du contexte français et européen spécifique : notre culture du transport public ; nos objectifs climatiques, de qualité de vie et d’inclusion sociale ; notre organisation territoriale.

--> Je propose d'y ajouter la thématique de la protection des données personnelles. Qui, dans le contexte européen, est beaucoup plus importante que dans d'autres parties du monde.

Anciens designs

Sur la branche idée-0 on a testé un design classique de page d'accueil

Screenshot_20201202-172137_Kiwi Browser

Puis on a testé #2 une variation avec une illustration d'accueil

Idées par rapport au site actuel

  • intégrer un bouton adhérer à la fabrique sur le site
  • Intégrer un onglet “Qui sommes-nous ?”
  • Supprimer le bot sur le site qui renvoie à Margot via le rocket chat
  • Trop de boutons réseaux sociaux
  • intégrer un rappel pour adhérer sous forme de bandeau fin tout en haut de la page, qui apparaît après quelque temps passé sur le site
  • intégrer un bouton adhérer à la fin de chaque article

Finir le blog

v1

La v1 : tout ce qu'il faut faire avant de remplacer le blog actuel

  • peupler le blog avec les articles actuels

  • Comment faire un export de Wordpress vers md avec attributs ?

  • Pour migrer vers le nouveau site, il faut qu'on s'assure que les articles de blog gardent la même URL ou qu'ils soient redirigés vers une nouvelle.

v2

  • faire un lien "venez débattre de cet article sur le forum", mais ça nécessite de créer des entrées dans le forum, à réfléchir
  • aller récupérer les images de couverture en direct depuis l'ancien site
  • implémenter les catégories
  • abonnement aux articles du blog
    Comment faire ça ? Je me demande si l'on ne peut pas utiliser le forum, qui aura un système de mails et d'abonnements.

Contestable

  • utiliser le forum comme éditeur d'articles ?

Discourse utilise du markdown, donc théoriquement le site pourrait simplement être une visualisation d'articles discourse. Discourse serait alors aussi un moyen de commenter les articles :)

  • Implémenter un champs de recherche

Est-ce vraiment utile ? Je crois bien que tout le monde utilise Google.

Idées bonus

Animation du logo : faire un fondu des couleurs sur le logo noir et blanc.

Compléter la page Tracemob

  • faire une page d'accueil de type appli pas trop moche
  • réintégrer le contenu de https://oultim.frama.site ici, le .md est dans /admin
  • le faire un peu joliment, du CSS et un tri par date
  • intégrer les images ?
  • faire du chargement fainéant pour cette page, qui ne doit pas alourdir le reste du site
  • faire un dossier tracemob et plusieurs composants
  • https://lafabriquedesmobilites.fr/communs clic sur tracemob -> /tracemob
  • intégrer un lien clair vers les CGU
  • parler du contexte de l'app, agremob, un encart coachCO2

@PatGendre je vais m'en charger dès que possible

Finir le blog

  • aller récupérer les images en direct depuis l'ancien site

Résumé des articles

@maloufabmob @GabrielPlassat @Eline31 @Yann-Bergamaschi:patch-1

Je vois que la mise en ligne d'articles tourne bien :)

Juste un petit point : en mettant un attribut "résumé" dans l'en-tête de l'article ça permet de l'afficher dans la liste des articles, c'est plus propre et on peut y mettre un truc qui accroche le lecteur.

Sinon c'est le début de l'article, donc ça peut être un poil moche (on pourra améliorer ça).

Capture d’écran du 2021-03-16 09-19-33

Ajouter une image de mise en avant article stockée sur cloud

J'ai tenté d'ajouter une image de mise en avant dans l'article sur la démobilité en l'ajoutant d'abord dans un dossier image par son lien cloud étant stockée sur cloud puis en ajoutant dans l'article le nom de l'image enregistrée sur github. Elle est apparue pendant quelques minutes puis a disparu. L'article et l'image sont stocké dans le dossier 'articles' puis '2021'.
J'ai remarqué que beaucoup d'images avaient une même URL imgur.com, faut-il les stocker là-dessus pour pouvoir les faire apparaître dans nos articles ?

Les Fabriques

Je propose d'afficher d'autres Fabriques sur le à propos : Faben et Fablog
d'ailleurs ce sujet est plutot à mettre dans "travailler ensemble" ?

Publier les imaginaires

@Eline31

  • donner un style particulier aux pages "imaginaires", ça peut se faire via un tag imaginaires
  • faire une page qui explique le projet et liste les articles / donne un lien vers les articles ?

Exporter facilement le wiki dans des sites grâce à un iframe

Il s'agit de créer un iframe pour permettre à d'autres acteurs d'intégrer le wiki ou une partie (comme par exemple : tous les communs relatif au vélo, ou toutes les connaissances relatives au vélo). Ce développement est hyper important car en exportant le wiki, cela permet d'engager d'autres parties prenantes dans l'intérêt d'avoir un wiki complet, fonctionnel.

Page tracemob v3

  • intégrer les images des articles d'archive ? elles sont dans les fichiers, mais pas affichées encore. Est-ce nécessaire ?
  • bien trier les articles d'archive : il sufit d'ajouter le bon nombre à deux chiffres en début de nom de fichier. C'est le cas pour certains mais pas tous @PatGendre
  • parler du contexte de l'app, agremob, un encart coachCO2

@PatGendre j'ai reglé la plupart des tâches restantes, dont l'intégration de l'archive. Je l'ai fait de façon sommaire, n'hésite pas à faire de retours ici.

Cette issue fait suite à #65

Feuille de route

v1

L'objectif est de remplacer au plus vite le site actuel. On va lister ici les choses absolument nécessaires pour cela, mais pas plus.

  • Gérer le blog
  • terminer le style des cartes sur https://fabmob.netlify.app/communs
  • Corriger les textes actuels et peupler les pages comme Philosophie en reprenant des éléments du PDF de stratégie
  • Page événéments : aller chercher via l'API les événements de cette page wiki et les afficher très simplement; n'afficher que les événements publics ? A tester après, mais pourquoi se priver ?
  • enlever le bouton de traduction en anglais
  • implémenter le bouton jaune "nouveautés"
  • mettre en avant une sélection à la main de communs (communs-prio.yaml) affichée sur l'onglet Communs, et un bloc visuel [explorer tous les communs sur le Wiki]
  • le faire proprement 🎨 #20
  • décider quoi mettre sur la page "ecosystème". On a tranché que nous n'allons pas dans un 1er temps exposer les autres fabriques sur lafabriquedesmobilites.fr, mais sur fabriques.io, qui sera un portail vers les autres
  • inviter les membres à renseigner leurs photos / modifier leurs cartes ecosystème
  • ajouter les adhérents à partir du tableur @Eline31 ou mieux à partir du wiki via l'API qu'on utilise déjà sur les autres entrées
  • terminer le blog v1 #11
  • sur la page ecosystème, mettre plus haut l'encart "les autres fabriques : Québec, santé, énergie"
  • peut être dire que le compte "centralisé" (ou qqc comme ça) donne accès à tous les outils suivants : ...
  • faire un lien vers https://wiki.lafabriquedesmobilites.fr/wiki/Communs ?

Ensuite

  • traduire au moins les pages "à propos" (en dupliquant les pages bien compartimentées) et donner un moyen de contact en anglais

Problème texte vignette des articles

Les textes des vignettes articles du blog ne lisent pas le code et donc tous les éléments de code apparaissent dans les quelques lignes d'introduction sous le titre.

Afficher seulement les adhérents

Pour l'instant on affiche tous les "acteurs" du wiki, or certains seulement sont adhérents.

On ne peut pas filtrer sur l'appel API, il faut tous les récupérer puis filtrer puis afficher.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.