Skip to content

Instantly share code, notes, and snippets.

View guillaumecabanel's full-sized avatar
🦄

Guillaume CABANEL guillaumecabanel

🦄
View GitHub Profile
@guillaumecabanel
guillaumecabanel / article.md
Last active May 2, 2023 07:48
Comment gérer la complexité des vues en Rails avec ViewComponent ?

Comment gérer la complexité des vues en Rails avec ViewComponent ?

view_complexity

Une application Web est vite amenée à présenter des vues complexes.

Des éléments asyncrones peuvent être ajoutés à la page.

Des éléments peuvent être ajoutés ou supprimés dynamiquement.

Il faut respecter la cohérence de l'UI.

@guillaumecabanel
guillaumecabanel / README.md
Created January 16, 2023 14:47
Commit types

Commit types

build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)

ci: Changes to our CI configuration files and scripts (examples: CircleCi, SauceLabs)

docs: Documentation only changes

feat: A new feature

@guillaumecabanel
guillaumecabanel / _consent_banner.html.slim
Created January 19, 2022 10:20
Consent Google Analytics in Rails
@guillaumecabanel
guillaumecabanel / env_to_js.md
Last active April 30, 2020 11:49
How to pass ENV variable to js file
/ your_view.html.slim
div#something data-api-key=(ENV['API_KEY'])
// your_file.js
const apiKey = document.getElementById('something').dataset.apiKey
@guillaumecabanel
guillaumecabanel / app.js
Created April 29, 2020 11:52
JS | How to get selected option
const select = document.querySelector('select');
const valueFromSelectedOption = select.options[select.selectedIndex].value;
console.log(valueFromSelectedOption); // => "2"
@guillaumecabanel
guillaumecabanel / _card.html.slim
Last active August 13, 2019 15:17
View for rails template
.max-w-sm.rounded.overflow-hidden.shadow-lg
= image_tag image_url, class:"w-full"
.px-6.py-4
.font-bold.text-xl.mb-2 = title
p.text-gray-700.text-base = content
.px-6.py-4
- tags.each do |tag|
span.inline-block.bg-gray-200.rounded-full.px-3.py-1.text-sm.font-semibold.text-gray-700.mr-2
= tag
@guillaumecabanel
guillaumecabanel / js_recap.md
Last active February 14, 2023 12:52
js recap

DOM & Events: recap

How to get one element from the dom

generic with css selector

<div class="title">Hello</div>
@guillaumecabanel
guillaumecabanel / liste complète.md
Last active August 22, 2018 20:00
Équipement alpinisme

Équipement alpinisme 🏔

La tête 🕶

  • Un bonnet, ou passe montagne
  • Une casquette
  • Une paire de lunettes de soleil haute protection
  • Crème de protection solaire pour le visage et les lèvres
  • Un masque de ski

Le buste 👕

/ app/views/layouts/application.html.slim
doctype html
html
head
meta charset="UTF-8"
meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"
title title
= favicon_link_tag 'favicon.png'
= csrf_meta_tags