Skip to content

Instantly share code, notes, and snippets.

View patrickbolle's full-sized avatar

Patrick Bollenbach patrickbolle

View GitHub Profile
@patrickbolle
patrickbolle / mo-recipekit.liquid
Last active June 22, 2026 19:10
RecipeKit Metaobject liquid widget (auto-synced)
{% comment %}RecipeKit Metaobject Liquid Widget v0.1.0{% endcomment %}
{%- assign rk_resource_id = article.id | downcase -%}
{%- assign rk_mf = shop.metaobjects.recipe[rk_resource_id] -%}
{%- assign rk_reference = shop.metaobjects.recipe_list_reference[rk_resource_id] -%}
{%- assign rk_settings = shop.metafields.recipekit.settings -%}
{%- assign rk_settings_mf = shop.metaobjects.settings_list_reference.recipekit_settings.settings_list.value -%}
{%- if rk_settings.widget_status == 'enabled' and rk_mf != blank -%}
{{- 'recipekit.css' | asset_url | stylesheet_tag -}}
{% liquid
@patrickbolle
patrickbolle / recipekit-svelte.liquid
Last active June 22, 2026 19:10
RecipeKit Svelte widget manual install snippet (auto-synced)
{% comment %}RecipeKit Svelte Widget v1.6.6{% endcomment %}
{%- assign rk_settings = shop.metafields.recipekit.settings -%}
{%- assign rk_lang = shop.metafields.recipekit.rk_lang -%}
{%- assign rk_recipe_id = blank -%}
{%- assign rk_mf = blank -%}
{%- if article -%}
{%- assign rk_resource_id = article.id | downcase -%}
{%- assign rk_type = article.metafields.recipekit[rk_resource_id].type -%}
{%- if rk_type == 'json' -%}
{%- assign rk_mf = article.metafields.recipekit[rk_resource_id].value -%}
@patrickbolle
patrickbolle / filter.css
Last active September 17, 2024 16:14
filter.js
#rk_filter {
display: none; /* hide filter by default */
flex-wrap: wrap;
justify-content: center;
margin: 20px 0;
}
#rk_filter select {
margin: 0 5px;
padding: 10px 15px;
@patrickbolle
patrickbolle / bbcomments.css
Last active June 26, 2026 18:16
Better Blog Comments widget script (auto-synced)
/* Better Blog Comments Widget CSS v1.1.2 */
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert:
{% comment %}
Wait.li Logic File
DO NOT TOUCH THIS FILE.
{% endcomment %}
{% assign og_wait_li_product_id = product.id | downcase %}
{% assign new_wait_li_product_id = product.selected_or_first_available_variant.id | downcase %}
{% assign og_wait_li_product_metafield = product.metafields.wait_li[og_wait_li_product_id] %}
{% assign new_wait_li_product_metafield = product.selected_or_first_available_variant.metafields.wait_li[new_wait_li_product_id] %}
{% if og_wait_li_product_metafield %}
@patrickbolle
patrickbolle / rk.css
Last active June 22, 2026 19:10
RecipeKit theme styles (auto-synced)
/* RecipeKit Liquid Widget CSS v2.0.2 */
@charset "UTF-8";
/* Base SCSS Variables */
/* End SCSS Variables */
/* Media Queries for SCSS */
/* End Media Queries */
/* Debut Theme Overrides */
.rte .social-sharing {
margin: 0;
list-style: none;
{%- liquid
assign og_wait_li_product_id = product.id | downcase
assign og_wait_li_product_metafield = product.metafields.wait_li[og_wait_li_product_id]
assign new_wait_li_product_id = product.selected_or_first_available_variant.id | downcase
assign new_wait_li_product_metafield = product.selected_or_first_available_variant.metafields.wait_li[new_wait_li_product_id]
if og_wait_li_product_metafield
assign wait_li_product_metafield = og_wait_li_product_metafield
assign wait_li_product_id = og_wait_li_product_id
else
assign wait_li_product_metafield = new_wait_li_product_metafield
@patrickbolle
patrickbolle / rk.liquid
Last active June 22, 2026 19:10
RecipeKit theme snippet (auto-synced)
{% comment %}RecipeKit Liquid Widget v2.0.11{% endcomment %}
{%- assign rk_resource_id = article.id | downcase -%}
{%- assign rk_type = article.metafields.recipekit[rk_resource_id].type -%}
{% if rk_type == 'json' %}
{%- assign rk_mf = article.metafields.recipekit[rk_resource_id].value -%}
{% else %}
{%- assign rk_mf = article.metafields.recipekit[rk_resource_id] -%}
{% endif %}
{%- assign rk_settings = shop.metafields.recipekit.settings -%}
{%- if rk_mf != blank -%}
.rte .social-sharing{margin:0;list-style:none;padding-top:10px}#frameToPrint{display:none}#rk_parent *::after{display:none}#rk_parent .rk_modern{position:relative;display:block !important}#rk_parent .rk_modern .rk_container{width:100%;max-width:1000px;padding:15px;border:1px solid black}@media only screen and (min-width: 1024px){#rk_parent .rk_modern .rk_container{padding:25px}}#rk_parent .rk_modern .rk_container .rk_heading{width:100%;margin-bottom:5px;margin-top:0;padding-top:0;border:0;font-size:30px;text-align:left;line-height:1;margin-bottom:10px}#rk_parent .rk_modern .rk_container .rk_subheading{line-height:1;margin-top:0px;border:0}#rk_parent .rk_modern .rk_container .rk_meta{margin-top:0;font-size:17px;margin-bottom:5px;font-weight:bold;text-align:left;border:0;line-height:1}@media only screen and (min-width: 1024px){#rk_parent .rk_modern .rk_container .rk_meta{margin-bottom:10px}}#rk_parent .rk_modern .rk_container ul,#rk_parent .rk_modern .rk_container li,#rk_parent .rk_modern .rk_container p,#rk_pa
@patrickbolle
patrickbolle / index.js
Created August 7, 2020 13:34 — forked from tobiasdalhof/index.js
Shopify JS Variant Listener
/**
* This class contains general helper methods.
*/
class Helper {
/**
* @param {String} name
* @returns {String|null}
*/
static getQueryParameter(name) {
name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]')