29
RUBY NORD Apéro Ruby février 2016

Middleman avec des clients

Embed Size (px)

Citation preview

Page 1: Middleman avec des clients

RUBY NORDApéro Ruby février 2016

Page 2: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

Samuel Bourdon

@sambrdn

Page 3: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

UTILISER MIDDLEMANAVEC DES CLIENTS

(qui veulent gérer leurs contenus…)

Page 4: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

MIDDLEMANUN GENERATEUR DE SITE STATIQUE

???

Page 5: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

Que dit le web sur le sujet ?

Page 6: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

NONhttp://bit.ly/1PMCktV

The joy and pain of using a static site generator for private and client work

http://bit.ly/1O1YlPO

Static vs. CMS, what's the best

solution for clients?

Page 7: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

NONLES CLIENTS VEULENT DES CMS• Edition facile • Publication instantanée • Des formulaires • Des sliders • Des commentaires

• Des plugins partout • Données dynamiques • Evolutions • Encore des plugins

Page 8: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

OUISTATIC IS THE NEW DYNAMIC

http://bit.ly/1mqYBS7

VOX MEDIASite statique Middleman dont le contenu est géré par des éditeurs externes

Page 9: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

OUISTATIC IS THE NEW DYNAMIC

HEALTHCARE.GOVSite gouvernemental US buildé avec Jekyll

http://bit.ly/1mqYBS7

Page 10: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

STATIC IS THE DYNAMICDes dizaines de services

pour « dynamiser » un site statique

Page 11: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

LES AVANTAGEScôté développeur

• Rapidité de développement • Coût • Versionning aisé • Centralisation du code • Pas de jonglage avec les bases de données • Environnements séparés: dev / staging / production • Déploiement rapide • Stricte séparation du développement et de l'édition • Maintenance quasi nulle • Hébergement peu gourmand • Sécurité

Page 12: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

LES INCONVENIENTScôté client

• Pas d'interface d'administration • Pas de mise à jour par les utilisateurs • Pas de publications immédiates • Pas de banque de plugins utilisables en un clic • Gestion des images non user friendly • Dépendance à un prestataire pour les mises à jours

Page 13: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

CAS D’UTILISATION• Sites de news aux nombreuses publications • Sites aux structures complexes et modifiables • Sites avec gestion des utilisateurs* • Sites nécessitant des manipulations de BDD • Pas de services tiers répondant aux besoins

• Sites type vitrine / brochure • Sites institutionnels au contenu important • Sites de documentation • Le classique blog / portfolio • Site promotionnel produit / service • Landing pages • Sites évènementiels • Panneau d’affichage • Et nombre d’autres…

Page 14: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

OK MAIS COMMENT ON GÈRE

LE CONTENU ?

Page 15: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

L’EMAIL

• Un petit parfum du web des 90’s • Simple pour l’utilisateur • Viable pour les sites aux mises à jour peu féquentes

Page 16: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

L’EMAILQUEL FORMAT DE FICHIERS ?

EXCEL

WORD

YAML / JSON

MARKDOWN

Des outils pour nous aiderMR Data Converter / convertcsv.com /

Des gems : csv2json / word-to-markdown

Page 17: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

GOOGLE DRIVE

• Contenu éditable en ligne • Toujours simple pour les utilisateurs • Travail collaboratif possible • Versionning des fichiers • Partage d’images / documents

Page 18: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

GOOGLE DRIVE gems spécifiques

Middle_drivegithub.com/zigomir/middle_drive

2

• Données dans des spreadsheets • Chaque feuille correspond à une page • Simple suite de clés / valeurs • $ middle_drive pour la synchro locale

Page 19: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

GOOGLE DRIVE gems spécifiquesMiddleman-google-drive

https://github.com/voxmedia/middleman-google_drive

2

• Système utilisé par Vox Media • Système d’authentification • Multi-documents, multi-pages • Simple suite de clés / valeurs • Plain text / HTML / ArchieML • activate :google_drive

Page 20: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

GOOGLE DRIVE Mais aussi

Google Drive Rubyhttps://github.com/gimite/google-drive-ruby

https://github.com/landonmarder/google_drive_ruby

Sheestuhttps://sheetsu.com/

RESTful API pour Google Spreadsheet : GET / POSTPUT / PATCH / DELETE dans la current beta

Page 21: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

PROSE.IOL’éditeur de GitHub

Page 22: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

PROSE.IOL’éditeur de GitHub

• Sources sur GitHub • Versionning • Accès restreint des fichiers • Editeur Markdown • Prévisualisation • Charger des images • Edition des meta données • Commit on save • Build & Deploy

C’est plus simple d’apprendre un peu de Markdown que de cliquer partout dans un editeur…

Page 23: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

CONTENTFULCms en mode SaaS

• Découpler totalement le contenu • Multi-utilisateurs • Flexibilité • User friendly • Gestion avancée des assets • Webhooks • Gem pour middleman • $ middleman contentful —rebuild • Free pour les petits projets

Page 24: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

PRISMIC.IOCms en mode SaaS

• Similaire à Contenful • Création de CT en JSON • Différents types de contenus • Gem pour middleman • $ middleman prismic • Gem officielle : Ruby-kit • Free en mono-utilisateur

Page 25: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

WORDPRESSCms as a back end

• Copier Contentful / Prismic • Ne garder que l’édition • Gestion des publications • Le client connait WP • Refonte d’un site existant • Management des assets • Gems : • middlemanWordpress-import • middleman-data-source

Page 26: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

RUBY ON RAILSRoll your own solution

• Simple CRUD • Pages / posts / galeries • Fonctionnalités sur mesure • JSON pour tous • Gems pour l’admin • Hébergée sur heroku • App réutilisable

Une app par site

Page 27: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

RUBY ON RAILSRoll your own solution

• Simple CRUD • Pages / posts / galeries • Fonctionnalités sur mesure • JSON pour tous • Gems pour l’admin • Hébergée sur heroku • App réutilisable

Une app par site

• Une app multi-sites • Collection de modules • Activables site par site • Ajout de nouveaux sites • Soyez créatifs :)

Une app pour les gouverner tous

Page 28: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

D’AUTRES SOLUTIONS ?Oui ! il y en a encore…

Page 29: Middleman avec des clients

RUBY NORD Apéro Ruby février 2016

Merci !