/my-awesome-category/index.html ~> path: /
+category_archive:
+ type: liquid
+ path: /categories/
+tag_archive:
+ type: liquid
+ path: /tags/
+# https://github.com/jekyll/jekyll-archives
+# jekyll-archives:
+# enabled:
+# - categories
+# - tags
+# layouts:
+# category: archive-taxonomy
+# tag: archive-taxonomy
+# permalinks:
+# category: /categories/:name/
+# tag: /tags/:name/
+
+
+# HTML Compression
+# - https://jch.penibelst.de/
+compress_html:
+ clippings: all
+ ignore:
+ envs: development
+
+
+# Defaults
+defaults:
+ # _posts
+ - scope:
+ path: ""
+ type: posts
+ values:
+ layout: single
+ author_profile: true
+ read_time: true
+ comments: # true
+ share: true
+ related: true
\ No newline at end of file
diff --git a/docs/_data/navigation.yml b/docs/_data/navigation.yml
new file mode 100644
index 00000000..49708a46
--- /dev/null
+++ b/docs/_data/navigation.yml
@@ -0,0 +1,22 @@
+main:
+ - title: "Docs"
+ url: /docs/how-to-use/
+ - title: "Tutorials"
+ url: /docs/tutorials/
+ - title: "Contribute"
+ url: /contribute/
+ - title: "Blog"
+ url: /blog/
+
+docs:
+ - title: "Docs"
+ url: /docs/how-to-use/
+ children:
+ - title: "How to use"
+ url: /docs/how-to-use/
+ - title: "Easy PGP Encryption"
+ url: /docs/pgp-encryption/
+ - title: "Fiat Best Practices"
+ url: /docs/fiat-payment-best-practices/
+ - title: "Wallets"
+ url: /docs/wallets/
\ No newline at end of file
diff --git a/docs/_data/ui-text.yml b/docs/_data/ui-text.yml
new file mode 100644
index 00000000..98e81c27
--- /dev/null
+++ b/docs/_data/ui-text.yml
@@ -0,0 +1,1969 @@
+# User interface text and labels
+
+# English (default)
+# -----------------
+en: &DEFAULT_EN
+ skip_links : "Skip links"
+ skip_primary_nav : "Skip to primary navigation"
+ skip_content : "Skip to content"
+ skip_footer : "Skip to footer"
+ page : "Page"
+ pagination_previous : "Previous"
+ pagination_next : "Next"
+ breadcrumb_home_label : "Home"
+ breadcrumb_separator : "/"
+ menu_label : "Toggle menu"
+ search_label : "Toggle search"
+ toc_label : "On this page"
+ ext_link_label : "Direct link"
+ less_than : "less than"
+ minute_read : "minute read"
+ share_on_label : "Share on"
+ meta_label :
+ tags_label : "Tags:"
+ categories_label : "Categories:"
+ date_label : "Updated:"
+ comments_label : "Leave a comment"
+ comments_title : "Comments"
+ more_label : "Learn more"
+ related_label : "You may also enjoy"
+ follow_label : "Follow:"
+ feed_label : "Feed"
+ powered_by : "Powered by"
+ website_label : "Website"
+ email_label : "Email"
+ recent_posts : "Recent posts"
+ undefined_wpm : "Undefined parameter words_per_minute at _config.yml"
+ comment_form_info : "Your email address will not be published. Required fields are marked"
+ comment_form_comment_label : "Comment"
+ comment_form_md_info : "Markdown is supported."
+ comment_form_name_label : "Name"
+ comment_form_email_label : "Email address"
+ comment_form_website_label : "Website (optional)"
+ comment_btn_submit : "Submit comment"
+ comment_btn_submitted : "Submitted"
+ comment_success_msg : "Thanks for your comment! It will show on the site once it has been approved."
+ comment_error_msg : "Sorry, there was an error with your submission. Please make sure all required fields have been completed and try again."
+ loading_label : "Loading..."
+ search_label_text : "Enter your search term..."
+ search_placeholder_text : "Enter your search term..."
+ search_algolia_no_results : "No results"
+ results_found : "Result(s) found"
+ back_to_top : "Back to top"
+en-US:
+ <<: *DEFAULT_EN
+en-CA:
+ <<: *DEFAULT_EN
+en-GB:
+ <<: *DEFAULT_EN
+en-AU:
+ <<: *DEFAULT_EN
+
+# Spanish
+# -------
+es: &DEFAULT_ES
+ skip_links : "Saltar enlaces"
+ skip_primary_nav : "Saltar a navegación principal"
+ skip_content : "Saltar a contenido"
+ skip_footer : "Saltar a pie"
+ page : "Página"
+ pagination_previous : "Anterior"
+ pagination_next : "Siguiente"
+ breadcrumb_home_label : "Inicio"
+ breadcrumb_separator : "/"
+ menu_label : "Alternar menú"
+ search_label : "Alternar búsqueda"
+ toc_label : "En esta página"
+ ext_link_label : "Enlace directo"
+ less_than : "menos de"
+ minute_read : "minuto(s) de lectura"
+ share_on_label : "Compartir en"
+ meta_label :
+ tags_label : "Etiquetas:"
+ categories_label : "Categorías:"
+ date_label : "Actualizado:"
+ comments_label : "Deja un comentario"
+ comments_title : "Comentarios"
+ more_label : "Ver más"
+ related_label : "Puede que también te interese"
+ follow_label : "Seguir:"
+ feed_label : "Feed"
+ powered_by : "Funciona con"
+ website_label : "Sitio web"
+ email_label : "Correo electrónico"
+ recent_posts : "Entradas recientes"
+ undefined_wpm : "El parámetro words_per_minute (palabras por minuto) no está definido en _config.yml"
+ comment_form_info : "Tu dirección de correo electrónico no se publicará. Los campos obligatorios están marcados"
+ comment_form_comment_label : "Comentario"
+ comment_form_md_info : "Puedes utilizar Markdown"
+ comment_form_name_label : "Nombre"
+ comment_form_email_label : "Dirección de correo electrónico"
+ comment_form_website_label : "Sitio web (opcional)"
+ comment_btn_submit : "Enviar comentario"
+ comment_btn_submitted : "Enviado"
+ comment_success_msg : "¡Gracias por tu comentario! Se publicará una vez sea aprobado."
+ comment_error_msg : "Ha ocurrido un error al enviar el comentario. Asegúrate de completar todos los campos obligatorios e inténtalo de nuevo."
+ loading_label : "Cargando..."
+ search_label_text : "Términos de búsqueda..."
+ search_placeholder_text : "Términos de búsqueda..."
+ search_algolia_no_results :
+ results_found : "resultado(s) encontrado(s)"
+ back_to_top : "Volver arriba"
+es-ES:
+ <<: *DEFAULT_ES
+es-CO:
+ <<: *DEFAULT_ES
+
+# French
+# ------
+fr: &DEFAULT_FR
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Page"
+ pagination_previous : "Précédent"
+ pagination_next : "Suivant"
+ breadcrumb_home_label : "Accueil"
+ breadcrumb_separator : "/"
+ menu_label : "Menu"
+ search_label :
+ toc_label : "Sur cette page"
+ ext_link_label : "Lien direct"
+ less_than : "moins de"
+ minute_read : "minute(s) de lecture"
+ share_on_label : "Partager sur"
+ meta_label :
+ tags_label : "Tags :"
+ categories_label : "Catégories :"
+ date_label : "Mis à jour :"
+ comments_label : "Laisser un commentaire"
+ comments_title : "Commentaires"
+ more_label : "Lire plus"
+ related_label : "Vous pourriez aimer aussi"
+ follow_label : "Contact"
+ feed_label : "Flux"
+ powered_by : "Propulsé par"
+ website_label : "Site"
+ email_label : "Email"
+ recent_posts : "Posts récents"
+ undefined_wpm : "Le paramètre words_per_minute n'est pas défini dans _config.yml"
+ comment_form_info : "Votre adresse email ne sera pas visible. Les champs obligatoires sont marqués"
+ comment_form_comment_label : "Commentaire"
+ comment_form_md_info : "Markdown est supporté."
+ comment_form_name_label : "Nom"
+ comment_form_email_label : "Adresse mail"
+ comment_form_website_label : "Site web (optionnel)"
+ comment_btn_submit : "Envoyer"
+ comment_btn_submitted : "Envoyé"
+ comment_success_msg : "Merci pour votre commentaire, il sera visible sur le site une fois approuvé."
+ comment_error_msg : "Désolé, une erreur est survenue lors de la soumission. Vérifiez que les champs obligatoires ont été remplis et réessayez."
+ loading_label : "Chargement..."
+ search_label_text :
+ search_placeholder_text : "Entrez votre recherche..."
+ search_algolia_no_results :
+ results_found : "Résultat(s) trouvé(s)"
+ back_to_top : "Retour en haut"
+fr-FR:
+ <<: *DEFAULT_FR
+fr-BE:
+ <<: *DEFAULT_FR
+fr-CH:
+ <<: *DEFAULT_FR
+
+# Turkish
+# -------
+tr: &DEFAULT_TR
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Sayfa"
+ pagination_previous : "Önceki"
+ pagination_next : "Sonraki"
+ breadcrumb_home_label : "Ana Sayfa"
+ breadcrumb_separator : "/"
+ menu_label :
+ search_label :
+ toc_label : "İçindekiler"
+ ext_link_label : "Doğrudan Bağlantı"
+ less_than : "Şu süreden az: "
+ minute_read : "dakika tahmini okuma süresi"
+ share_on_label : "Paylaş"
+ meta_label :
+ tags_label : "Etiketler:"
+ categories_label : "Kategoriler:"
+ date_label : "Güncelleme tarihi:"
+ comments_label : "Yorum yapın"
+ comments_title : "Yorumlar"
+ more_label : "Daha fazlasını öğrenin"
+ related_label : "Bunlar ilginizi çekebilir:"
+ follow_label : "Takip et:"
+ feed_label : "RSS"
+ powered_by : "Emeği geçenler: "
+ website_label : "Web sayfası"
+ email_label : "E-posta"
+ recent_posts : "Son yazılar"
+ undefined_wpm : "_config.yml dosyasında tanımlanmamış words_per_minute parametresi"
+ comment_form_info : "Email adresiniz gösterilmeyecektir. Zorunlu alanlar işaretlenmiştir"
+ comment_form_comment_label : "Yorumunuz"
+ comment_form_md_info : "Markdown desteklenmektedir."
+ comment_form_name_label : "Adınız"
+ comment_form_email_label : "Email adresiniz"
+ comment_form_website_label : "Websiteniz (opsiyonel)"
+ comment_btn_submit : "Yorum Yap"
+ comment_btn_submitted : "Gönderildi"
+ comment_success_msg : "Yorumunuz için teşekkürler! Yorumunuz onaylandıktan sonra sitede gösterilecektir."
+ comment_error_msg : "Maalesef bir hata oluştu. Lütfen zorunlu olan tüm alanları doldurduğunuzdan emin olun ve sonrasında tekrar deneyin."
+ loading_label : "Yükleniyor..."
+ search_label_text :
+ search_algolia_no_results :
+tr-TR:
+ <<: *DEFAULT_TR
+
+# Portuguese
+# ----------
+pt: &DEFAULT_PT
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Página"
+ pagination_previous : "Anterior"
+ pagination_next : "Seguinte"
+ breadcrumb_home_label : "Início"
+ breadcrumb_separator : "/"
+ menu_label :
+ search_label :
+ toc_label : "Nesta Página"
+ ext_link_label : "Link Direto"
+ less_than : "menos de"
+ minute_read : "minutos de leitura"
+ share_on_label : "Partilhar no"
+ meta_label :
+ tags_label : "Etiquetas:"
+ categories_label : "Categorias:"
+ date_label : "Atualizado:"
+ comments_label : "Deixe um Comentário"
+ comments_title : "Comentários"
+ more_label : "Saber mais"
+ related_label : "Também pode gostar de"
+ follow_label : "Siga:"
+ feed_label : "Feed"
+ powered_by : "Feito com"
+ website_label : "Site"
+ email_label : "Email"
+ recent_posts : "Artigos Recentes"
+ undefined_wpm : "Parâmetro words_per_minute não definido em _config.yml"
+ comment_form_info : "O seu endereço email não será publicado. Os campos obrigatórios estão assinalados"
+ comment_form_comment_label : "Comentário"
+ comment_form_md_info : "Markdown é suportado."
+ comment_form_name_label : "Nome"
+ comment_form_email_label : "Endereço Email"
+ comment_form_website_label : "Site (opcional)"
+ comment_btn_submit : "Sumbeter Comentário"
+ comment_btn_submitted : "Submetido"
+ comment_success_msg : "Obrigado pelo seu comentário! Será visível no site logo que aprovado."
+ comment_error_msg : "Lamento, ocorreu um erro na sua submissão. Por favor verifique se todos os campos obrigatórios estão corretamente preenchidos e tente novamente."
+ loading_label : "A carregar..."
+ search_label_text :
+ search_algolia_no_results :
+pt-PT:
+ <<: *DEFAULT_PT
+# Brazilian Portuguese
+pt-BR:
+ skip_links : "Pular links"
+ skip_primary_nav : "Pular para navegação primária"
+ skip_content : "Pular para conteúdo"
+ skip_footer : "Pular para rodapé"
+ page : "Página"
+ pagination_previous : "Anterior"
+ pagination_next : "Próxima"
+ breadcrumb_home_label : "Início"
+ breadcrumb_separator : "/"
+ menu_label : "Chavear menu"
+ search_label : "Chavear busca"
+ toc_label : "Nesta página"
+ ext_link_label : "Link direto"
+ less_than : "menos de"
+ minute_read : "minuto(s) de leitura"
+ share_on_label : "Compartilhe"
+ meta_label :
+ tags_label : "Tags:"
+ categories_label : "Categorias:"
+ date_label : "Atualizado em:"
+ comments_label : "Deixe um comentário"
+ comments_title : "Comentários"
+ more_label : "Saiba mais"
+ related_label : "Talvez você também goste"
+ follow_label : "Siga:"
+ feed_label : "Feed"
+ powered_by : "Desenvolvido com"
+ website_label : "Site"
+ email_label : "E-mail"
+ recent_posts : "Publicações recentes"
+ undefined_wpm : "Parâmetro words_per_minute não definido em _config.yml"
+ comment_form_info : "Seu e-mail não será publicado. Os campos obrigatórios estão marcados"
+ comment_form_comment_label : "Comentário"
+ comment_form_md_info : "Você pode usar Markdown."
+ comment_form_name_label : "Nome"
+ comment_form_email_label : "E-mail"
+ comment_form_website_label : "Site (opcional)"
+ comment_btn_submit : "Enviar comentário"
+ comment_btn_submitted : "Enviado"
+ comment_success_msg : "Obrigado pelo seu comentário! Ele aparecerá no site assim que for aprovado."
+ comment_error_msg : "Desculpe, ocorreu um erro no envio. Verifique se todos os campos obrigatórios foram preenchidos e tente novamente."
+ loading_label : "Carregando..."
+ search_label_text : "Digite seu termo de busca..."
+ search_placeholder_text : "Digite seu termo de busca..."
+ search_algolia_no_results : "Nenhum resultado"
+ results_found : "Resultado(s) encontrado(s)"
+ back_to_top : "Voltar para o topo"
+
+# Italian
+# -------
+it: &DEFAULT_IT
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Pagina"
+ pagination_previous : "Precedente"
+ pagination_next : "Prossima"
+ breadcrumb_home_label : "Home"
+ breadcrumb_separator : "/"
+ menu_label :
+ search_label :
+ toc_label : "Indice della pagina"
+ ext_link_label : "Link"
+ less_than : "meno di"
+ minute_read : "minuto/i di lettura"
+ share_on_label : "Condividi"
+ meta_label :
+ tags_label : "Tags:"
+ categories_label : "Categorie:"
+ date_label : "Aggiornato:"
+ comments_label : "Scrivi un commento"
+ comments_title :
+ more_label : "Scopri di più"
+ related_label : "Potrebbe Piacerti Anche"
+ follow_label : "Segui:"
+ feed_label : "Feed"
+ powered_by : "Powered by"
+ website_label : "Website"
+ email_label : "Email"
+ recent_posts : "Articoli Recenti"
+ undefined_wpm : "Parametro words_per_minute non definito in _config.yml"
+ comment_form_info : "Il tuo indirizzo email non sarà pubblicato. Sono segnati i campi obbligatori"
+ comment_form_comment_label : "Commenta"
+ comment_form_md_info : "Il linguaggio Markdown è supportato"
+ comment_form_name_label : "Nome"
+ comment_form_email_label : "Indirizzo email"
+ comment_form_website_label : "Sito Web (opzionale)"
+ comment_btn_submit : "Invia commento"
+ comment_btn_submitted : "Inviato"
+ comment_success_msg : "Grazie per il tuo commento! Verrà visualizzato nel sito una volta che sarà approvato."
+ comment_error_msg : "C'è stato un errore con il tuo invio. Assicurati che tutti i campi richiesti siano stati completati e riprova."
+ loading_label : "Caricamento..."
+ search_label_text :
+ search_placeholder_text : "Inserisci termini di ricerca..."
+ search_algolia_no_results :
+ results_found : "Risultati"
+ back_to_top : "Vai su"
+it-IT:
+ <<: *DEFAULT_IT
+
+# Chinese (zh-CN Chinese - China)
+# --------------------------------
+zh: &DEFAULT_ZH_HANS
+ skip_links : "跳转链接"
+ skip_primary_nav : "转到主导航栏"
+ skip_content : "转到内容"
+ skip_footer : "转到底部"
+ page : "页面"
+ pagination_previous : "上一页"
+ pagination_next : "下一页"
+ breadcrumb_home_label : "首页"
+ breadcrumb_separator : "/"
+ menu_label : "切换菜单"
+ search_label : "切换搜索"
+ toc_label : "目录"
+ ext_link_label : "直接链接"
+ less_than : "少于"
+ minute_read : "分钟阅读"
+ share_on_label : "分享"
+ meta_label :
+ tags_label : "标签:"
+ categories_label : "分类:"
+ date_label : "更新时间:"
+ comments_label : "留下评论"
+ comments_title : "评论"
+ more_label : "了解更多"
+ related_label : "猜您还喜欢"
+ follow_label : "关注:"
+ feed_label : "Feed"
+ powered_by : "技术来自于"
+ website_label : "网站"
+ email_label : "电子邮箱"
+ recent_posts : "最新文章"
+ undefined_wpm : "_config.yml 配置中 words_per_minute 字段未定义"
+ comment_form_info : "您的电子邮箱地址并不会被展示。请填写标记为必须的字段。"
+ comment_form_comment_label : "评论"
+ comment_form_md_info : "支持 Markdown 语法。"
+ comment_form_name_label : "姓名"
+ comment_form_email_label : "电子邮箱"
+ comment_form_website_label : "网站(可选)"
+ comment_btn_submit : "提交评论"
+ comment_btn_submitted : "已提交"
+ comment_success_msg : "感谢您的评论!被批准后它会立即在此站点展示。"
+ comment_error_msg : "很抱歉,您的提交存在错误。请确保所有必填字段都已填写正确,然后再试一次。"
+ loading_label : "正在加载..."
+ search_label_text : "输入您要搜索的关键词..."
+ search_placeholder_text : "输入您要搜索的关键词..."
+ search_algolia_no_results : "无结果"
+ results_found : "条记录匹配"
+ back_to_top : "返回顶部"
+zh-CN:
+ <<: *DEFAULT_ZH_HANS
+zh-SG:
+ <<: *DEFAULT_ZH_HANS
+# Taiwan (Traditional Chinese)
+zh-TW: &DEFAULT_ZH_HANT
+ skip_links :
+ skip_primary_nav : "轉至主導航欄"
+ skip_content : "轉至内容"
+ skip_footer : "轉至頁脚"
+ page : "頁面"
+ pagination_previous : "前一頁"
+ pagination_next : "後一頁"
+ breadcrumb_home_label : "首頁"
+ breadcrumb_separator : "/"
+ menu_label : "切換選單"
+ search_label : "切換搜索"
+ toc_label : "本頁"
+ ext_link_label : "外部連結"
+ less_than : "少於"
+ minute_read : "分鐘閱讀"
+ share_on_label : "分享到"
+ meta_label :
+ tags_label : "標籤:"
+ categories_label : "分類:"
+ date_label : "更新時間:"
+ comments_label : "留言"
+ comments_title : "留言內容"
+ more_label : "了解更多"
+ related_label : "猜您有與趣"
+ follow_label : "追蹤:"
+ feed_label : "RSS Feed"
+ powered_by : "Powered by"
+ website_label : "網站"
+ email_label : "電子信箱"
+ recent_posts : "最新文章"
+ undefined_wpm : "_config.yml 中未定義 words_per_minute"
+ comment_form_info : "您的電子信箱不會被公開. 必填部份已標記"
+ comment_form_comment_label : "留言內容"
+ comment_form_md_info : "支援 Markdown 語法。"
+ comment_form_name_label : "名字"
+ comment_form_email_label : "電子信箱帳號"
+ comment_form_website_label : "網頁 (可選填)"
+ comment_btn_submit : "送出留言"
+ comment_btn_submitted : "已送出"
+ comment_success_msg : "感謝您的留言! 審核後將會顯示在站上。"
+ comment_error_msg : "抱歉,部份資料輸入有問題。請確認資料填寫正確後再試一次。"
+ loading_label : "載入中..."
+ search_label_text : "輸入您要搜索的關鍵詞..."
+ search_placeholder_text : "輸入您要搜索的關鍵詞..."
+ search_algolia_no_results : "沒有結果"
+ results_found : "條匹配的記錄"
+ back_to_top : "回到頂部"
+zh-HK:
+ <<: *DEFAULT_ZH_HANT
+
+# German / Deutsch
+# ----------------
+de: &DEFAULT_DE
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Seite"
+ pagination_previous : "Vorherige"
+ pagination_next : "Nächste"
+ breadcrumb_home_label : "Start"
+ breadcrumb_separator : "/"
+ menu_label : "Menü ein-/ausschalten"
+ search_label :
+ toc_label : "Auf dieser Seite"
+ ext_link_label : "Direkter Link"
+ less_than : "weniger als"
+ minute_read : "Minuten zum Lesen"
+ share_on_label : "Teilen auf"
+ meta_label :
+ tags_label : "Tags:"
+ categories_label : "Kategorien:"
+ date_label : "Aktualisiert:"
+ comments_label : "Hinterlassen Sie einen Kommentar"
+ comments_title : "Kommentare"
+ more_label : "Mehr anzeigen"
+ related_label : "Ihnen gefällt vielleicht auch"
+ follow_label : "Folgen:"
+ feed_label : "Feed"
+ powered_by : "Möglich durch"
+ website_label : "Webseite"
+ email_label : "E-Mail"
+ recent_posts : "Aktuelle Beiträge"
+ undefined_wpm : "Undefinierter Parameter words_per_minute in _config.yml"
+ comment_form_info : "Ihre E-Mail Adresse wird nicht veröffentlicht. Benötigte Felder sind markiert"
+ comment_form_comment_label : "Kommentar"
+ comment_form_md_info : "Markdown wird unterstützt."
+ comment_form_name_label : "Name"
+ comment_form_email_label : "E-Mail-Addresse"
+ comment_form_website_label : "Webseite (optional)"
+ comment_btn_submit : "Kommentar absenden"
+ comment_btn_submitted : "Versendet"
+ comment_success_msg : "Danke für Ihren Kommentar! Er wird auf der Seite angezeigt, nachdem er geprüft wurde."
+ comment_error_msg : "Entschuldigung, es gab einen Fehler. Bitte füllen Sie alle benötigten Felder aus und versuchen Sie es erneut."
+ loading_label : "Lade..."
+ search_label_text :
+ search_placeholder_text : "Suchbegriff eingeben..."
+ search_algolia_no_results :
+ results_found : "Ergebnis(se) gefunden"
+de-DE:
+ <<: *DEFAULT_DE
+de-AT:
+ <<: *DEFAULT_DE
+de-CH:
+ <<: *DEFAULT_DE
+de-BE:
+ <<: *DEFAULT_DE
+de-LI:
+ <<: *DEFAULT_DE
+de-LU:
+ <<: *DEFAULT_DE
+
+# Nepali (Nepal)
+# --------------
+ne: &DEFAULT_NE
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "पृष्ठ"
+ pagination_previous : "अघिल्लो"
+ pagination_next : "अर्को"
+ breadcrumb_home_label : "गृह"
+ breadcrumb_separator : "/"
+ menu_label : "टगल मेनु"
+ search_label :
+ toc_label : "यो पृष्ठमा"
+ ext_link_label : "सिधा सम्पर्क"
+ less_than : "कम्तिमा"
+ minute_read : "मिनेट पढ्नुहोस्"
+ share_on_label : "शेयर गर्नुहोस्"
+ meta_label :
+ tags_label : "ट्यागहरू:"
+ categories_label : "वर्गहरु:"
+ date_label : "अद्यावधिक:"
+ comments_label : "टिप्पणी दिनुहोस्"
+ comments_title : "टिप्पणीहरू"
+ more_label : "अझै सिक्नुहोस्"
+ related_label : "तपाईं रुचाउन सक्नुहुन्छ "
+ follow_label : "पछ्याउनुहोस्:"
+ feed_label : "फिड"
+ powered_by : "Powered by"
+ website_label : "वेबसाइट"
+ email_label : "इमेल"
+ recent_posts : "ताजा लेखहरु"
+ undefined_wpm : "अपरिभाषित प्यारामिटर शब्दहरू_प्रति_मिनेट at _config.yml"
+ comment_form_info : "तपाइँको इमेल ठेगाना प्रकाशित गरिने छैन।आवश्यक जानकारीहरुमा चिन्ह लगाइको छ"
+ comment_form_comment_label : "टिप्पणी"
+ comment_form_md_info : "मार्कडाउन समर्थित छ।"
+ comment_form_name_label : "नाम"
+ comment_form_email_label : "इमेल ठेगाना"
+ comment_form_website_label : "वेबसाइट (वैकल्पिक)"
+ comment_btn_submit : "टिप्पणी दिनुहोस् "
+ comment_btn_submitted : "टिप्पणी भयो"
+ comment_success_msg : "तपाईंको टिप्पणीको लागि धन्यवाद! एक पटक यो अनुमोदन गरेपछी यो साइटमा देखाउनेछ।"
+ comment_error_msg : "माफ गर्नुहोस्, तपाईंको टिप्पणी त्रुटि थियो।सबै आवश्यक जानकारीहरु पूरा गरिएको छ भने निश्चित गर्नुहोस् र फेरि प्रयास गर्नुहोस्।"
+ loading_label : "लोड हुँदैछ ..."
+ search_label_text :
+ search_algolia_no_results :
+ne-NP:
+ <<: *DEFAULT_NE
+
+# Korean
+# ------
+ko: &DEFAULT_KO
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "페이지"
+ pagination_previous : "이전"
+ pagination_next : "다음"
+ breadcrumb_home_label : "Home"
+ breadcrumb_separator : "/"
+ menu_label : "토글 메뉴"
+ search_label :
+ toc_label : "On This Page"
+ ext_link_label : "직접 링크"
+ less_than : "최대"
+ minute_read : "분 소요"
+ share_on_label : "공유하기"
+ meta_label :
+ tags_label : "태그:"
+ categories_label : "카테고리:"
+ date_label : "업데이트:"
+ comments_label : "댓글남기기"
+ comments_title : "댓글"
+ more_label : "더 보기"
+ related_label : "참고"
+ follow_label : "팔로우:"
+ feed_label : "피드"
+ powered_by : "Powered by"
+ website_label : "웹사이트"
+ email_label : "이메일"
+ recent_posts : "최근 포스트"
+ undefined_wpm : "Undefined parameter words_per_minute at _config.yml"
+ comment_form_info : "이메일은 공개되지 않습니다. 작성 필요 필드:"
+ comment_form_comment_label : "댓글"
+ comment_form_md_info : "마크다운을 지원합니다."
+ comment_form_name_label : "이름"
+ comment_form_email_label : "이메일"
+ comment_form_website_label : "웹사이트(선택사항)"
+ comment_btn_submit : "댓글 등록"
+ comment_btn_submitted : "등록됨"
+ comment_success_msg : "감사합니다! 댓글이 머지된 후 확인하실 수 있습니다."
+ comment_error_msg : "댓글 등록에 문제가 있습니다. 필요 필드를 작성했는지 확인하고 다시 시도하세요."
+ loading_label : "로딩중..."
+ search_label_text :
+ search_placeholder_text : "검색어를 입력하세요..."
+ search_algolia_no_results :
+ results_found : "개 결과 발견"
+ back_to_top : "맨 위로 이동"
+ko-KR:
+ <<: *DEFAULT_KO
+
+# Russian / Русский
+# -----------------
+ru: &DEFAULT_RU
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Страница"
+ pagination_previous : "Предыдущая"
+ pagination_next : "Следующая"
+ breadcrumb_home_label : "Главная"
+ breadcrumb_separator : "/"
+ menu_label : "Выпадающее меню"
+ search_label :
+ toc_label : "Содержание"
+ ext_link_label : "Прямая ссылка"
+ less_than : "менее"
+ minute_read : "мин на чтение"
+ share_on_label : "Поделиться"
+ meta_label :
+ tags_label : "Метки:"
+ categories_label : "Разделы:"
+ date_label : "Дата изменения:"
+ comments_label : "Оставить комментарий"
+ comments_title : "Комментарии"
+ more_label : "Читать далее"
+ related_label : "Вам также может понравиться"
+ follow_label : "Связаться со мной:"
+ feed_label : "RSS-лента"
+ powered_by : "Сайт работает на"
+ website_label : "Сайт"
+ email_label : "Электронная почта"
+ recent_posts : "Свежие записи"
+ undefined_wpm : "Не определён параметр words_per_minute в _config.yml"
+ comment_form_info : "Ваш адрес электронной почты не будет опубликован. Обязательные поля помечены"
+ comment_form_comment_label : "Комментарий"
+ comment_form_md_info : "Поддерживается синтаксис Markdown."
+ comment_form_name_label : "Имя"
+ comment_form_email_label : "Электронная почта"
+ comment_form_website_label : "Ссылка на сайт (необязательно)"
+ comment_btn_submit : "Оставить комментарий"
+ comment_btn_submitted : "Отправлено"
+ comment_success_msg : "Спасибо за Ваш комментарий! Он будет опубликован на сайте после проверки."
+ comment_error_msg : "К сожалению, произошла ошибка с отправкой комментария. Пожалуйста, убедитесь, что все обязательные поля заполнены и попытайтесь снова."
+ loading_label : "Отправка..."
+ search_label_text :
+ search_placeholder_text : "Введите поисковый запрос..."
+ search_algolia_no_results :
+ results_found : "Найдено"
+ru-RU:
+ <<: *DEFAULT_RU
+
+# Lithuanian / Lietuviškai
+# ------------------------
+lt: &DEFAULT_LT
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Puslapis"
+ pagination_previous : "Ankstesnis"
+ pagination_next : "Sekantis"
+ breadcrumb_home_label : "Pagrindinis"
+ breadcrumb_separator : "/"
+ menu_label : "Meniu rodymas"
+ search_label :
+ toc_label : "Turinys"
+ ext_link_label : "Tiesioginė nuoroda"
+ less_than : "mažiau nei"
+ minute_read : "min. skaitymo"
+ share_on_label : "Pasidalinti"
+ meta_label :
+ tags_label : "Žymės:"
+ categories_label : "Kategorijos:"
+ date_label : "Atnaujinta:"
+ comments_label : "Palikti komentarą"
+ comments_title : "Komentaras"
+ more_label : "Skaityti daugiau"
+ related_label : "Taip pat turėtų patikti"
+ follow_label : "Sekti:"
+ feed_label : "Šaltinis"
+ powered_by : "Sukurta su"
+ website_label : "Tinklapis"
+ email_label : "El. paštas"
+ recent_posts : "Naujausi įrašai"
+ undefined_wpm : "Nedeklaruotas parametras words_per_minute faile _config.yml"
+ comment_form_info : "El. pašto adresas nebus viešinamas. Būtini laukai pažymėti"
+ comment_form_comment_label : "Komentaras"
+ comment_form_md_info : "Markdown palaikomas."
+ comment_form_name_label : "Vardas"
+ comment_form_email_label : "El. paštas"
+ comment_form_website_label : "Tinklapis (nebūtina)"
+ comment_btn_submit : "Komentuoti"
+ comment_btn_submitted : "Įrašytas"
+ comment_success_msg : "Ačiū už komentarą! Jis bus parodytas kai bus patvirtintas."
+ comment_error_msg : "Atleiskite, įvyko netikėta klaida įrašant komentarą. Pasitikrinkite ar užpildėte visus būtinus laukus ir pamėginkite dar kartą."
+ loading_label : "Kraunama..."
+ search_label_text :
+ search_algolia_no_results :
+lt-LT:
+ <<: *DEFAULT_LT
+
+# Greek
+# -----
+gr: &DEFAULT_GR
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Σελίδα"
+ pagination_previous : "Προηγούμενo"
+ pagination_next : "Επόμενo"
+ breadcrumb_home_label : "Αρχική"
+ breadcrumb_separator : "/"
+ menu_label : "Μενού"
+ search_label :
+ toc_label : "Περιεχόμενα"
+ ext_link_label : "Εξωτερικός Σύνδεσμος"
+ less_than : "Λιγότερο από"
+ minute_read : "λεπτά ανάγνωσης"
+ share_on_label : "Μοιραστείτε το"
+ meta_label :
+ tags_label : "Ετικέτες:"
+ categories_label : "Κατηγορίες:"
+ date_label : "Ενημερώθηκε:"
+ comments_label : "Αφήστε ένα σχόλιο"
+ comments_title : "Σχόλια"
+ more_label : "Διάβαστε περισσότερα"
+ related_label : "Σχετικές αναρτήσεις"
+ follow_label : "Ακολουθήστε:"
+ feed_label : "RSS Feed"
+ powered_by : "Δημιουργήθηκε με"
+ website_label : "Ιστοσελίδα"
+ email_label : "Email"
+ recent_posts : "Τελευταίες αναρτήσεις"
+ undefined_wpm : "Δεν έχει οριστεί η παράμετρος words_per_minute στο αρχείο _config.yml"
+ comment_form_info : "Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα απαιτούμενα πεδία εμφανίζονται με αστερίσκο"
+ comment_form_comment_label : "Σχόλιο"
+ comment_form_md_info : "Το πεδίο υποστηρίζει Markdown."
+ comment_form_name_label : "Όνομα"
+ comment_form_email_label : "Διεύθυνση email"
+ comment_form_website_label : "Ιστοσελίδα (προαιρετικό)"
+ comment_btn_submit : "Υπόβαλε ένα σχόλιο"
+ comment_btn_submitted : "Έχει υποβληθεί"
+ comment_success_msg : "Ευχαριστούμε για το σχόλιό σας! Θα εμφανιστεί στην ιστοσελίδα αφού εγκριθεί."
+ comment_error_msg : "Λυπούμαστε, παρουσιάστηκε σφάλμα με την υποβολή σας. Παρακαλούμε βεβαιωθείτε ότι έχετε όλα τα απαιτούμενα πεδία συμπληρωμένα και δοκιμάστε ξανά."
+ loading_label : "Φόρτωση..."
+ search_label_text :
+ search_placeholder_text : "Εισάγετε όρο αναζήτησης..."
+ search_algolia_no_results :
+ results_found : "Αποτελέσματα"
+gr-GR:
+ <<: *DEFAULT_GR
+
+# Swedish
+# -------
+sv: &DEFAULT_SV
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Sidan"
+ pagination_previous : "Föregående"
+ pagination_next : "Nästa"
+ breadcrumb_home_label : "Hem"
+ breadcrumb_separator : "/"
+ menu_label : "Växla menyläge"
+ search_label : "Växla sökläge"
+ toc_label : "På denna sida"
+ ext_link_label : "Direkt länk"
+ less_than : "mindre än"
+ minute_read : "minut läsning"
+ share_on_label : "Dela på"
+ meta_label :
+ tags_label : "Taggar:"
+ categories_label : "Kategorier:"
+ date_label : "Uppdaterades:"
+ comments_label : "Lämna en kommentar"
+ comments_title : "Kommentarer"
+ more_label : "Lär dig mer"
+ related_label : "Du kanske vill även läsa:"
+ follow_label : "Följ:"
+ feed_label : "Flöde"
+ powered_by : "Framställd med"
+ website_label : "Webbsida"
+ email_label : "E-post"
+ recent_posts : "Senaste inlägg"
+ undefined_wpm : "Odefinerade parametrar words_per_minute i _config.yml"
+ comment_form_info : "Din e-post adress kommer inte att publiceras. Obligatoriska fält är markerade"
+ comment_form_comment_label : "Kommentar"
+ comment_form_md_info : "Stöd för Markdown finns."
+ comment_form_name_label : "Namn"
+ comment_form_email_label : "E-post adress"
+ comment_form_website_label : "Webdsida (valfritt)"
+ comment_btn_submit : "Skicka en kommentar"
+ comment_btn_submitted : "Kommentaren har tagits emot"
+ comment_success_msg : "Tack för din kommentar! Den kommer att visas på sidan så fort den har godkännts."
+ comment_error_msg : "Tyvärr det har blivit något fel i ett av fälten, se till att du fyllt i alla obligatoriska fält och försök igen."
+ loading_label : "Laddar..."
+ search_label_text :
+ search_placeholder_text : "Fyll i sökterm..."
+ search_algolia_no_results :
+ results_found : "Resultat funna"
+ back_to_top : "Tillbaka till toppen"
+sv-SE:
+ <<: *DEFAULT_SV
+sv-FI:
+ <<: *DEFAULT_SV
+
+# Dutch
+# -----
+nl: &DEFAULT_NL
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Pagina"
+ pagination_previous : "Vorige"
+ pagination_next : "Volgende"
+ breadcrumb_home_label : "Home"
+ breadcrumb_separator : "/"
+ menu_label : "Wissel Menu"
+ search_label :
+ toc_label : "Op deze pagina"
+ ext_link_label : "Directe Link"
+ less_than : "minder dan"
+ minute_read : "minuut gelezen"
+ share_on_label : "Deel op"
+ meta_label :
+ tags_label : "Labels:"
+ categories_label : "Categorieën:"
+ date_label : "Bijgewerkt:"
+ comments_label : "Laat een reactie achter"
+ comments_title : "Commentaren"
+ more_label : "Meer informatie"
+ related_label : "Bekijk ook eens"
+ follow_label : "Volg:"
+ feed_label : "Feed"
+ powered_by : "Aangedreven door"
+ website_label : "Website"
+ email_label : "Email"
+ recent_posts : "Recente berichten"
+ undefined_wpm : "Niet gedefinieerde parameter words_per_minute bij _config.yml"
+ comment_form_info : "Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd"
+ comment_form_comment_label : "Commentaar"
+ comment_form_md_info : "Markdown wordt ondersteund."
+ comment_form_name_label : "Naam"
+ comment_form_email_label : "E-mailadres"
+ comment_form_website_label : "Website (optioneel)"
+ comment_btn_submit : "Commentaar toevoegen"
+ comment_btn_submitted : "Toegevoegd"
+ comment_success_msg : "Bedankt voor uw reactie! Het zal op de site worden weergegeven zodra het is goedgekeurd."
+ comment_error_msg : "Sorry, er is een fout opgetreden bij uw inzending. Zorg ervoor dat alle vereiste velden zijn voltooid en probeer het opnieuw."
+ loading_label : "Laden..."
+ search_label_text : "Geef uw zoekterm in..."
+ search_placeholder_text : "Geef uw zoekterm in..."
+ search_algolia_no_results :
+ results_found : "Resultaat gevonden"
+ back_to_top : "Terug naar boven"
+nl-BE:
+ <<: *DEFAULT_NL
+nl-NL:
+ <<: *DEFAULT_NL
+
+# Indonesian
+# ----------
+id: &DEFAULT_ID
+ skip_links :
+ skip_primary_nav : "Loncat ke navigasi"
+ skip_content : "Loncat ke konten"
+ skip_footer : "Loncat ke footer"
+ page : "Halaman"
+ pagination_previous : "Sebelumnya"
+ pagination_next : "Selanjutnya"
+ breadcrumb_home_label : "Beranda"
+ breadcrumb_separator : "/"
+ menu_label : "Menu"
+ search_label : "Pencarian"
+ toc_label : "Pada Halaman Ini"
+ ext_link_label : "Link langsung"
+ less_than : "Kurang dari"
+ minute_read : "menit baca"
+ share_on_label : "Bagikan di"
+ meta_label :
+ tags_label : "Label:"
+ categories_label : "Kategori:"
+ date_label : "Diupdate:"
+ comments_label : "Tinggalkan komentar"
+ comments_title : "Komentar"
+ more_label : "Pelajari lagi"
+ related_label : "Anda mungkin suka"
+ follow_label : "Ikuti:"
+ feed_label : "Feed"
+ powered_by : "Didukung oleh"
+ website_label : "Website"
+ email_label : "Email"
+ recent_posts : "Post terbaru"
+ undefined_wpm : "Parameter terdeskripsi words_per_minute di _config.yml"
+ comment_form_info : "Email Anda tidak akan dipublish. Kolom yang diperlukan ditandai dengan tanda "
+ comment_form_comment_label : "Komentar"
+ comment_form_md_info : "Markdown didukung."
+ comment_form_name_label : "Nama"
+ comment_form_email_label : "Alamat email"
+ comment_form_website_label : "Website (opsional)"
+ comment_btn_submit : "Kirim Komentar"
+ comment_btn_submitted : "Telah dikirim"
+ comment_success_msg : "Terimakasih atas komentar Anda! Komentar akan tampil setelah disetujui."
+ comment_error_msg : "Maaf, ada kesalahan pada komentar Anda. Pastikan seluruh kolom sudah dilengkapi dan coba kembali."
+ loading_label : "Sedang memuat..."
+ search_label_text : "Masukkan kata kunci pencarian..."
+ search_placeholder_text : "Masukkan kata kunci pencarian..."
+ search_algolia_no_results : "Tidak ada hasil"
+ results_found : "Hasil pencarian ditemukan"
+ back_to_top : "Kembali ke awal"
+id-ID:
+ <<: *DEFAULT_ID
+
+# Vietnamese
+# ----------
+vi: &DEFAULT_VI
+ skip_links : "Đường dẫn tắt"
+ skip_primary_nav : "Nhảy tới thanh điều hướng"
+ skip_content : "Nhảy tới nội dung"
+ skip_footer : "Nhảy tới chân trang"
+ page : "Trang"
+ pagination_previous : "Trước"
+ pagination_next : "Kế tiếp"
+ breadcrumb_home_label : "Trang chủ"
+ breadcrumb_separator : "/"
+ menu_label : "Menu"
+ search_label : "Tìm kiếm"
+ toc_label : "Mục lục"
+ ext_link_label : "Đường dẫn trực tiếp"
+ less_than : "chỉ cần"
+ minute_read : "phút để đọc"
+ share_on_label : "Chia sẻ tại"
+ meta_label :
+ tags_label : "Thẻ:"
+ categories_label : "Danh mục:"
+ date_label : "Ngày cập nhật:"
+ comments_label : "Để lại bình luận"
+ comments_title : "Bình luận"
+ more_label : "Mở rộng"
+ related_label : "Có thể bạn cũng thích"
+ follow_label : "Theo dõi:"
+ feed_label : "Feed"
+ powered_by : "Xây dựng trên nền tảng"
+ website_label : "Website"
+ email_label : "Email"
+ recent_posts : "Bài viết mới"
+ undefined_wpm : "Chưa định nghĩa thông số words_per_minute tại _config.yml"
+ comment_form_info : "Email của bạn sẽ được giữ bí mật. Các phần bắt buộc được đánh dấu"
+ comment_form_comment_label : "Bình luận"
+ comment_form_md_info : "Hỗ trợ Markdown."
+ comment_form_name_label : "Tên"
+ comment_form_email_label : "Địa chỉ email"
+ comment_form_website_label : "Website (không bắt buộc)"
+ comment_btn_submit : "Gửi bình luận"
+ comment_btn_submitted : "Đã được gửi"
+ comment_success_msg : "Cảm ơn bạn đã bình luận! Bình luận sẽ xuất hiện sau khi được duyệt."
+ comment_error_msg : "Rất tiếc, có lỗi trong việc gửi bình luận. Hãy đảm bảo toàn bộ các phần bắt buộc đã được điền đầy đủ và thử lại."
+ loading_label : "Đang tải..."
+ search_label_text : "Nhập từ khóa cần tìm..."
+ search_placeholder_text : "Nhập từ khóa cần tìm..."
+ search_algolia_no_results : "Không tìm thấy kết quả nào"
+ results_found : "Kết quả tìm được"
+ back_to_top : "Lên đầu trang"
+vi-VN:
+ <<: *DEFAULT_VI
+
+# Danish
+# ------
+da: &DEFAULT_DA
+ skip_links :
+ skip_primary_nav : "Gå til hovedmenuen"
+ skip_content : "Gå til indholdet"
+ skip_footer : "Gå til sidefoden"
+ page : "Side"
+ pagination_previous : "Forrige"
+ pagination_next : "Næste"
+ breadcrumb_home_label : "Forside"
+ breadcrumb_separator : "/"
+ menu_label : "Vis/skjul menu"
+ search_label : "Søgning til/fra"
+ toc_label : "På denne side"
+ ext_link_label : "Direkte link"
+ less_than : "mindre end"
+ minute_read : "minutters læsning"
+ share_on_label : "Del på"
+ meta_label :
+ tags_label : "Nøgleord:"
+ categories_label : "Kategorier:"
+ date_label : "Opdateret:"
+ comments_label : "Skriv en kommentar"
+ comments_title : "Kommentarer"
+ more_label : "Lær mere"
+ related_label : "Måske kan du også lide"
+ follow_label : "Følg:"
+ feed_label : "Feed"
+ powered_by : "Drives af"
+ website_label : "Website"
+ email_label : "E-mail"
+ recent_posts : "Seneste indlæg"
+ undefined_wpm : "Parameteren words_per_minute er ikke defineret i _config.yml"
+ comment_form_info : "Din e-mail bliver ikke offentliggjort. Obligatoriske felter er markeret"
+ comment_form_comment_label : "Kommentar"
+ comment_form_md_info : "Markdown er understøttet."
+ comment_form_name_label : "Navn"
+ comment_form_email_label : "E-mail"
+ comment_form_website_label : "Website (frivillig)"
+ comment_btn_submit : "Send kommentar"
+ comment_btn_submitted : "Sendt"
+ comment_success_msg : "Tak for din kommentar! Den bliver vist på siden, så snart den er godkendt."
+ comment_error_msg : "Desværre skete der en fejl. Prøv igen, mens du sørger for at alle obligatoriske felter er udfyldt."
+ loading_label : "Indlæser..."
+ search_label_text : "Hvad leder du efter..."
+ search_placeholder_text : "Hvad leder du efter..."
+ search_algolia_no_results : "Ingen resultater"
+ results_found : "Resultat(er) fundet"
+ back_to_top : "Tilbage til toppen"
+da-DK:
+ <<: *DEFAULT_DA
+
+# Polish
+# ------
+pl: &DEFAULT_PL
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Strona"
+ pagination_previous : "Poprzednia"
+ pagination_next : "Następna"
+ breadcrumb_home_label : "Strona główna"
+ breadcrumb_separator : "/"
+ menu_label : "Przełącz menu"
+ search_label :
+ toc_label : "Spis treści"
+ ext_link_label : "Link bezpośredni"
+ less_than : "mniej niż"
+ minute_read : "minut(y)"
+ share_on_label : "Udostępnij"
+ meta_label :
+ tags_label : "Tagi:"
+ categories_label : "Kategorie:"
+ date_label : "Ostatnia aktualizacja:"
+ comments_label : "Zostaw komentarz"
+ comments_title : "Komentarze"
+ more_label : "Dowiedz się więcej"
+ related_label : "Także może Ci się spodobać"
+ follow_label : "Śledź:"
+ feed_label : "Feed"
+ powered_by : "Powstało dzięki"
+ website_label : "Strona"
+ email_label : "Email"
+ recent_posts : "Najnowsze wpisy"
+ undefined_wpm : "Parametr words_per_minute nie został zdefiniowany w _config.yml."
+ comment_form_info : "Twój adres email nie będzie udostępiony. Wymagane pola są oznaczone"
+ comment_form_comment_label : "Skomentuj"
+ comment_form_md_info : "Markdown jest wspierany"
+ comment_form_name_label : "Imię"
+ comment_form_email_label : "Adres email"
+ comment_form_website_label : "Strona www (opcjonalna)"
+ comment_btn_submit : "Skomentuj"
+ comment_btn_submitted : "Komentarz dodany"
+ comment_success_msg : "Dziękuję za Twój komentarz! Zostanie dodany po akceptacji."
+ comment_error_msg : "Niestety wystąpił błąd. Proszę upewnij się, że wszystkie wymagane pola zostały wypełnione i spróbuj ponownie."
+ loading_label : "Trwa ładowanie strony..."
+ search_label_text :
+ search_algolia_no_results : "Brak wyników"
+pl-PL:
+ <<: *DEFAULT_PL
+
+# Japanese
+# --------
+ja: &DEFAULT_JA
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "ページ"
+ pagination_previous : "前へ"
+ pagination_next : "次へ"
+ breadcrumb_home_label : "ホーム"
+ breadcrumb_separator : "/"
+ menu_label : "メニュー"
+ search_label :
+ toc_label : "目次"
+ ext_link_label : "リンク"
+ less_than :
+ minute_read :
+ share_on_label : "共有"
+ meta_label :
+ tags_label : "タグ:"
+ categories_label : "カテゴリー:"
+ date_label : "更新日時:"
+ comments_label : "コメントする"
+ comments_title : "コメント"
+ more_label : "さらに詳しく"
+ related_label : "関連記事"
+ follow_label : "フォロー"
+ feed_label :
+ powered_by :
+ website_label :
+ email_label :
+ recent_posts : "最近の投稿"
+ undefined_wpm : "パラメータ words_per_minute が _config.yml で定義されていません"
+ comment_form_info : "メールアドレスが公開されることはありません。次の印のある項目は必ず入力してください:"
+ comment_form_comment_label : "コメント"
+ comment_form_md_info : "Markdown を使用できます"
+ comment_form_name_label : "名前"
+ comment_form_email_label : "メールアドレス"
+ comment_form_website_label : "URL (任意)"
+ comment_btn_submit : "コメントを送信する"
+ comment_btn_submitted : "送信しました"
+ comment_success_msg : "コメントありがとうございます! コメントは承認されるとページに表示されます。"
+ comment_error_msg : "送信エラーです。必須項目がすべて入力されていることを確認して再送信してください。"
+ loading_label : "読み込み中..."
+ search_label_text :
+ search_placeholder_text : "検索キーワードを入力してください..."
+ search_algolia_no_results :
+ results_found : "件"
+ja-JP:
+ <<: *DEFAULT_JA
+
+# Slovak
+# -----------------
+sk: &DEFAULT_SK
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Stránka"
+ pagination_previous : "Predošlá"
+ pagination_next : "Ďalšia"
+ breadcrumb_home_label : "Domov"
+ breadcrumb_separator : "/"
+ menu_label : "Menu"
+ search_label :
+ toc_label : "Obsah"
+ ext_link_label : "Priamy odkaz"
+ less_than : "menej ako"
+ minute_read : "minút"
+ share_on_label : "Zdieľaj na"
+ meta_label :
+ tags_label : "Tagy:"
+ categories_label : "Kategórie:"
+ date_label : "Aktualizované:"
+ comments_label : "Zanechaj odkaz"
+ comments_title : "Komentáre"
+ more_label : "Dozvedieť sa viac"
+ related_label : "Podobné články"
+ follow_label : "Sleduj:"
+ feed_label : "Zoznam"
+ powered_by : "Stránka vytvorená pomocou"
+ website_label : "Web stránka"
+ email_label : "Email"
+ recent_posts : "Najnovšie príspevky"
+ undefined_wpm : "Nedefinovaný parameter words_per_minute v _config.yml"
+ comment_form_info : "Tvoja emailová adresa nebude publikovaná. Požadované polia sú označené"
+ comment_form_comment_label : "Komentár"
+ comment_form_md_info : "Markdown je podporovaný."
+ comment_form_name_label : "Meno"
+ comment_form_email_label : "Emailová adresa"
+ comment_form_website_label : "Webstránka (voliteľné)"
+ comment_btn_submit : "Vlož komentár"
+ comment_btn_submitted : "Vložený"
+ comment_success_msg : "Ďakujem za tvoj komentár! Po schválení bude zobrazený na stránke."
+ comment_error_msg : "Prepáč, pri ukladaní nastala chyba. Ubezpeč sa prosím, že si vyplnil všetky požadované polia a skús znova."
+ loading_label : "Načítava sa..."
+ search_label_text :
+ search_placeholder_text : "Zadaj hľadaný výraz..."
+ search_algolia_no_results :
+ results_found : "Nájdených výsledkov"
+ back_to_top : "Na začiatok stránky"
+sk-SK:
+ <<: *DEFAULT_SK
+
+# Hungarian
+# -----------------
+hu: &DEFAULT_HU
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Oldal"
+ pagination_previous : "Előző"
+ pagination_next : "Következő"
+ breadcrumb_home_label : "Kezdőlap"
+ breadcrumb_separator : "/"
+ menu_label : "Menü nyit/zár"
+ search_label :
+ toc_label : "Ezen az oldalon"
+ ext_link_label : "Közvetlen Link"
+ less_than : "kevesebb mint"
+ minute_read : "eltöltött percek"
+ share_on_label : "Megosztás"
+ meta_label :
+ tags_label : "Tagek:"
+ categories_label : "Kategóriák:"
+ date_label : "Frissítve:"
+ comments_label : "Szólj hozzá!"
+ comments_title : "Hozzászólások"
+ more_label : "Tovább"
+ related_label : "Ajánlások"
+ follow_label : "Követés:"
+ feed_label : "Folyam"
+ powered_by : "Powered by"
+ website_label : "Honlap"
+ email_label : "Email"
+ recent_posts : "Friss cikkek"
+ undefined_wpm : "Ismeretlen paraméter words_per_minute : _config.yml"
+ comment_form_info : "Az e-mail címed nem lesz publikus. A csillagozott mezők kitöltése kötelező"
+ comment_form_comment_label : "Hozzászólás"
+ comment_form_md_info : "Támogatott formázási mód: Markdown"
+ comment_form_name_label : "Név"
+ comment_form_email_label : "Email cím"
+ comment_form_website_label : "Honlap (nem kötelező):"
+ comment_btn_submit : "Hozzászólás elküldése"
+ comment_btn_submitted : "Hozzászólás elküldve"
+ comment_success_msg : "Köszönjük a Hozzászólást! A Hozzászólások csak előzetes moderáció után lesznek publikusak."
+ comment_error_msg : "Hoppá, hiba történt a beküldés közben. Kérlek ellenőrizd hogy minden kötelező mező ki van-e töltve."
+ loading_label : "Betöltés..."
+ search_label_text :
+ search_placeholder_text : "Keresendő szöveg..."
+ search_algolia_no_results :
+ results_found : "Találatok:"
+ back_to_top : "Oldal tetejére"
+hu-HU:
+ <<: *DEFAULT_HU
+
+# Romanian
+# -----------------
+ro: &DEFAULT_RO
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "Pagina"
+ pagination_previous : "Anterior"
+ pagination_next : "Următor"
+ breadcrumb_home_label : "Acasă"
+ breadcrumb_separator : "/"
+ menu_label : "Comută meniul"
+ search_label :
+ toc_label : "Pe această pagină"
+ ext_link_label : "Link direct"
+ less_than : "mai puțin de"
+ minute_read : "minute de citit"
+ share_on_label : "Distribuie pe"
+ meta_label :
+ tags_label : "Etichete:"
+ categories_label : "Categorii:"
+ date_label : "Actualizat:"
+ comments_label : "Lasă un comentariu"
+ comments_title : "Comentarii"
+ more_label : "Citește mai departe"
+ related_label : "S-ar putea să-ți placă"
+ follow_label : "Urmărește:"
+ feed_label : "Feed RSS"
+ powered_by : "Cu sprijinul"
+ website_label : "Site"
+ email_label : "Email"
+ recent_posts : "Articole recente"
+ undefined_wpm : "Parametru words_per_minute nedefinit în _config.yml"
+ comment_form_info : "Adresa ta de email nu va fi făcută publică. Câmpurile marcate sunt obligatorii"
+ comment_form_comment_label : "Comentariu"
+ comment_form_md_info : "Markdown este suportat."
+ comment_form_name_label : "Nume"
+ comment_form_email_label : "Adresă de email"
+ comment_form_website_label : "Site (opțional)"
+ comment_btn_submit : "Trimite comentariul"
+ comment_btn_submitted : "Trimis"
+ comment_success_msg : "Mulțumesc pentru comentariu! Va apărea pe site în momentul în care va fi aprobat."
+ comment_error_msg : "Scuze, este o problemă cu comentariul tău. Asigură-te că toate câmpurile obligatorii au fost completate și încearcă din nou."
+ loading_label : "Se încarcă..."
+ search_label_text :
+ search_placeholder_text : "Caută ceva..."
+ search_algolia_no_results :
+ results_found : "Rezultate găsite"
+ back_to_top : "Înapoi în susul paginii"
+ro-RO:
+ <<: *DEFAULT_RO
+
+# Punjabi
+# -----------------
+pa: &DEFAULT_PA
+ skip_links : "ਲਿੰਕ ਛੱਡੋ"
+ skip_primary_nav : "ਮੂਲ ਮਾਰਗ ਛੱਡੋ"
+ skip_content : "ਸਮੱਗਰੀ ਛੱਡੋ"
+ skip_footer : "ਅੰਤ ਵਿਚ ਲਿਖਿਆ ਛੱਡੋ"
+ page : "ਸਫ਼ਾ"
+ pagination_previous : "ਪਿਛਲਾ"
+ pagination_next : "ਅਗਲਾ "
+ breadcrumb_home_label : "ਘਰ"
+ breadcrumb_separator : "/"
+ menu_label : "ਟੌਗਲ ਮੀਨੂ"
+ search_label : "ਖੋਜ"
+ toc_label : "ਇਸ ਸਫ਼ੇ 'ਤੇ"
+ ext_link_label : "ਸਿੱਧਾ ਸੰਪਰਕ"
+ less_than : "ਤੋਂ ਘੱਟ"
+ minute_read : "ਮਿੰਟ ਵਿੱਚ ਪੜਿਆ ਜਾ ਸਕਦਾ ਹੈ"
+ share_on_label : "ਸਾਂਝਾ ਕਰੋ"
+ meta_label : "ਸਵੈ-ਸੰਦਰਭ ਜਾਣਕਾਰੀ"
+ tags_label : "ਟੈਗ"
+ categories_label : "ਵਰਗ"
+ date_label : "ਅਪਡੇਟ ਕੀਤਾ:"
+ comments_label : "ਇੱਕ ਟਿੱਪਣੀ ਛੱਡੋ"
+ comments_title : "ਟਿੱਪਣੀਆਂ"
+ more_label : "ਹੋਰ ਜਾਣੋ"
+ related_label : "ਤੁਸੀਂ ਇਸਦਾ ਆਨੰਦ ਵੀ ਲੈ ਸਕਦੇ ਹੋ"
+ follow_label : "ਫਾਲੋ ਅੱਪ ਕਰੋ:"
+ feed_label : "ਫੀਡ"
+ powered_by : "ਦੁਆਰਾ ਸੰਚਾਲਿਤ"
+ website_label : "ਵੈੱਬਸਾਇਟ"
+ email_label : "ਈਮੇਲ"
+ recent_posts : "ਹਾਲ ਹੀ ਦੇ ਪੋਸਟ"
+ undefined_wpm : "_config.yml ਤੇ ਅਣ-ਪ੍ਰਭਾਸ਼ਿਤ ਪੈਰਾਮੀਟਰ words_per_minute"
+ comment_form_info : "ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਪ੍ਰਕਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਅਨੁਮਾਨਿਤ ਸਥਾਨਾਂ ਨੂੰ ਅੰਡਰਲਾਈਨ ਕੀਤਾ ਗਿਆ ਹੈ"
+ comment_form_comment_label : "ਟਿੱਪਣੀ"
+ comment_form_md_info : "ਮਾਰਕਡਾਊਨ ਵਰਤ ਸਕਦੇ ਹੋ।"
+ comment_form_name_label : "ਨਾਮ"
+ comment_form_email_label : "ਈਮੇਲ ਪਤਾ"
+ comment_form_website_label : "ਵੈਬਸਾਈਟ (ਵਿਕਲਪਿਕ)"
+ comment_btn_submit : "ਕੋਈ ਟਿੱਪਣੀ ਭੇਜੋ"
+ comment_btn_submitted : "ਪੇਸ਼ ਕੀਤਾ"
+ comment_success_msg : "ਤੁਹਾਡੀਆਂ ਟਿੱਪਣੀਆਂ ਲਈ ਧੰਨਵਾਦ! ਇਹ ਮਨਜ਼ੂਰੀ ਮਿਲਣ ਦੇ ਬਾਅਦ ਸਾਈਟ 'ਤੇ ਦਿਖਾਇਆ ਜਾਵੇਗਾ।"
+ comment_error_msg : "ਮੁਆਫ ਕਰਨਾ, ਤੁਹਾਡੀ ਅਧੀਨਗੀ ਵਿੱਚ ਕੋਈ ਗਲਤੀ ਹੋਈ ਸੀ ਕਿਰਪਾ ਕਰਕੇ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਸਾਰੇ ਲੋੜੀਂਦੇ ਖੇਤਰ ਪੂਰੇ ਹੋ ਗਏ ਹਨ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"
+ loading_label : "ਲੋਡ ਹੋ ਰਿਹਾ ਹੈ..."
+ search_label_text : "ਖੋਜ"
+ search_placeholder_text : "ਆਪਣੀ ਖੋਜ ਦੇ ਸ਼ਬਦ ਨੂੰ ਦਰਜ ਕਰੋ..."
+ search_algolia_no_results :
+ results_found : "ਨਤੀਜਾ ਮਿਲਿਆ/ਮਿਲੇ"
+ back_to_top : "ਵਾਪਸ ਚੋਟੀ 'ਤੇ ਜਾਓ"
+pa-IN:
+ <<: *DEFAULT_PA
+
+# Persian (Farsi)
+# --------------
+fa: &DEFAULT_FA
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "صفحه"
+ pagination_previous : "قبلی"
+ pagination_next : "بعدی"
+ breadcrumb_home_label : "صفحه اصلی"
+ breadcrumb_separator : "/"
+ menu_label : "فهرست"
+ toc_label : "در این صفحه"
+ ext_link_label : "لینک مستقیم"
+ less_than : " "
+ minute_read : "(طول مطالعه (دقیقه"
+ share_on_label : "اشتراک گذاری در"
+ meta_label :
+ tags_label : "تگ ها: "
+ categories_label : "دسته بندی ها: "
+ date_label : "به روز شده در: "
+ comments_label : "ارسال نظر"
+ comments_title : "نظرات"
+ more_label : "ادامه مطلب"
+ related_label : "ممکن است از این مطالب نیز لذت ببرید"
+ follow_label : "دنبال کنید: "
+ feed_label : "خوراک"
+ powered_by : "طراحی شده توسط"
+ website_label : "سایت اینترنتی"
+ email_label : "پست الکترونیک"
+ recent_posts : "آخرین مطالب"
+ undefined_wpm : ".(words_per_minute) _config.yml متغیر اشتباه در"
+ comment_form_info : ".آدرس ایمیل شما منتشر نخواهد شد. فیلدهای اجباری مشخص شده اند"
+ comment_form_comment_label : "دیدگاه"
+ comment_form_md_info : ".پشتیبانی می شود Markdown"
+ comment_form_name_label : "نام"
+ comment_form_email_label : "پست الکترونیک"
+ comment_form_website_label : "سایت اینترنتی (اختیاری)"
+ comment_btn_submit : "ارسال نظر"
+ comment_btn_submitted : "ارسال شد"
+ comment_success_msg : ".باتشکر از ارسال دیدگاه! پس از تأیید، این دیدگاه در سایت نشان داده خواهد شد"
+ comment_error_msg : ".متاسفانه در ارسال شما خطایی بود. لطفا مطمئن شوید تمام فیلدهای مورد نیاز تکمیل شده و دوباره امتحان کنید"
+ loading_label : "...بارگذاری"
+ search_label_text :
+ search_placeholder_text : "...عبارت جستجوی خود را وارد کنید"
+ search_algolia_no_results :
+ results_found : "نتایج"
+ back_to_top : "بازگشت به بالا"
+fa-IR:
+ <<: *DEFAULT_FA
+
+
+# Malayalam
+# -----------------
+ml: &DEFAULT_ML
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "പേജ്"
+ pagination_previous : "തിരികെ"
+ pagination_next : "മുന്നോട്ട്"
+ breadcrumb_home_label : "ഹോം"
+ breadcrumb_separator : "/"
+ menu_label : "ടോഗിൾ മെനു"
+ search_label : "ടോഗിൾ സെർച്ച്"
+ toc_label : "ഈ പേജിൽ"
+ ext_link_label : "ലിങ്കിലേക് പോകാൻ"
+ less_than : "ഏതാണ്ട്"
+ minute_read : "മിനിറ്റ് ദൈർഖ്യം"
+ share_on_label : "ഷെയർ ചെയ്യുവാൻ "
+ meta_label :
+ tags_label : "ടാഗുകൾ:"
+ categories_label : "വിഭാഗങ്ങൾ:"
+ date_label : "അവസാന മാറ്റം:"
+ comments_label : "അഭിപ്രായം രേഖപ്പെടുത്തുക"
+ comments_title : "അഭിപ്രായങ്ങൾ"
+ more_label : "കൂടുതൽ അറിയുവാൻ"
+ related_label : "നിങ്ങൾക് ഇതും ഇഷ്ടപ്പെട്ടേക്കാം"
+ follow_label : "പിന്തുടരുക:"
+ feed_label : "ഫീഡ്"
+ powered_by : "പവേർഡ് ബൈ"
+ website_label : "വെബ്സൈറ്റ്"
+ email_label : "ഇ-മെയിൽ"
+ recent_posts : "സമീപകാല പോസ്റ്റുകൾ"
+ undefined_wpm : "Config.yml ലെ words_per_minute പരാമീറ്റർ നിർവചിച്ചിട്ടില്ല."
+ comment_form_info : "നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിക്കില്ല. ആവശ്യമായ ഫീൽഡുകൾ അടയാളപ്പെടുത്തി."
+ comment_form_comment_label : "കമന്റ്"
+ comment_form_md_info : "Markdown സപ്പോർട്ട് ചെയ്യുന്നതാണ്."
+ comment_form_name_label : "പേര്"
+ comment_form_email_label : "ഇ-മെയിൽ"
+ comment_form_website_label : "വെബ്സൈറ് (ഓപ്ഷണൽ)"
+ comment_btn_submit : "അഭിപ്രായം രേഖപ്പെടുത്തുക"
+ comment_btn_submitted : "രേഖപ്പെടുത്തി"
+ comment_success_msg : "നിങ്ങളുടെ അഭിപ്രായത്തിന് നന്ദി! ഇത് അംഗീകരിച്ചുകഴിഞ്ഞാൽ ഇത് സൈറ്റിൽ പ്രദർശിപ്പിക്കും."
+ comment_error_msg : "ക്ഷമിക്കണം, നിങ്ങളുടെ സമർപ്പണവുമായി ബന്ധപ്പെട്ട് ഒരു പിശകുണ്ടായിരുന്നു. ആവശ്യമായ എല്ലാ ഫീൽഡുകളും പൂർത്തിയായിട്ടുണ്ടെന്ന് ഉറപ്പുവരുത്തുക, വീണ്ടും ശ്രമിക്കുക."
+ loading_label : "ലോഡിംഗ്..."
+ search_label_text :
+ search_placeholder_text : "നിങ്ങളുടെ തിരയൽ പദം നൽകുക..."
+ search_algolia_no_results :
+ results_found : "ഫലം (കൾ) കണ്ടെത്തി"
+ back_to_top : "മുകളിലേയ്ക്ക്"
+ml-IN:
+ <<: *DEFAULT_ML
+
+# Thailand
+# --------------
+th: &DEFAULT_TH
+ skip_links :
+ skip_primary_nav :
+ skip_content :
+ skip_footer :
+ page : "หน้า"
+ pagination_previous : "ก่อนหน้า"
+ pagination_next : "ถัดไป"
+ breadcrumb_home_label : "หน้าแรก"
+ breadcrumb_separator : "/"
+ menu_label : "พับเมนู"
+ search_label : "พับการค้นหา"
+ toc_label : "บนหน้านี้"
+ ext_link_label : "ลิงก์โดยตรง"
+ less_than : "น้อยกว่า"
+ minute_read : "นาที ในการอ่าน"
+ share_on_label : "แชร์ไปที่"
+ meta_label :
+ tags_label : "แท็ก:"
+ categories_label : "หมวดหมู่:"
+ date_label : "อัพเดตล่าสุด:"
+ comments_label : "แสดงความคิดเห็น"
+ comments_title : "ความคิดเห็น"
+ more_label : "อ่านต่อ"
+ related_label : "คุณอาจจะชอบสิ่งนี้"
+ follow_label : "ติดตาม:"
+ feed_label : "ฟืดข่าว"
+ powered_by : "ขับเคลื่อนโดย"
+ website_label : "เว็บไซต์"
+ email_label : "อีเมล"
+ recent_posts : "โพสล่าสุด"
+ undefined_wpm : "ไม่สามารถระบุพารามิเตอร์ words_per_minute ได้ใน _config.yml"
+ comment_form_info : "อีเมลของคุณไม่สามารถโพสสาธารณะได้ กรุณากรอกช่องที่ระบุด้วยเครื่องหมายดอกจันไว้"
+ comment_form_comment_label : "แสดงความคิดเห็น"
+ comment_form_md_info : "มาร์กดาวน์ได้รับการสนับสนุน"
+ comment_form_name_label : "ชื่อ"
+ comment_form_email_label : "ที่อยู่อีเมล"
+ comment_form_website_label : "เว็บไซต์ (ตัวเลือก)"
+ comment_btn_submit : "ส่งความคิดเห็น"
+ comment_btn_submitted : "ส่งเรียบร้อยแล้ว"
+ comment_success_msg : "ขอบคุณสำหรับการแสดงความคิดเห็น! ความคิดเห็นจะได้รับการแสดงหลังจากได้รับการยืนยัน"
+ comment_error_msg : "ขออภัย, มีบางอย่างผิดพลาดจากการส่งแบบฟอร์ม กรุณาตรวจทานทุกช่อง และลองส่งใหม่อีกครั้ง"
+ loading_label : "กำลังโหลด..."
+ search_label_text :
+ search_placeholder_text : "ใส่คำค้นหาของคุณ..."
+ search_algolia_no_results :
+ results_found : "ผลการค้นหา พบ"
+ back_to_top : "กลับด้านบน"
+th-TH:
+ <<: *DEFAULT_TH
+
+# Hindi
+# -----------------
+hi: &DEFAULT_HI
+ skip_links : "लिंक छोड़ें"
+ skip_primary_nav : "प्राथमिक पथ-प्रदर्शन छोड़ें"
+ skip_content : "सामग्री छोड़ें"
+ skip_footer : "अंत-में लिखा छोड़ें"
+ page : "पृष्ठ"
+ pagination_previous : "पिछला"
+ pagination_next : "अगला"
+ breadcrumb_home_label : "घर"
+ breadcrumb_separator : "/"
+ menu_label : "टॉगल मेनू"
+ toc_label : "इस पृष्ठ पर"
+ ext_link_label : "सीधा संपर्क"
+ less_than : "से कम"
+ minute_read : "मिनट में पढ़ सकते हैं"
+ share_on_label : "साझा करें"
+ meta_label : "स्व-संदर्भात्मक जानकारी"
+ tags_label : "अंकितक:"
+ categories_label : "श्रेणियाँ:"
+ date_label : "अपडेट किया गया:"
+ comments_label : "एक टिप्पणी छोड़ें"
+ comments_title : "टिप्पणियाँ"
+ more_label : "और अधिक जानें"
+ related_label : "आप इसका भी आनंद ले सकते हैं"
+ follow_label : "अनुसरण करे:"
+ feed_label : "फ़ीड"
+ powered_by : "द्वारा संचालित"
+ website_label : "वेबसाइट"
+ email_label : "ईमेल"
+ recent_posts : "हाल के पोस्ट"
+ undefined_wpm : "_config.yml पर अपरिभाषित पैरामीटर words_per_minute"
+ comment_form_info : "आपका ईमेल पता प्रकाशित नहीं किया जाएगा। अपेक्षित स्थानों को रेखांकित कर दिया गया है"
+ comment_form_comment_label : "टिप्पणी"
+ comment_form_md_info : "मार्कडाउन की अनुमति है।"
+ comment_form_name_label : "नाम"
+ comment_form_email_label : "ईमेल पता"
+ comment_form_website_label : "वेबसाइट (ऐच्छिक)"
+ comment_btn_submit : "टिप्पणी भेजें"
+ comment_btn_submitted : "प्रस्तुत"
+ comment_success_msg : "आपके कमेंट के लिए धन्यवाद! इसे स्वीकृति मिलने के बाद साइट पर दिखाया जाएगा।"
+ comment_error_msg : "क्षमा करें, आपके सबमिशन के साथ एक त्रुटि हुई थी। कृपया सुनिश्चित करें कि सभी आवश्यक फ़ील्ड पूरा हो गए हैं और पुनः प्रयास करें।"
+ loading_label : "लोड हो रहा है..."
+ search_label_text : "खोज"
+ search_placeholder_text : "अपना खोज शब्द दर्ज करें..."
+ search_algolia_no_results :
+ results_found : "परिणाम मिला/मिले"
+ back_to_top : "शीर्ष पर वापस"
+hi-IN:
+ <<: *DEFAULT_HI
+
+# Catalan
+# --------------
+ca: &DEFAULT_CA
+ skip_links : "Salta els enllaços"
+ skip_primary_nav : "Salta a la navegació primària"
+ skip_content : "Salta al contingut"
+ skip_footer : "Salta al peu"
+ page : "Pàgina"
+ pagination_previous : "Anterior"
+ pagination_next : "Següent"
+ breadcrumb_home_label : "Inici"
+ breadcrumb_separator : "/"
+ menu_label : "Mostra/amaga el menú"
+ search_label : "Mostra/amaga la cerca"
+ toc_label : "En aquesta pàgina"
+ ext_link_label : "Enllaç directe"
+ less_than : "es llegeix en menys de"
+ minute_read : "minut(s)"
+ share_on_label : "Comparteix a"
+ meta_label :
+ tags_label : "Etiquetes:"
+ categories_label : "Categories:"
+ date_label : "Actualitzat:"
+ comments_label : "Deixa un comentari"
+ comments_title : "Comentaris"
+ more_label : "Llegeix més"
+ related_label : "També et pot agradar"
+ follow_label : "Segueix-me:"
+ feed_label : "Feed"
+ powered_by : "Funciona amb"
+ website_label : "Pàgina web"
+ email_label : "Correu electrònic"
+ recent_posts : "Entrades recents"
+ undefined_wpm : "El paràmetre words_per_minute no està definit a _config.yml"
+ comment_form_info : "No es mostrarà el teu correu electrònic. Els camps obligatoris estan marcats"
+ comment_form_comment_label : "Comentari"
+ comment_form_md_info : "Admet Markdown."
+ comment_form_name_label : "Nom"
+ comment_form_email_label : "Correu electrònic"
+ comment_form_website_label : "Pàgina web (opcional)"
+ comment_btn_submit : "Envia"
+ comment_btn_submitted : "Enviat"
+ comment_success_msg : "Gràcies pel teu comentari! Apareixerà un cop sigui aprovat."
+ comment_error_msg : "Hi ha hagut un error enviat el comentari. Comprova que els camps obligatirs estiguin omplerts i torna-ho a provar."
+ loading_label : "Carregant..."
+ search_label_text : "Introdueix termes per cercar..."
+ search_placeholder_text : "Introdueix termes per cercar..."
+ search_algolia_no_results :
+ results_found : "resultat(s)"
+ back_to_top : "Torna a dalt"
+ca-ES:
+ <<: *DEFAULT_CA
+
+# Irish (Gaeilge)
+# --------------
+ga: &DEFAULT_GA
+ skip_links : "Léim naisc"
+ skip_primary_nav : "Léim chuig príomh naiscleanúint"
+ skip_content : "Léim chuig inneachar"
+ skip_footer : "Léim chuig buntásc"
+ page : "Leathanach"
+ pagination_previous : "Leathanach roimhe sin"
+ pagination_next : "Céad leathanach eile"
+ breadcrumb_home_label : "Baile"
+ breadcrumb_separator : "/"
+ menu_label : "Scorán roghchlár"
+ search_label : "Scorán cuardach"
+ toc_label : "Ar an leathanach seo"
+ ext_link_label : "Nasc díreach"
+ less_than : "níos lú na"
+ minute_read : "a léamh"
+ share_on_label : "Roinn ar"
+ meta_label :
+ tags_label : "Clibeanna:"
+ categories_label : "Catagoírí:"
+ date_label : "Nuashonraíodh:"
+ comments_label : "Fág trácht"
+ comments_title : "Tráchtanna"
+ more_label : "Foghlaim níos mó"
+ follow_label : "Lean:"
+ feed_label : "Feed"
+ powered_by : "Ag fáil cumhacht as"
+ website_label : "Suíomh gréasáin"
+ email_label : "R-phost"
+ recent_posts : "Postálacha le deanaí"
+ comment_form_comment_label : "Trácht"
+ comment_form_name_label : "Ainm"
+ comment_form_email_label : "Ríomhsheoladh"
+ comment_form_website_label : "Suíomh gréasáin (roghnach)"
+ comment_btn_submit : "Cuir isteach trácht"
+ comment_btn_submitted : "Curtha isteach"
+ loading_label : "Lódáil..."
+ search_label_text : "Cuir do chuardach isteach..."
+ search_placeholder_text : "Cuir do chuardach isteach..."
+ search_algolia_no_results :
+ results_found : "Torthaí aimsithe"
+ back_to_top : "Ar ais go barr"
+ga-IE:
+ <<: *DEFAULT_GA
+
+
+# Finnish / Suomi
+# -----------------
+fi: &DEFAULT_FI
+ skip_links : "Ohita linkit"
+ skip_primary_nav : "Hyppää pää navigaatioon"
+ skip_content : "Hyppää sisältöön"
+ skip_footer : "Hyppää alareunaan"
+ page : "Sivu"
+ pagination_previous : "Edellinen"
+ pagination_next : "Seuraava"
+ breadcrumb_home_label : "Etusivu"
+ breadcrumb_separator : "/"
+ menu_label : "Avaa valikko"
+ search_label : "Avaa haku"
+ toc_label : "Tällä sivulla"
+ ext_link_label : "Suora linkki"
+ less_than : "vähemmän kuin"
+ minute_read : "lukuaika"
+ share_on_label : "Jaa"
+ meta_label :
+ tags_label : "Tagit:"
+ categories_label : "Kategoriat:"
+ date_label : "Päivitetty:"
+ comments_label : "Jätä kommentti"
+ comments_title : "Kommentit"
+ more_label : "Lisää"
+ related_label : "Voit olla kiinnostunut myös"
+ follow_label : "Seuraa:"
+ feed_label : "Syöte"
+ powered_by : "Voimanlähteenä"
+ website_label : "Websivu"
+ email_label : "Email"
+ recent_posts : "Viimeisimmät postaukset"
+ undefined_wpm : "words_per_minute asetusta ei ole määritelty _config.yml tiedostossa"
+ comment_form_info : "Your email address will not be published. Required fields are marked"
+ comment_form_comment_label : "Kommentti"
+ comment_form_md_info : "Tukee markdown muotoilua."
+ comment_form_name_label : "Nimi"
+ comment_form_email_label : "Email osoite"
+ comment_form_website_label : "Webbisivu (vapaaehtoinen)"
+ comment_btn_submit : "Lähetä"
+ comment_btn_submitted : "Lähetetty"
+ comment_success_msg : "Kiitos kommentista, se julkaistaan tällä sivulla moderoinnin jälkeen."
+ comment_error_msg : "Tarkista että olet täyttänyt kaikki kentät ja yritä uudelleen."
+ loading_label : "Ladataan..."
+ search_label_text : "Hakusana..."
+ search_placeholder_text : "Hakusana..."
+ search_algolia_no_results :
+ results_found : "Tulosta"
+ back_to_top : "Ylös"
+
+# Myanmar (Burmese)
+# -----------------
+my: &DEFAULT_MY
+ skip_links : "လင့်များကိုကျော်ပါ။"
+ skip_primary_nav : "မူလအညွှန်းသို့ကျော်ပါ။"
+ skip_content : "အကြောင်းအရာသို့ကျော်ပါ။"
+ skip_footer : "အောက်ခြေသို့ကျော်ပါ။"
+ page : "စာမျက်နှာ"
+ pagination_previous : "ရှေ့တစ်ခု"
+ pagination_next : "နောက်တစ်ခု"
+ breadcrumb_home_label : "ပင်မစာမျက်နှာ"
+ breadcrumb_separator : "/"
+ menu_label : "မီနူး ဖွင့်၊ပိတ်"
+ search_label : "ရှာဖွေရန် ဖွင့်၊ပိတ်"
+ toc_label : "ဒီစာမျက်နှာတွင်"
+ ext_link_label : "တိုက်ရိုက်လင့်"
+ less_than : "ဖတ်ရန်ကြာချိန်"
+ minute_read : "မိနစ်"
+ share_on_label : "မျှဝေပါ။"
+ meta_label :
+ tags_label : "အမှတ်အသားများ -"
+ categories_label : "အမျိုးအစားများ -"
+ date_label : "ပြင်ဆင်ပြီး -"
+ comments_label : "မှတ်ချက်တစ်ခုချန်ထားပါ။"
+ comments_title : "မှတ်ချက်များ"
+ more_label : "ပိုမိုသိရှိရန်"
+ related_label : "သင်နှစ်သက်နိုင်သော"
+ follow_label : "သတင်းလိုက်ယူရန် -"
+ feed_label : "Feed ယူရန် -"
+ powered_by : "ပံ့ပိုးသည်"
+ website_label : "ဝဘ်ဆိုက်"
+ email_label : "အီးမေးလ်"
+ recent_posts : "လတ်တလောရေးသားချက်များ"
+ undefined_wpm : "_config.yml မှာ words_per_minute ကိုမသတ်မှတ်ထားပါ။"
+ comment_form_info : "သင့်အီးမေးလ်လိပ်စာကိုဖော်ပြသွားမည်မဟုတ်ပါ။ လိုအပ်သောဖြည့်စွက်ရန်နေရာများကို အမှတ်အသားပြထားပါသည်။"
+ comment_form_comment_label : "မှတ်ချက်"
+ comment_form_md_info : "Markdown ကိုထောက်ပံ့သည်။"
+ comment_form_name_label : "နာမည်"
+ comment_form_email_label : "အီးမေးလိပ်စာ"
+ comment_form_website_label : "ဝဘ်ဆိုက် (မဖြည့်စွက်လည်းရသည်)"
+ comment_btn_submit : "မှတ်ချက်တင်ပါ"
+ comment_btn_submitted : "တင်သွင်းလိုက်သည်"
+ comment_success_msg : "မှတ်ချက်ပေးတဲ့အတွက်ကျေးဇူးတင်ပါတယ်။ ၎င်းကိုအတည်ပြုပြီးသည့်အခါ ဝဘ်ဆိုက်ပေါ်တွင်ပြလိမ့်မည်။"
+ comment_error_msg : "တောင်းပန်ပါတယ်။ သင့်တင်သွင်းမှုတွင်အမှားတစ်ခုရှိခဲ့သည်။ ကျေးဇူးပြုပြီးလိုအပ်သောဖြည့်စွက်ရန်နေရာအားလုံးဖြည့်ပြီးပါကထပ်မံကြိုးစားပါ။"
+ loading_label : "တင်နေသည်..."
+ search_label_text : "သင့်ရှာဖွေရေးဝေါဟာရကိုရိုက်ထည့်ပါ..."
+ search_placeholder_text : "သင့်ရှာဖွေရေးဝေါဟာရကိုရိုက်ထည့်ပါ..."
+ search_algolia_no_results :
+ results_found : "ရလဒ်(များ)ကိုတွေ့ရှိခဲ့သည်"
+ back_to_top : "အပေါ်သို့ပြန်သွား"
+my-MM:
+ <<: *DEFAULT_MY
+
+# Norwegian
+# -------
+no: &DEFAULT_NO
+ skip_links : "Hopp over lenker"
+ skip_primary_nav : "Gå til primærnavigasjon"
+ skip_content : "Gå til innhold"
+ skip_footer : "Gå til fotnote"
+ page : "Side"
+ pagination_previous : "Forrige"
+ pagination_next : "Neste"
+ breadcrumb_home_label : "Hjem"
+ breadcrumb_separator : "/"
+ menu_label : "Vis/skjul meny"
+ search_label : "Vis/skjul søk"
+ toc_label : "På denne siden"
+ ext_link_label : "Direkte lenke"
+ less_than : "mindre enn"
+ minute_read : "minutters lesing"
+ share_on_label : "Del på"
+ meta_label :
+ tags_label : "Nøkkelord:"
+ categories_label : "Kategorier:"
+ date_label : "Oppdatert:"
+ comments_label : "Skriv en kommentar"
+ comments_title : "Kommentarer"
+ more_label : "Lær mer"
+ related_label : "Du vil kanskje også lese:"
+ follow_label : "Følg:"
+ feed_label : "Feed"
+ powered_by : "Lagd med"
+ website_label : "Nettside"
+ email_label : "E-post"
+ recent_posts : "Nyeste innlegg"
+ undefined_wpm : "Parameteret words_per_minute er ikke definert i _config.yml"
+ comment_form_info : "Din e-postadresse vil ikke bli publisert. Obligatoriske felt er markert"
+ comment_form_comment_label : "Kommentar"
+ comment_form_md_info : "Markdown er støttet"
+ comment_form_name_label : "Navn"
+ comment_form_email_label : "E-postadresse"
+ comment_form_website_label : "Nettside (frivillig)"
+ comment_btn_submit : "Send kommentar"
+ comment_btn_submitted : "Sendt"
+ comment_success_msg : "Takk for din kommentar! Den blir vist på siden så fort den er godkjent"
+ comment_error_msg : "Beklager, noe gikk galt. Sjekk at alle obligatoriska felt er utfylt og prøv igjen"
+ loading_label : "Laster..."
+ search_label_text : "Skriv inn søkeord"
+ search_placeholder_text : "Skriv inn søkeord"
+ search_algolia_no_results : "Ingen treff"
+ results_found : "Treff funnet"
+ back_to_top : "Tillbake til toppen"
+no-NB:
+ <<: *DEFAULT_NO
+no-NN:
+ <<: *DEFAULT_NO
+
+# Hebrew
+# -------
+he: &DEFAULT_HE
+ skip_links : "דלגו על קישור"
+ skip_primary_nav : "דלגו לראשי"
+ skip_content : "דלגו לתוכן"
+ skip_footer : "דלגו לתחתית"
+ page : "דף"
+ pagination_previous : "קודם"
+ pagination_next : "הבא"
+ breadcrumb_home_label : "בית"
+ breadcrumb_separator : "/"
+ menu_label : "סגירה/פתיחה של תפריט"
+ search_label : "סגירה/פתיחה של חיפוש"
+ toc_label : "בדף זה"
+ ext_link_label : "קישור ישיר"
+ less_than : "פחות מ"
+ minute_read : "דקת קריאה"
+ share_on_label : "שתפו ב"
+ meta_label :
+ tags_label : "תגיות:"
+ categories_label : "קטגוריות:"
+ date_label : "מעודכן:"
+ comments_label : "השאירו הערה"
+ comments_title : "הערות"
+ more_label : "קראו עוד"
+ related_label : "אולי יעניין אותך גם"
+ follow_label : "עקבו אחרי"
+ feed_label : "פיד"
+ powered_by : "Powered by"
+ website_label : "אתר"
+ email_label : "אימייל"
+ recent_posts : "פוסטים אחרונים"
+ undefined_wpm : "Undefined parameter words_per_minute at _config.yml"
+ comment_form_info : "האימייל שלך נשמר חסוי. שדות חובה מסומנים"
+ comment_form_comment_label : "הערה"
+ comment_form_md_info : "Markdown is supported."
+ comment_form_name_label : "שם"
+ comment_form_email_label : "כתובת אימייל"
+ comment_form_website_label : "אתר (אפשרות)"
+ comment_btn_submit : "שלחו הערה"
+ comment_btn_submitted : "נשלח"
+ comment_success_msg : "תודה על ההערה שלך! היא תופיע באתר ברגע שתאושר."
+ comment_error_msg : "סליחה, קרתה תקלה בשליחה. אנא וודאו שכל השדות מלאים ונסו שנית."
+ loading_label : "טוען..."
+ search_label_text : "מילות חיפוש..."
+ search_placeholder_text : "מילות חיפוש..."
+ search_algolia_no_results : "אין תוצאות"
+ results_found : "תוצאות נמצאו"
+ back_to_top : "חזרה להתחלה"
+he-IL:
+ <<: *DEFAULT_HE
+
+# Arabic (عربي)
+# --------------
+ar: &DEFAULT_AR
+ skip_links : "تخطي الروابط"
+ skip_primary_nav : "تخطى الى شريط التنقل"
+ skip_content : "الانتقال الى المحتوى"
+ skip_footer : "الانتقال الى ذيل الصفحة"
+ page : "صفحه"
+ pagination_previous : "قبل"
+ pagination_next : "بعد"
+ breadcrumb_home_label : "الرئيس"
+ breadcrumb_separator : "/"
+ menu_label : "الخيارات"
+ search_label : "البحث"
+ toc_label : "على هذه الصفحة"
+ ext_link_label : "رابط مباشر"
+ less_than : "اقل من"
+ minute_read : "دقيقة قرائية"
+ share_on_label : "مشاركة"
+ meta_label :
+ tags_label : "العلامات الوصفية:"
+ categories_label : "الفئات:"
+ date_label : "تم التحديث:"
+ comments_label : "اترك تعليق"
+ comments_title : "التعليقات"
+ more_label : "اقرأ المزيد"
+ related_label : "قد يعجبك أيضا"
+ follow_label : "تابع:"
+ feed_label : "الاخبار - RSS"
+ powered_by : "تم تطوير بواسطة"
+ website_label : "موقع"
+ email_label : "ايميل"
+ recent_posts : "المشاركات الأخيرة"
+ undefined_wpm : "معامل غير معرف في words_per_minute (كلمة في الدقيقة) في ملف _config.yml"
+ comment_form_info : "لن يتم نشر عنوان بريدك الإلكتروني. الحقول المطلوبة إلزامية"
+ comment_form_comment_label : "تعليق"
+ comment_form_md_info : "لغة ال Markdown مدعومة."
+ comment_form_name_label : "الاسم"
+ comment_form_email_label : "البريد الالكتروني"
+ comment_form_website_label : "الموقع (اختياري)"
+ comment_btn_submit : "أضف تعليق"
+ comment_btn_submitted : "تم الإرسال"
+ comment_success_msg : "شكراً على التعليق! سيتم اظهاره عندما يتم موافقة عليه."
+ comment_error_msg : "للأسف, هناك خطأ في المحاولة. الرجاء الحرص على تعبئة جميع الخانات و محاولة مجدداً."
+ loading_label : "جاري التحميل..."
+ search_label_text : "اكتب مصطلح للبحث..."
+ search_placeholder_text : "اكتب مصطلح للبحث..."
+ search_algolia_no_results : "لا توجد نتائج"
+ results_found : "تم إيجاد نتيجة"
+ back_to_top : "الانتقال الى الأعلى"
+ar-SD:
+ <<: *DEFAULT_AR
+ar-SA:
+ <<: *DEFAULT_AR
+ar-AE:
+ <<: *DEFAULT_AR
+ar-EG:
+ <<: *DEFAULT_AR
+
+# Another locale
+# --------------
+#
diff --git a/docs/_includes/analytics-providers/custom.html b/docs/_includes/analytics-providers/custom.html
new file mode 100644
index 00000000..c34b97ad
--- /dev/null
+++ b/docs/_includes/analytics-providers/custom.html
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/docs/_includes/analytics-providers/google-gtag.html b/docs/_includes/analytics-providers/google-gtag.html
new file mode 100644
index 00000000..16d0cf17
--- /dev/null
+++ b/docs/_includes/analytics-providers/google-gtag.html
@@ -0,0 +1,9 @@
+
+
+
diff --git a/docs/_includes/analytics-providers/google-universal.html b/docs/_includes/analytics-providers/google-universal.html
new file mode 100644
index 00000000..68c2674b
--- /dev/null
+++ b/docs/_includes/analytics-providers/google-universal.html
@@ -0,0 +1,7 @@
+
+
diff --git a/docs/_includes/analytics-providers/google.html b/docs/_includes/analytics-providers/google.html
new file mode 100644
index 00000000..c5742b98
--- /dev/null
+++ b/docs/_includes/analytics-providers/google.html
@@ -0,0 +1,14 @@
+
diff --git a/docs/_includes/analytics.html b/docs/_includes/analytics.html
new file mode 100644
index 00000000..371469f0
--- /dev/null
+++ b/docs/_includes/analytics.html
@@ -0,0 +1,14 @@
+{% if jekyll.environment == 'production' and site.analytics.provider and page.analytics != false %}
+
+{% case site.analytics.provider %}
+{% when "google" %}
+ {% include /analytics-providers/google.html %}
+{% when "google-universal" %}
+ {% include /analytics-providers/google-universal.html %}
+{% when "google-gtag" %}
+ {% include /analytics-providers/google-gtag.html %}
+{% when "custom" %}
+ {% include /analytics-providers/custom.html %}
+{% endcase %}
+
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/archive-single.html b/docs/_includes/archive-single.html
new file mode 100644
index 00000000..68174807
--- /dev/null
+++ b/docs/_includes/archive-single.html
@@ -0,0 +1,30 @@
+{% if post.header.teaser %}
+ {% capture teaser %}{{ post.header.teaser }}{% endcapture %}
+{% else %}
+ {% assign teaser = site.teaser %}
+{% endif %}
+
+{% if post.id %}
+ {% assign title = post.title | markdownify | remove: "" | remove: "
" %}
+{% else %}
+ {% assign title = post.title %}
+{% endif %}
+
+
+
+ {% if include.type == "grid" and teaser %}
+
+
+
+ {% endif %}
+
+ {% include page__meta.html type=include.type %}
+ {% if post.excerpt %}{{ post.excerpt | markdownify | strip_html | truncate: 160 }}
{% endif %}
+
+
diff --git a/docs/_includes/author-profile-custom-links.html b/docs/_includes/author-profile-custom-links.html
new file mode 100644
index 00000000..1a3d4cae
--- /dev/null
+++ b/docs/_includes/author-profile-custom-links.html
@@ -0,0 +1,7 @@
+
\ No newline at end of file
diff --git a/docs/_includes/author-profile.html b/docs/_includes/author-profile.html
new file mode 100644
index 00000000..3e2cf863
--- /dev/null
+++ b/docs/_includes/author-profile.html
@@ -0,0 +1,246 @@
+{% assign author = page.author | default: page.authors[0] | default: site.author %}
+{% assign author = site.data.authors[author] | default: author %}
+
+
+
+ {% if author.avatar %}
+
+ {% endif %}
+
+
+
+ {% if author.bio %}
+
+ {{ author.bio | markdownify }}
+
+ {% endif %}
+
+
+
+
{{ site.data.ui-text[site.locale].follow_label | remove: ":" | default: "Follow" }}
+
+
+
\ No newline at end of file
diff --git a/docs/_includes/breadcrumbs.html b/docs/_includes/breadcrumbs.html
new file mode 100644
index 00000000..75c032a4
--- /dev/null
+++ b/docs/_includes/breadcrumbs.html
@@ -0,0 +1,40 @@
+{% case site.category_archive.type %}
+ {% when "liquid" %}
+ {% assign path_type = "#" %}
+ {% when "jekyll-archives" %}
+ {% assign path_type = nil %}
+{% endcase %}
+
+{% if page.collection != 'posts' %}
+ {% assign path_type = nil %}
+ {% assign crumb_path = '/' %}
+{% else %}
+ {% assign crumb_path = site.category_archive.path %}
+{% endif %}
+
+
+
+ {% assign crumbs = page.url | split: '/' %}
+ {% assign i = 1 %}
+ {% for crumb in crumbs offset: 1 %}
+ {% if forloop.first %}
+
+ {{ site.data.ui-text[site.locale].breadcrumb_home_label | default: "Home" }}
+
+
+
+ {{ site.data.ui-text[site.locale].breadcrumb_separator | default: "/" }}
+ {% endif %}
+ {% if forloop.last %}
+ {{ page.title }}
+ {% else %}
+ {% assign i = i | plus: 1 %}
+
+ {{ crumb | replace: '-', ' ' | replace: '%20', ' ' | capitalize }}
+
+
+ {{ site.data.ui-text[site.locale].breadcrumb_separator | default: "/" }}
+ {% endif %}
+ {% endfor %}
+
+
diff --git a/docs/_includes/browser-upgrade.html b/docs/_includes/browser-upgrade.html
new file mode 100644
index 00000000..ec6ad0ac
--- /dev/null
+++ b/docs/_includes/browser-upgrade.html
@@ -0,0 +1,3 @@
+
diff --git a/docs/_includes/category-list.html b/docs/_includes/category-list.html
new file mode 100644
index 00000000..ad9a3fc7
--- /dev/null
+++ b/docs/_includes/category-list.html
@@ -0,0 +1,19 @@
+{% case site.category_archive.type %}
+ {% when "liquid" %}
+ {% assign path_type = "#" %}
+ {% when "jekyll-archives" %}
+ {% assign path_type = nil %}
+{% endcase %}
+
+{% if site.category_archive.path %}
+ {% assign categories_sorted = page.categories | sort_natural %}
+
+
+ {{ site.data.ui-text[site.locale].categories_label | default: "Categories:" }}
+
+ {% for category_word in categories_sorted %}
+ {{ category_word }} {% unless forloop.last %}, {% endunless %}
+ {% endfor %}
+
+
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/comment.html b/docs/_includes/comment.html
new file mode 100644
index 00000000..2e3013ee
--- /dev/null
+++ b/docs/_includes/comment.html
@@ -0,0 +1,22 @@
+
diff --git a/docs/_includes/comments-providers/custom.html b/docs/_includes/comments-providers/custom.html
new file mode 100644
index 00000000..90993691
--- /dev/null
+++ b/docs/_includes/comments-providers/custom.html
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/docs/_includes/comments-providers/custom_scripts.html b/docs/_includes/comments-providers/custom_scripts.html
new file mode 100644
index 00000000..6947946a
--- /dev/null
+++ b/docs/_includes/comments-providers/custom_scripts.html
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/docs/_includes/comments-providers/discourse.html b/docs/_includes/comments-providers/discourse.html
new file mode 100644
index 00000000..aca62cc8
--- /dev/null
+++ b/docs/_includes/comments-providers/discourse.html
@@ -0,0 +1,13 @@
+{% if site.comments.discourse.server %}
+{% capture canonical %}{% if site.permalink contains '.html' %}{{ page.url | absolute_url }}{% else %}{{ page.url | absolute_url | remove:'index.html' | strip_slash }}{% endif %}{% endcapture %}
+
+Please enable JavaScript to view the comments powered by Discourse.
+{% endif %}
diff --git a/docs/_includes/comments-providers/disqus.html b/docs/_includes/comments-providers/disqus.html
new file mode 100644
index 00000000..16a6027c
--- /dev/null
+++ b/docs/_includes/comments-providers/disqus.html
@@ -0,0 +1,15 @@
+{% if site.comments.disqus.shortname %}
+
+Please enable JavaScript to view the comments powered by Disqus.
+{% endif %}
diff --git a/docs/_includes/comments-providers/facebook.html b/docs/_includes/comments-providers/facebook.html
new file mode 100644
index 00000000..009dc1c6
--- /dev/null
+++ b/docs/_includes/comments-providers/facebook.html
@@ -0,0 +1,8 @@
+
+
\ No newline at end of file
diff --git a/docs/_includes/comments-providers/giscus.html b/docs/_includes/comments-providers/giscus.html
new file mode 100644
index 00000000..e89d41ce
--- /dev/null
+++ b/docs/_includes/comments-providers/giscus.html
@@ -0,0 +1,24 @@
+
\ No newline at end of file
diff --git a/docs/_includes/comments-providers/scripts.html b/docs/_includes/comments-providers/scripts.html
new file mode 100644
index 00000000..e87badab
--- /dev/null
+++ b/docs/_includes/comments-providers/scripts.html
@@ -0,0 +1,20 @@
+{% if site.comments.provider and page.comments %}
+{% case site.comments.provider %}
+ {% when "disqus" %}
+ {% include /comments-providers/disqus.html %}
+ {% when "discourse" %}
+ {% include /comments-providers/discourse.html %}
+ {% when "facebook" %}
+ {% include /comments-providers/facebook.html %}
+ {% when "staticman" %}
+ {% include /comments-providers/staticman.html %}
+ {% when "staticman_v2" %}
+ {% include /comments-providers/staticman_v2.html %}
+ {% when "utterances" %}
+ {% include /comments-providers/utterances.html %}
+ {% when "giscus" %}
+ {% include /comments-providers/giscus.html %}
+ {% when "custom" %}
+ {% include /comments-providers/custom_scripts.html %}
+{% endcase %}
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/comments-providers/staticman.html b/docs/_includes/comments-providers/staticman.html
new file mode 100644
index 00000000..ae3991d9
--- /dev/null
+++ b/docs/_includes/comments-providers/staticman.html
@@ -0,0 +1,40 @@
+{% if site.repository and site.staticman.branch %}
+
+{% endif %}
diff --git a/docs/_includes/comments-providers/staticman_v2.html b/docs/_includes/comments-providers/staticman_v2.html
new file mode 100644
index 00000000..3d8ba111
--- /dev/null
+++ b/docs/_includes/comments-providers/staticman_v2.html
@@ -0,0 +1,40 @@
+{% if site.repository and site.comments.staticman.branch %}
+
+{% endif %}
diff --git a/docs/_includes/comments-providers/utterances.html b/docs/_includes/comments-providers/utterances.html
new file mode 100644
index 00000000..5cf6c5cc
--- /dev/null
+++ b/docs/_includes/comments-providers/utterances.html
@@ -0,0 +1,21 @@
+
diff --git a/docs/_includes/comments.html b/docs/_includes/comments.html
new file mode 100644
index 00000000..b27c893b
--- /dev/null
+++ b/docs/_includes/comments.html
@@ -0,0 +1,180 @@
+
diff --git a/docs/_includes/documents-collection.html b/docs/_includes/documents-collection.html
new file mode 100644
index 00000000..e88d8c4c
--- /dev/null
+++ b/docs/_includes/documents-collection.html
@@ -0,0 +1,15 @@
+{% assign entries = site[include.collection] %}
+
+{% if include.sort_by %}
+ {% assign entries = entries | sort: include.sort_by %}
+{% endif %}
+
+{% if include.sort_order == 'reverse' %}
+ {% assign entries = entries | reverse %}
+{% endif %}
+
+{%- for post in entries -%}
+ {%- unless post.hidden -%}
+ {% include archive-single.html %}
+ {%- endunless -%}
+{%- endfor -%}
diff --git a/docs/_includes/feature_row b/docs/_includes/feature_row
new file mode 100644
index 00000000..03f09c15
--- /dev/null
+++ b/docs/_includes/feature_row
@@ -0,0 +1,41 @@
+{% if include.id %}
+ {% assign feature_row = page[include.id] %}
+{% else %}
+ {% assign feature_row = page.feature_row %}
+{% endif %}
+
+
+
+ {% for f in feature_row %}
+
+ {% endfor %}
+
+
diff --git a/docs/_includes/figure b/docs/_includes/figure
new file mode 100644
index 00000000..dacc668d
--- /dev/null
+++ b/docs/_includes/figure
@@ -0,0 +1,9 @@
+
+
+ {%- if include.caption -%}
+
+ {{ include.caption | markdownify | remove: "" | remove: "
" }}
+
+ {%- endif -%}
+
diff --git a/docs/_includes/footer.html b/docs/_includes/footer.html
new file mode 100644
index 00000000..2b53a253
--- /dev/null
+++ b/docs/_includes/footer.html
@@ -0,0 +1,21 @@
+
+
+
diff --git a/docs/_includes/footer/custom.html b/docs/_includes/footer/custom.html
new file mode 100644
index 00000000..d512599d
--- /dev/null
+++ b/docs/_includes/footer/custom.html
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/docs/_includes/gallery b/docs/_includes/gallery
new file mode 100644
index 00000000..71a9e1e1
--- /dev/null
+++ b/docs/_includes/gallery
@@ -0,0 +1,35 @@
+{% if include.id %}
+ {% assign gallery = page[include.id] %}
+{% else %}
+ {% assign gallery = page.gallery %}
+{% endif %}
+
+{% if include.layout %}
+ {% assign gallery_layout = include.layout %}
+{% else %}
+ {% if gallery.size == 2 %}
+ {% assign gallery_layout = 'half' %}
+ {% elsif gallery.size >= 3 %}
+ {% assign gallery_layout = 'third' %}
+ {% else %}
+ {% assign gallery_layout = '' %}
+ {% endif %}
+{% endif %}
+
+
+ {% for img in gallery %}
+ {% if img.url %}
+
+
+
+ {% else %}
+
+ {% endif %}
+ {% endfor %}
+ {% if include.caption %}
+ {{ include.caption | markdownify | remove: "" | remove: "
" }}
+ {% endif %}
+
diff --git a/docs/_includes/group-by-array b/docs/_includes/group-by-array
new file mode 100644
index 00000000..708de41a
--- /dev/null
+++ b/docs/_includes/group-by-array
@@ -0,0 +1,47 @@
+
+
+
+{% assign __empty_array = '' | split: ',' %}
+{% assign group_names = __empty_array %}
+{% assign group_items = __empty_array %}
+
+
+{% assign __names = include.collection | map: include.field %}
+
+
+{% assign __names = __names | join: ',' | join: ',' | split: ',' %}
+
+
+{% assign __names = __names | sort %}
+{% for name in __names %}
+
+
+{% unless name == previous %}
+
+
+{% assign group_names = group_names | push: name %}
+{% endunless %}
+
+{% assign previous = name %}
+{% endfor %}
+
+
+
+{% for name in group_names %}
+
+
+{% assign __item = __empty_array %}
+{% for __element in include.collection %}
+{% if __element[include.field] contains name %}
+{% assign __item = __item | push: __element %}
+{% endif %}
+{% endfor %}
+
+
+{% assign group_items = group_items | push: __item %}
+{% endfor %}
\ No newline at end of file
diff --git a/docs/_includes/head.html b/docs/_includes/head.html
new file mode 100644
index 00000000..73e56379
--- /dev/null
+++ b/docs/_includes/head.html
@@ -0,0 +1,25 @@
+
+
+{% include seo.html %}
+
+{% unless site.atom_feed.hide %}
+
+{% endunless %}
+
+
+
+
+
+
+
+
+
+
+
+{% if site.head_scripts %}
+ {% for script in site.head_scripts %}
+
+ {% endfor %}
+{% endif %}
diff --git a/docs/_includes/head/custom.html b/docs/_includes/head/custom.html
new file mode 100644
index 00000000..978d84fd
--- /dev/null
+++ b/docs/_includes/head/custom.html
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/docs/_includes/masthead.html b/docs/_includes/masthead.html
new file mode 100644
index 00000000..0c66aa65
--- /dev/null
+++ b/docs/_includes/masthead.html
@@ -0,0 +1,35 @@
+{% capture logo_path %}{{ site.logo }}{% endcapture %}
+
+
diff --git a/docs/_includes/nav_list b/docs/_includes/nav_list
new file mode 100644
index 00000000..a035a5bd
--- /dev/null
+++ b/docs/_includes/nav_list
@@ -0,0 +1,26 @@
+{% assign navigation = site.data.navigation[include.nav] %}
+
+
+ {% if page.sidebar.title %}{{ page.sidebar.title }} {% endif %}
+
+ {{ site.data.ui-text[site.locale].menu_label | default: "Toggle Menu" }}
+
+ {% for nav in navigation %}
+
+ {% if nav.url %}
+ {{ nav.title }}
+ {% else %}
+ {{ nav.title }}
+ {% endif %}
+
+ {% if nav.children != null %}
+
+ {% endif %}
+
+ {% endfor %}
+
+
diff --git a/docs/_includes/page__date.html b/docs/_includes/page__date.html
new file mode 100644
index 00000000..ec02005f
--- /dev/null
+++ b/docs/_includes/page__date.html
@@ -0,0 +1,6 @@
+{% assign date_format = site.date_format | default: "%B %-d, %Y" %}
+{% if page.last_modified_at %}
+ {{ site.data.ui-text[site.locale].date_label | default: "Updated:" }} {{ page.last_modified_at | date: date_format }}
+{% elsif page.date %}
+ {{ site.data.ui-text[site.locale].date_label | default: "Updated:" }} {{ page.date | date: date_format }}
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/page__hero.html b/docs/_includes/page__hero.html
new file mode 100644
index 00000000..dd1c26fb
--- /dev/null
+++ b/docs/_includes/page__hero.html
@@ -0,0 +1,55 @@
+{% capture overlay_img_path %}{{ page.header.overlay_image | relative_url }}{% endcapture %}
+
+{% if page.header.overlay_filter contains "gradient" %}
+ {% capture overlay_filter %}{{ page.header.overlay_filter }}{% endcapture %}
+{% elsif page.header.overlay_filter contains "rgba" %}
+ {% capture overlay_filter %}{{ page.header.overlay_filter }}{% endcapture %}
+ {% capture overlay_filter %}linear-gradient({{ overlay_filter }}, {{ overlay_filter }}){% endcapture %}
+{% elsif page.header.overlay_filter %}
+ {% capture overlay_filter %}rgba(0, 0, 0, {{ page.header.overlay_filter }}){% endcapture %}
+ {% capture overlay_filter %}linear-gradient({{ overlay_filter }}, {{ overlay_filter }}){% endcapture %}
+{% endif %}
+
+{% if page.header.image_description %}
+ {% assign image_description = page.header.image_description %}
+{% else %}
+ {% assign image_description = page.title %}
+{% endif %}
+
+{% assign image_description = image_description | markdownify | strip_html | strip_newlines | escape_once %}
+
+
diff --git a/docs/_includes/page__hero_video.html b/docs/_includes/page__hero_video.html
new file mode 100644
index 00000000..a313a23d
--- /dev/null
+++ b/docs/_includes/page__hero_video.html
@@ -0,0 +1,2 @@
+{% assign video = page.header.video %}
+{% include video id=video.id provider=video.provider danmaku=video.danmaku %}
diff --git a/docs/_includes/page__meta.html b/docs/_includes/page__meta.html
new file mode 100644
index 00000000..3d228c92
--- /dev/null
+++ b/docs/_includes/page__meta.html
@@ -0,0 +1,31 @@
+{% assign document = post | default: page %}
+{% if document.read_time or document.show_date %}
+
+ {% if document.show_date and document.date %}
+ {% assign date = document.date %}
+
+
+ {% assign date_format = site.date_format | default: "%B %-d, %Y" %}
+ {{ date | date: date_format }}
+
+ {% endif %}
+
+ {% if document.read_time and document.show_date %} {% endif %}
+
+ {% if document.read_time %}
+ {% assign words_per_minute = document.words_per_minute | default: site.words_per_minute | default: 200 %}
+ {% assign words = document.content | strip_html | number_of_words %}
+
+
+
+ {% if words < words_per_minute %}
+ {{ site.data.ui-text[site.locale].less_than | default: "less than" }} 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
+ {% elsif words == words_per_minute %}
+ 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
+ {% else %}
+ {{ words | divided_by: words_per_minute }} {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
+ {% endif %}
+
+ {% endif %}
+
+{% endif %}
diff --git a/docs/_includes/page__taxonomy.html b/docs/_includes/page__taxonomy.html
new file mode 100644
index 00000000..75c76c81
--- /dev/null
+++ b/docs/_includes/page__taxonomy.html
@@ -0,0 +1,7 @@
+{% if site.tag_archive.type and page.tags[0] %}
+ {% include tag-list.html %}
+{% endif %}
+
+{% if site.category_archive.type and page.categories[0] %}
+ {% include category-list.html %}
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/paginator.html b/docs/_includes/paginator.html
new file mode 100644
index 00000000..bffa0794
--- /dev/null
+++ b/docs/_includes/paginator.html
@@ -0,0 +1,69 @@
+{% if paginator.total_pages > 1 %}
+
+{% endif %}
diff --git a/docs/_includes/post_pagination.html b/docs/_includes/post_pagination.html
new file mode 100644
index 00000000..a93c6279
--- /dev/null
+++ b/docs/_includes/post_pagination.html
@@ -0,0 +1,14 @@
+{% if page.previous or page.next %}
+
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/posts-category.html b/docs/_includes/posts-category.html
new file mode 100644
index 00000000..b364f30e
--- /dev/null
+++ b/docs/_includes/posts-category.html
@@ -0,0 +1,5 @@
+{%- for post in site.categories[include.taxonomy] -%}
+ {%- unless post.hidden -%}
+ {% include archive-single.html %}
+ {%- endunless -%}
+{%- endfor -%}
diff --git a/docs/_includes/posts-tag.html b/docs/_includes/posts-tag.html
new file mode 100644
index 00000000..46fade02
--- /dev/null
+++ b/docs/_includes/posts-tag.html
@@ -0,0 +1,5 @@
+{%- for post in site.tags[include.taxonomy] -%}
+ {%- unless post.hidden -%}
+ {% include archive-single.html %}
+ {%- endunless -%}
+{%- endfor -%}
diff --git a/docs/_includes/scripts.html b/docs/_includes/scripts.html
new file mode 100644
index 00000000..bbdaddff
--- /dev/null
+++ b/docs/_includes/scripts.html
@@ -0,0 +1,28 @@
+{% if site.footer_scripts %}
+ {% for script in site.footer_scripts %}
+
+ {% endfor %}
+{% else %}
+
+{% endif %}
+
+{% if site.search == true or page.layout == "search" %}
+ {%- assign search_provider = site.search_provider | default: "lunr" -%}
+ {%- case search_provider -%}
+ {%- when "lunr" -%}
+ {% include_cached search/lunr-search-scripts.html %}
+ {%- when "google" -%}
+ {% include_cached search/google-search-scripts.html %}
+ {%- when "algolia" -%}
+ {% include_cached search/algolia-search-scripts.html %}
+ {%- endcase -%}
+{% endif %}
+
+{% include analytics.html %}
+{% include /comments-providers/scripts.html %}
+
+{% if site.after_footer_scripts %}
+ {% for script in site.after_footer_scripts %}
+
+ {% endfor %}
+{% endif %}
diff --git a/docs/_includes/search/algolia-search-scripts.html b/docs/_includes/search/algolia-search-scripts.html
new file mode 100644
index 00000000..2728d290
--- /dev/null
+++ b/docs/_includes/search/algolia-search-scripts.html
@@ -0,0 +1,61 @@
+
+
+
+
+
+
diff --git a/docs/_includes/search/google-search-scripts.html b/docs/_includes/search/google-search-scripts.html
new file mode 100644
index 00000000..4af7423b
--- /dev/null
+++ b/docs/_includes/search/google-search-scripts.html
@@ -0,0 +1,30 @@
+
\ No newline at end of file
diff --git a/docs/_includes/search/lunr-search-scripts.html b/docs/_includes/search/lunr-search-scripts.html
new file mode 100644
index 00000000..574c3900
--- /dev/null
+++ b/docs/_includes/search/lunr-search-scripts.html
@@ -0,0 +1,10 @@
+{% assign lang = site.locale | slice: 0,2 | default: "en" %}
+{% case lang %}
+{% when "gr" %}
+ {% assign lang = "gr" %}
+{% else %}
+ {% assign lang = "en" %}
+{% endcase %}
+
+
+
\ No newline at end of file
diff --git a/docs/_includes/search/search_form.html b/docs/_includes/search/search_form.html
new file mode 100644
index 00000000..b9de365c
--- /dev/null
+++ b/docs/_includes/search/search_form.html
@@ -0,0 +1,26 @@
+
+ {%- assign search_provider = site.search_provider | default: "lunr" -%}
+ {%- case search_provider -%}
+ {%- when "lunr" -%}
+
+
+ {%- when "google" -%}
+
+
+
+
+ {%- when "algolia" -%}
+
+
+ {%- endcase -%}
+
diff --git a/docs/_includes/seo.html b/docs/_includes/seo.html
new file mode 100644
index 00000000..c9d01e94
--- /dev/null
+++ b/docs/_includes/seo.html
@@ -0,0 +1,158 @@
+
+{%- if site.url -%}
+ {%- assign seo_url = site.url | append: site.baseurl -%}
+{%- endif -%}
+{%- assign seo_url = seo_url | default: site.github.url -%}
+
+{% assign title_separator = site.title_separator | default: '-' | replace: '|', '|' %}
+
+{%- if page.title -%}
+ {%- assign seo_title = page.title | append: " " | append: title_separator | append: " " | append: site.title -%}
+{%- endif -%}
+
+{%- if seo_title -%}
+ {%- assign seo_title = seo_title | markdownify | strip_html | strip_newlines | escape_once -%}
+{%- endif -%}
+
+{% if page.canonical_url %}
+ {%- assign canonical_url = page.canonical_url %}
+{% else %}
+ {%- assign canonical_url = page.url | replace: "index.html", "" | absolute_url %}
+{% endif %}
+
+{%- assign seo_description = page.description | default: page.excerpt | default: site.description -%}
+{%- if seo_description -%}
+ {%- assign seo_description = seo_description | markdownify | strip_html | newline_to_br | strip_newlines | replace: ' ', ' ' | escape_once | strip -%}
+{%- endif -%}
+
+{%- assign author = page.author | default: page.authors[0] | default: site.author -%}
+{%- assign author = site.data.authors[author] | default: author -%}
+
+{%- if author.twitter -%}
+ {%- assign author_twitter = author.twitter | replace: "@", "" -%}
+{%- endif -%}
+
+{%- assign page_large_image = page.header.og_image | default: page.header.overlay_image | default: page.header.image | absolute_url -%}
+{%- assign page_large_image = page_large_image | escape -%}
+
+{%- assign page_teaser_image = page.header.teaser | default: site.og_image | absolute_url -%}
+{%- assign page_teaser_image = page_teaser_image | escape -%}
+
+{%- assign site_og_image = site.og_image | absolute_url -%}
+{%- assign site_og_image = site_og_image | escape -%}
+
+{%- if page.date -%}
+ {%- assign og_type = "article" -%}
+{%- else -%}
+ {%- assign og_type = "website" -%}
+{%- endif -%}
+
+{{ seo_title | default: site.title }}{% if paginator %}{% unless paginator.page == 1 %} {{ title_separator }} {{ site.data.ui-text[site.locale].page | default: "Page" }} {{ paginator.page }}{% endunless %}{% endif %}
+
+
+{% if author.name %}
+
+ {% if og_type == "article" %}
+
+ {% endif %}
+{% endif %}
+
+
+
+
+
+
+
+{% if seo_description %}
+
+{% endif %}
+
+{% if page_large_image %}
+
+{% elsif page_teaser_image %}
+
+{% endif %}
+
+{% if site.twitter.username %}
+
+
+
+
+
+ {% if page_large_image %}
+
+
+ {% else %}
+
+ {% if page_teaser_image %}
+
+ {% endif %}
+ {% endif %}
+
+ {% if author_twitter %}
+
+ {% endif %}
+{% endif %}
+
+{% if page.date %}
+
+{% endif %}
+
+{% if og_type == "article" and page.last_modified_at %}
+
+{% endif %}
+
+{% if site.facebook %}
+ {% if site.facebook.publisher %}
+
+ {% endif %}
+
+ {% if site.facebook.app_id %}
+
+ {% endif %}
+{% endif %}
+
+
+
+{% if paginator.previous_page %}
+
+{% endif %}
+{% if paginator.next_page %}
+
+{% endif %}
+
+
+
+{% if site.google_site_verification %}
+
+{% endif %}
+{% if site.bing_site_verification %}
+
+{% endif %}
+{% if site.alexa_site_verification %}
+
+{% endif %}
+{% if site.yandex_site_verification %}
+
+{% endif %}
+{% if site.naver_site_verification %}
+
+{% endif %}
+{% if site.baidu_site_verification %}
+
+{% endif %}
+
diff --git a/docs/_includes/sidebar.html b/docs/_includes/sidebar.html
new file mode 100644
index 00000000..a4ca1ca7
--- /dev/null
+++ b/docs/_includes/sidebar.html
@@ -0,0 +1,19 @@
+{% if page.author_profile or layout.author_profile or page.sidebar %}
+
+{% endif %}
diff --git a/docs/_includes/skip-links.html b/docs/_includes/skip-links.html
new file mode 100644
index 00000000..c2d52235
--- /dev/null
+++ b/docs/_includes/skip-links.html
@@ -0,0 +1,7 @@
+
+
+
diff --git a/docs/_includes/social-share.html b/docs/_includes/social-share.html
new file mode 100644
index 00000000..0b377982
--- /dev/null
+++ b/docs/_includes/social-share.html
@@ -0,0 +1,11 @@
+
+ {% if site.data.ui-text[site.locale].share_on_label %}
+ {{ site.data.ui-text[site.locale].share_on_label | default: "Share on" }}
+ {% endif %}
+
+
+
+ Facebook
+
+ LinkedIn
+
diff --git a/docs/_includes/tag-list.html b/docs/_includes/tag-list.html
new file mode 100644
index 00000000..5893ee4e
--- /dev/null
+++ b/docs/_includes/tag-list.html
@@ -0,0 +1,19 @@
+{% case site.tag_archive.type %}
+ {% when "liquid" %}
+ {% assign path_type = "#" %}
+ {% when "jekyll-archives" %}
+ {% assign path_type = nil %}
+{% endcase %}
+
+{% if site.tag_archive.path %}
+ {% assign tags_sorted = page.tags | sort_natural %}
+
+
+ {{ site.data.ui-text[site.locale].tags_label | default: "Tags:" }}
+
+ {% for tag_word in tags_sorted %}
+ {{ tag_word }} {% unless forloop.last %}, {% endunless %}
+ {% endfor %}
+
+
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/toc b/docs/_includes/toc
new file mode 100644
index 00000000..6423ccdc
--- /dev/null
+++ b/docs/_includes/toc
@@ -0,0 +1,7 @@
+
\ No newline at end of file
diff --git a/docs/_includes/toc.html b/docs/_includes/toc.html
new file mode 100644
index 00000000..8c710072
--- /dev/null
+++ b/docs/_includes/toc.html
@@ -0,0 +1,182 @@
+{% capture tocWorkspace %}
+ {% comment %}
+ Copyright (c) 2017 Vladimir "allejo" Jimenez
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
+ {% endcomment %}
+ {% comment %}
+ Version 1.1.0
+ https://github.com/allejo/jekyll-toc
+
+ "...like all things liquid - where there's a will, and ~36 hours to spare, there's usually a/some way" ~jaybe
+
+ Usage:
+ {% include toc.html html=content sanitize=true class="inline_toc" id="my_toc" h_min=2 h_max=3 %}
+
+ Parameters:
+ * html (string) - the HTML of compiled markdown generated by kramdown in Jekyll
+
+ Optional Parameters:
+ * sanitize (bool) : false - when set to true, the headers will be stripped of any HTML in the TOC
+ * class (string) : '' - a CSS class assigned to the TOC
+ * id (string) : '' - an ID to assigned to the TOC
+ * h_min (int) : 1 - the minimum TOC header level to use; any header lower than this value will be ignored
+ * h_max (int) : 6 - the maximum TOC header level to use; any header greater than this value will be ignored
+ * ordered (bool) : false - when set to true, an ordered list will be outputted instead of an unordered list
+ * item_class (string) : '' - add custom class(es) for each list item; has support for '%level%' placeholder, which is the current heading level
+ * submenu_class (string) : '' - add custom class(es) for each child group of headings; has support for '%level%' placeholder which is the current "submenu" heading level
+ * base_url (string) : '' - add a base url to the TOC links for when your TOC is on another page than the actual content
+ * anchor_class (string) : '' - add custom class(es) for each anchor element
+ * skip_no_ids (bool) : false - skip headers that do not have an `id` attribute
+
+ Output:
+ An ordered or unordered list representing the table of contents of a markdown block. This snippet will only
+ generate the table of contents and will NOT output the markdown given to it
+ {% endcomment %}
+
+ {% capture newline %}
+ {% endcapture %}
+ {% assign newline = newline | rstrip %}
+
+ {% capture deprecation_warnings %}{% endcapture %}
+
+ {% if include.baseurl %}
+ {% capture deprecation_warnings %}{{ deprecation_warnings }}{{ newline }}{% endcapture %}
+ {% endif %}
+
+ {% if include.skipNoIDs %}
+ {% capture deprecation_warnings %}{{ deprecation_warnings }}{{ newline }}{% endcapture %}
+ {% endif %}
+
+ {% capture jekyll_toc %}{% endcapture %}
+ {% assign orderedList = include.ordered | default: false %}
+ {% assign baseURL = include.base_url | default: include.baseurl | default: '' %}
+ {% assign skipNoIDs = include.skip_no_ids | default: include.skipNoIDs | default: false %}
+ {% assign minHeader = include.h_min | default: 1 %}
+ {% assign maxHeader = include.h_max | default: 6 %}
+ {% assign nodes = include.html | strip | split: ' maxHeader %}
+ {% continue %}
+ {% endif %}
+
+ {% assign _workspace = node | split: ' ' | first }}>{% endcapture %}
+ {% assign header = _workspace[0] | replace: _hAttrToStrip, '' %}
+
+ {% if include.item_class and include.item_class != blank %}
+ {% capture listItemClass %} class="{{ include.item_class | replace: '%level%', currLevel | split: '.' | join: ' ' }}"{% endcapture %}
+ {% endif %}
+
+ {% if include.submenu_class and include.submenu_class != blank %}
+ {% assign subMenuLevel = currLevel | minus: 1 %}
+ {% capture subMenuClass %} class="{{ include.submenu_class | replace: '%level%', subMenuLevel | split: '.' | join: ' ' }}"{% endcapture %}
+ {% endif %}
+
+ {% capture anchorBody %}{% if include.sanitize %}{{ header | strip_html }}{% else %}{{ header }}{% endif %}{% endcapture %}
+
+ {% if htmlID %}
+ {% capture anchorAttributes %} href="{% if baseURL %}{{ baseURL }}{% endif %}#{{ htmlID }}"{% endcapture %}
+
+ {% if include.anchor_class %}
+ {% capture anchorAttributes %}{{ anchorAttributes }} class="{{ include.anchor_class | split: '.' | join: ' ' }}"{% endcapture %}
+ {% endif %}
+
+ {% capture listItem %}{{ anchorBody }} {% endcapture %}
+ {% elsif skipNoIDs == true %}
+ {% continue %}
+ {% else %}
+ {% capture listItem %}{{ anchorBody }}{% endcapture %}
+ {% endif %}
+
+ {% if currLevel > lastLevel %}
+ {% capture jekyll_toc %}{{ jekyll_toc }}<{{ listModifier }}{{ subMenuClass }}>{% endcapture %}
+ {% elsif currLevel < lastLevel %}
+ {% assign repeatCount = lastLevel | minus: currLevel %}
+
+ {% for i in (1..repeatCount) %}
+ {% capture jekyll_toc %}{{ jekyll_toc }}{{ listModifier }}>{% endcapture %}
+ {% endfor %}
+
+ {% capture jekyll_toc %}{{ jekyll_toc }}{% endcapture %}
+ {% else %}
+ {% capture jekyll_toc %}{{ jekyll_toc }}{% endcapture %}
+ {% endif %}
+
+ {% capture jekyll_toc %}{{ jekyll_toc }}{{ listItem }}{% endcapture %}
+
+ {% assign lastLevel = currLevel %}
+ {% assign firstHeader = false %}
+ {% endfor %}
+
+ {% assign repeatCount = minHeader | minus: 1 %}
+ {% assign repeatCount = lastLevel | minus: repeatCount %}
+ {% for i in (1..repeatCount) %}
+ {% capture jekyll_toc %}{{ jekyll_toc }} {{ listModifier }}>{% endcapture %}
+ {% endfor %}
+
+ {% if jekyll_toc != '' %}
+ {% assign rootAttributes = '' %}
+ {% if include.class and include.class != blank %}
+ {% capture rootAttributes %} class="{{ include.class | split: '.' | join: ' ' }}"{% endcapture %}
+ {% endif %}
+
+ {% if include.id and include.id != blank %}
+ {% capture rootAttributes %}{{ rootAttributes }} id="{{ include.id }}"{% endcapture %}
+ {% endif %}
+
+ {% if rootAttributes %}
+ {% assign nodes = jekyll_toc | split: '>' %}
+ {% capture jekyll_toc %}<{{ listModifier }}{{ rootAttributes }}>{{ nodes | shift | join: '>' }}>{% endcapture %}
+ {% endif %}
+ {% endif %}
+{% endcapture %}{% assign tocWorkspace = '' %}{{ deprecation_warnings }}{{ jekyll_toc }}
diff --git a/docs/_includes/video b/docs/_includes/video
new file mode 100644
index 00000000..c85a868c
--- /dev/null
+++ b/docs/_includes/video
@@ -0,0 +1,24 @@
+{% capture video_id %}{{ include.id }}{% endcapture %}
+{% capture video_provider %}{{ include.provider }}{% endcapture %}
+{% capture video_danmaku %}{{ include.danmaku | default: 0 }}{% endcapture %}
+
+{% capture video_src %}
+ {% case video_provider %}
+ {% when "vimeo" %}
+ https://player.vimeo.com/video/{{ video_id }}?dnt=true
+ {% when "youtube" %}
+ https://www.youtube-nocookie.com/embed/{{ video_id }}
+ {% when "google-drive" %}
+ https://drive.google.com/file/d/{{ video_id }}/preview
+ {% when "bilibili" %}
+ https://player.bilibili.com/player.html?bvid={{ video_id }}&page=1&as_wide=1&high_quality=1&danmaku={{ video_danmaku }}
+ {% endcase %}
+{% endcapture %}
+{% assign video_src = video_src | strip %}
+
+
+{% unless video_src == "" %}
+
+
+
+{% endunless %}
diff --git a/docs/_layouts/archive-taxonomy.html b/docs/_layouts/archive-taxonomy.html
new file mode 100644
index 00000000..eb62a874
--- /dev/null
+++ b/docs/_layouts/archive-taxonomy.html
@@ -0,0 +1,29 @@
+---
+layout: default
+author_profile: false
+---
+
+{% if page.header.overlay_color or page.header.overlay_image or page.header.image %}
+ {% include page__hero.html %}
+{% elsif page.header.video.id and page.header.video.provider %}
+ {% include page__hero_video.html %}
+{% endif %}
+
+{% if page.url != "/" and site.breadcrumbs %}
+ {% unless paginator %}
+ {% include breadcrumbs.html %}
+ {% endunless %}
+{% endif %}
+
+
+ {% include sidebar.html %}
+
+
+ {% unless page.header.overlay_color or page.header.overlay_image %}
+
{{ page.title }}
+ {% endunless %}
+ {% for post in page.posts %}
+ {% include archive-single.html %}
+ {% endfor %}
+
+
diff --git a/docs/_layouts/archive.html b/docs/_layouts/archive.html
new file mode 100644
index 00000000..08beb89a
--- /dev/null
+++ b/docs/_layouts/archive.html
@@ -0,0 +1,26 @@
+---
+layout: default
+---
+
+{% if page.header.overlay_color or page.header.overlay_image or page.header.image %}
+ {% include page__hero.html %}
+{% elsif page.header.video.id and page.header.video.provider %}
+ {% include page__hero_video.html %}
+{% endif %}
+
+{% if page.url != "/" and site.breadcrumbs %}
+ {% unless paginator %}
+ {% include breadcrumbs.html %}
+ {% endunless %}
+{% endif %}
+
+
+ {% include sidebar.html %}
+
+
+ {% unless page.header.overlay_color or page.header.overlay_image %}
+
{{ page.title }}
+ {% endunless %}
+ {{ content }}
+
+
\ No newline at end of file
diff --git a/docs/_layouts/categories.html b/docs/_layouts/categories.html
new file mode 100644
index 00000000..f5448a29
--- /dev/null
+++ b/docs/_layouts/categories.html
@@ -0,0 +1,43 @@
+---
+layout: archive
+---
+
+{{ content }}
+
+{% assign categories_max = 0 %}
+{% for category in site.categories %}
+ {% if category[1].size > categories_max %}
+ {% assign categories_max = category[1].size %}
+ {% endif %}
+{% endfor %}
+
+
+ {% for i in (1..categories_max) reversed %}
+ {% for category in site.categories %}
+ {% if category[1].size == i %}
+
+
+ {{ category[0] }} {{ i }}
+
+
+ {% endif %}
+ {% endfor %}
+ {% endfor %}
+
+
+{% assign entries_layout = page.entries_layout | default: 'list' %}
+{% for i in (1..categories_max) reversed %}
+ {% for category in site.categories %}
+ {% if category[1].size == i %}
+
+ {% endif %}
+ {% endfor %}
+{% endfor %}
diff --git a/docs/_layouts/category.html b/docs/_layouts/category.html
new file mode 100644
index 00000000..b281c856
--- /dev/null
+++ b/docs/_layouts/category.html
@@ -0,0 +1,10 @@
+---
+layout: archive
+---
+
+{{ content }}
+
+{% assign entries_layout = page.entries_layout | default: 'list' %}
+
+ {% include posts-category.html taxonomy=page.taxonomy type=entries_layout %}
+
diff --git a/docs/_layouts/collection.html b/docs/_layouts/collection.html
new file mode 100644
index 00000000..d23d0c72
--- /dev/null
+++ b/docs/_layouts/collection.html
@@ -0,0 +1,10 @@
+---
+layout: archive
+---
+
+{{ content }}
+
+{% assign entries_layout = page.entries_layout | default: 'list' %}
+
+ {% include documents-collection.html collection=page.collection sort_by=page.sort_by sort_order=page.sort_order type=entries_layout %}
+
diff --git a/docs/_layouts/compress.html b/docs/_layouts/compress.html
new file mode 100644
index 00000000..bb34487d
--- /dev/null
+++ b/docs/_layouts/compress.html
@@ -0,0 +1,10 @@
+---
+# Jekyll layout that compresses HTML
+# v3.1.0
+# http://jch.penibelst.de/
+# © 2014–2015 Anatol Broder
+# MIT License
+---
+
+{% capture _LINE_FEED %}
+{% endcapture %}{% if site.compress_html.ignore.envs contains jekyll.environment or site.compress_html.ignore.envs == "all" %}{{ content }}{% else %}{% capture _content %}{{ content }}{% endcapture %}{% assign _profile = site.compress_html.profile %}{% if site.compress_html.endings == "all" %}{% assign _endings = "html head body li dt dd optgroup option colgroup caption thead tbody tfoot tr td th" | split: " " %}{% else %}{% assign _endings = site.compress_html.endings %}{% endif %}{% for _element in _endings %}{% capture _end %}{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _end %}{% endfor %}{% if _profile and _endings %}{% assign _profile_endings = _content | size | plus: 1 %}{% endif %}{% for _element in site.compress_html.startings %}{% capture _start %}<{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _start %}{% endfor %}{% if _profile and site.compress_html.startings %}{% assign _profile_startings = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.comments == "all" %}{% assign _comments = "" | split: " " %}{% else %}{% assign _comments = site.compress_html.comments %}{% endif %}{% if _comments.size == 2 %}{% capture _comment_befores %}.{{ _content }}{% endcapture %}{% assign _comment_befores = _comment_befores | split: _comments.first %}{% for _comment_before in _comment_befores %}{% if forloop.first %}{% continue %}{% endif %}{% capture _comment_outside %}{% if _carry %}{{ _comments.first }}{% endif %}{{ _comment_before }}{% endcapture %}{% capture _comment %}{% unless _carry %}{{ _comments.first }}{% endunless %}{{ _comment_outside | split: _comments.last | first }}{% if _comment_outside contains _comments.last %}{{ _comments.last }}{% assign _carry = false %}{% else %}{% assign _carry = true %}{% endif %}{% endcapture %}{% assign _content = _content | remove_first: _comment %}{% endfor %}{% if _profile %}{% assign _profile_comments = _content | size | plus: 1 %}{% endif %}{% endif %}{% assign _pre_befores = _content | split: "" %}{% assign _pres_after = "" %}{% if _pres.size != 0 %}{% if site.compress_html.blanklines %}{% assign _lines = _pres.last | split: _LINE_FEED %}{% capture _pres_after %}{% for _line in _lines %}{% assign _trimmed = _line | split: " " | join: " " %}{% if _trimmed != empty or forloop.last %}{% unless forloop.first %}{{ _LINE_FEED }}{% endunless %}{{ _line }}{% endif %}{% endfor %}{% endcapture %}{% else %}{% assign _pres_after = _pres.last | split: " " | join: " " %}{% endif %}{% endif %}{% capture _content %}{{ _content }}{% if _pre_before contains " " %}{% endif %}{% unless _pre_before contains " " and _pres.size == 1 %}{{ _pres_after }}{% endunless %}{% endcapture %}{% endfor %}{% if _profile %}{% assign _profile_collapse = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.clippings == "all" %}{% assign _clippings = "html head title base link meta style body article section nav aside h1 h2 h3 h4 h5 h6 hgroup header footer address p hr blockquote ol ul li dl dt dd figure figcaption main div table caption colgroup col tbody thead tfoot tr td th" | split: " " %}{% else %}{% assign _clippings = site.compress_html.clippings %}{% endif %}{% for _element in _clippings %}{% assign _edges = " ; ; ;" | replace: "e", _element | split: ";" %}{% assign _content = _content | replace: _edges[0], _edges[1] | replace: _edges[2], _edges[3] | replace: _edges[4], _edges[5] %}{% endfor %}{% if _profile and _clippings %}{% assign _profile_clippings = _content | size | plus: 1 %}{% endif %}{{ _content }}{% if _profile %} Step Bytes raw {{ content | size }}{% if _profile_endings %} endings {{ _profile_endings }}{% endif %}{% if _profile_startings %} startings {{ _profile_startings }}{% endif %}{% if _profile_comments %} comments {{ _profile_comments }}{% endif %}{% if _profile_collapse %} collapse {{ _profile_collapse }}{% endif %}{% if _profile_clippings %} clippings {{ _profile_clippings }}{% endif %}
{% endif %}{% endif %}
diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html
new file mode 100644
index 00000000..5abd9645
--- /dev/null
+++ b/docs/_layouts/default.html
@@ -0,0 +1,42 @@
+---
+---
+
+
+
+
+
+ {% include head.html %}
+ {% include head/custom.html %}
+
+
+
+ {% include_cached skip-links.html %}
+ {% include_cached browser-upgrade.html %}
+ {% include_cached masthead.html %}
+
+
+ {{ content }}
+
+
+ {% if site.search == true %}
+
+ {% include_cached search/search_form.html %}
+
+ {% endif %}
+
+
+
+ {% include scripts.html %}
+
+
+
diff --git a/docs/_layouts/home.html b/docs/_layouts/home.html
new file mode 100644
index 00000000..02e96eb8
--- /dev/null
+++ b/docs/_layouts/home.html
@@ -0,0 +1,22 @@
+---
+layout: archive
+---
+
+{{ content }}
+
+{{ site.data.ui-text[site.locale].recent_posts | default: "Recent Posts" }}
+
+{% if paginator %}
+ {% assign posts = paginator.posts %}
+{% else %}
+ {% assign posts = site.posts %}
+{% endif %}
+
+{% assign entries_layout = page.entries_layout | default: 'list' %}
+
+ {% for post in posts %}
+ {% include archive-single.html type=entries_layout %}
+ {% endfor %}
+
+
+{% include paginator.html %}
diff --git a/docs/_layouts/posts.html b/docs/_layouts/posts.html
new file mode 100644
index 00000000..13fc707c
--- /dev/null
+++ b/docs/_layouts/posts.html
@@ -0,0 +1,30 @@
+---
+layout: archive
+---
+
+{{ content }}
+
+
+ {% assign postsInYear = site.posts | where_exp: "item", "item.hidden != true" | group_by_exp: 'post', 'post.date | date: "%Y"' %}
+ {% for year in postsInYear %}
+
+
+ {{ year.name }} {{ year.items | size }}
+
+
+ {% endfor %}
+
+
+{% assign entries_layout = page.entries_layout | default: 'list' %}
+{% assign postsByYear = site.posts | where_exp: "item", "item.hidden != true" | group_by_exp: 'post', 'post.date | date: "%Y"' %}
+{% for year in postsByYear %}
+
+{% endfor %}
diff --git a/docs/_layouts/search.html b/docs/_layouts/search.html
new file mode 100644
index 00000000..9e661a36
--- /dev/null
+++ b/docs/_layouts/search.html
@@ -0,0 +1,42 @@
+---
+layout: default
+---
+
+{% if page.header.overlay_color or page.header.overlay_image or page.header.image %}
+ {% include page__hero.html %}
+{% endif %}
+
+{% if page.url != "/" and site.breadcrumbs %}
+ {% unless paginator %}
+ {% include breadcrumbs.html %}
+ {% endunless %}
+{% endif %}
+
+
+ {% include sidebar.html %}
+
+
+ {% unless page.header.overlay_color or page.header.overlay_image %}
+
{{ page.title }}
+ {% endunless %}
+
+ {{ content }}
+
+ {%- assign search_provider = site.search_provider | default: "lunr" -%}
+ {%- case search_provider -%}
+ {%- when "lunr" -%}
+
+
+ {%- when "google" -%}
+
+
+
+
+ {%- when "algolia" -%}
+
+
+ {%- endcase -%}
+
+
diff --git a/docs/_layouts/single.html b/docs/_layouts/single.html
new file mode 100644
index 00000000..852c4ca9
--- /dev/null
+++ b/docs/_layouts/single.html
@@ -0,0 +1,91 @@
+---
+layout: default
+---
+
+{% if page.header.overlay_color or page.header.overlay_image or page.header.image %}
+ {% include page__hero.html %}
+{% elsif page.header.video.id and page.header.video.provider %}
+ {% include page__hero_video.html %}
+{% endif %}
+
+{% if page.url != "/" and site.breadcrumbs %}
+ {% unless paginator %}
+ {% include breadcrumbs.html %}
+ {% endunless %}
+{% endif %}
+
+
+ {% include sidebar.html %}
+
+
+ {% if page.title %} {% endif %}
+ {% if page.excerpt %} {% endif %}
+ {% if page.date %} {% endif %}
+ {% if page.last_modified_at %} {% endif %}
+
+
+ {% unless page.header.overlay_color or page.header.overlay_image %}
+
+ {% if page.title %}{% endif %}
+ {% include page__meta.html %}
+
+ {% endunless %}
+
+
+ {% if page.toc %}
+
+ {% endif %}
+ {{ content }}
+ {% if page.link %}{% endif %}
+
+
+
+ {% if site.data.ui-text[site.locale].meta_label %}
+ {{ site.data.ui-text[site.locale].meta_label }}
+ {% endif %}
+ {% include page__taxonomy.html %}
+ {% include page__date.html %}
+
+
+ {% if page.share %}{% include social-share.html %}{% endif %}
+
+ {% include post_pagination.html %}
+
+
+ {% if jekyll.environment == 'production' and site.comments.provider and page.comments %}
+ {% include comments.html %}
+ {% endif %}
+
+
+ {% comment %}{% endcomment %}
+ {% if page.id and page.related and site.related_posts.size > 0 %}
+
+
{{ site.data.ui-text[site.locale].related_label | default: "You May Also Enjoy" }}
+
+ {% for post in site.related_posts limit:4 %}
+ {% include archive-single.html type="grid" %}
+ {% endfor %}
+
+
+ {% comment %}{% endcomment %}
+ {% elsif page.id and page.related %}
+
+
{{ site.data.ui-text[site.locale].related_label | default: "You May Also Enjoy" }}
+
+ {% for post in site.posts limit:4 %}
+ {% if post.id == page.id %}
+ {% continue %}
+ {% endif %}
+ {% include archive-single.html type="grid" %}
+ {% endfor %}
+
+
+ {% endif %}
+
\ No newline at end of file
diff --git a/docs/_layouts/splash.html b/docs/_layouts/splash.html
new file mode 100644
index 00000000..21165024
--- /dev/null
+++ b/docs/_layouts/splash.html
@@ -0,0 +1,22 @@
+---
+layout: default
+---
+
+{% if page.header.overlay_color or page.header.overlay_image or page.header.image %}
+ {% include page__hero.html %}
+{% elsif page.header.video.id and page.header.video.provider %}
+ {% include page__hero_video.html %}
+{% endif %}
+
+
+
+ {% if page.title %} {% endif %}
+ {% if page.excerpt %} {% endif %}
+ {% if page.date %} {% endif %}
+ {% if page.last_modified_at %} {% endif %}
+
+
+
+
diff --git a/docs/_layouts/tag.html b/docs/_layouts/tag.html
new file mode 100644
index 00000000..8b1c1885
--- /dev/null
+++ b/docs/_layouts/tag.html
@@ -0,0 +1,10 @@
+---
+layout: archive
+---
+
+{{ content }}
+
+{% assign entries_layout = page.entries_layout | default: 'list' %}
+
+ {% include posts-tag.html taxonomy=page.taxonomy type=entries_layout %}
+
diff --git a/docs/_layouts/tags.html b/docs/_layouts/tags.html
new file mode 100644
index 00000000..daa11828
--- /dev/null
+++ b/docs/_layouts/tags.html
@@ -0,0 +1,43 @@
+---
+layout: archive
+---
+
+{{ content }}
+
+{% assign tags_max = 0 %}
+{% for tag in site.tags %}
+ {% if tag[1].size > tags_max %}
+ {% assign tags_max = tag[1].size %}
+ {% endif %}
+{% endfor %}
+
+
+ {% for i in (1..tags_max) reversed %}
+ {% for tag in site.tags %}
+ {% if tag[1].size == i %}
+
+
+ {{ tag[0] }} {{ i }}
+
+
+ {% endif %}
+ {% endfor %}
+ {% endfor %}
+
+
+{% assign entries_layout = page.entries_layout | default: 'list' %}
+{% for i in (1..tags_max) reversed %}
+ {% for tag in site.tags %}
+ {% if tag[1].size == i %}
+
+ {% endif %}
+ {% endfor %}
+{% endfor %}
diff --git a/docs/fiat-payment-methods.md b/docs/_pages/fiat-payment-methods.md
similarity index 89%
rename from docs/fiat-payment-methods.md
rename to docs/_pages/fiat-payment-methods.md
index 7c223974..54ed3cc8 100644
--- a/docs/fiat-payment-methods.md
+++ b/docs/_pages/fiat-payment-methods.md
@@ -1,3 +1,14 @@
+---
+layout: single
+title: RoboSats - Fiat Best Practices
+permalink: /docs/fiat-payment-best-practices/
+toc: true
+toc_stickly: true
+sidebar:
+ title: "Fiat Best Practices"
+ nav: docs
+---
+
# Fiat payment method
Currently, there are no restrictions on the fiat payment method. You can pay with any method that both you and your peer agree on. This includes the higher risk method such as PayPal, Venmo, and Cash apps. However, the payment method with lower risk is recommended, you can learn more details about the characteristics and differences of each fiat payment method from Bisq wiki .
@@ -48,20 +59,20 @@ If you are a buyer and you need to use “send money to a friend or family membe
In PayPal desktop, it is located below the drop-down currency list, it should be labeled as "Sending to a friend".
If it is labeled otherwise, you'll need to click "Change" on the right to change the payment type.
-
+
Then select "Sending to a friend" in the payment type choosing page.
-
+
#### PayPal Mobile
In PayPal mobile, it is located below the payment method (In this case is VISA), it should be labeled as "Friends or Family".
If it is labeled otherwise, you'll need to tab ">" on the right to change the payment type.
-
+
Then select "Friends or Family" in the payment type choosing page.
-
+
diff --git a/docs/how-to-use.md b/docs/_pages/how-to-use.md
similarity index 85%
rename from docs/how-to-use.md
rename to docs/_pages/how-to-use.md
index 1c360d5b..70129c47 100644
--- a/docs/how-to-use.md
+++ b/docs/_pages/how-to-use.md
@@ -1,3 +1,14 @@
+---
+layout: single
+title: RoboSats - How to Use
+permalink: /docs/how-to-use/
+toc: true
+toc_stickly: true
+sidebar:
+ title: "How to use"
+ nav: docs
+---
+
# How to use RoboSats (v0.1.0)
RoboSats is focused on user friendliness. The platform is totally self-explanatory, so one could say a tutorial is really not necessary. However, it really helps to feel comfortable when trading if you already know what are the next steps to come so nothing surprises you. After all, bitcoin p2p exchanges are very intimidating! Fear no more, RoboSats keeps it really simple and you simply cannot do things wrong! :D
@@ -7,7 +18,7 @@ This document has two complete walkthroughs: 1) as a buyer that takes an order a
## User Generation Home Page
RoboSats help users preserve their privacy by using newly generated avatars in every trade. Avatars are super easy to generate!
-
+
RoboSats welcomes you right away with your unique robot avatar. The robot is deterministically generated based on the token you see below it. This token is all you need to recover the avatar in the future, so make sure to **back it up safely!**
@@ -17,14 +28,14 @@ The tokens are generated in your own browser. However, if you do not trust your
I was really not happy of being "HomelessCash"! :D So I just click on the dice icon to generate a new token and tap "Generate avatar" to get a new one
-
+
Ah, "JoyfulPain", so much better!! :)
The token will live in your browser memory for some time, so you still might have a chance to copy it later by tapping in the profile icon in the bottom left corner. However, your browser will forget your token if you refresh or close it!
-
+
It is best to write it down in paper... but that's a lot of work!! Most often it is good enough to simply copy it to clipboard and save it somewhere else. **If your browser crashes, your phone battery dies, or you lose connection during trading, you will need the token to log in again and continue with the trade!**
@@ -41,19 +52,19 @@ In RoboSats you can make new orders or take orders made by others. To be an _ord
We click on "View book" and have a look at the orders in the book page.
-
+
On a desktop browser, you can see at a glance all of the revelant information about the orders so you can decide which one to take. By default, the book will show "ANY" type of order (buy and sell) and "ANY" currency. Use the drop down menus at the top to select your preferences.
-
+
On a smartphone, however, not all of the columns fit on the screen. The nicknames, the type of order, the payment method and the exchange rate are hidden by default. You can tap on any column and tap "Show columns" to select what columns to make visible.
-
+
Another trick is to do a long tap or a swipe:
@@ -64,19 +75,19 @@ Another trick is to do a long tap or a swipe:
Example of long tapping/swiping above the currency:
-
+
Example of long tapping/swiping above the premium:
-
+
You can also tap on any order to see the full order page:
-
+
Every order has an expiration counter. By default, in RoboSats v0.1.0 new orders will stay public in the book for 6 hours.
@@ -88,19 +99,19 @@ When you are decided for an order to take simply tap the "Take Order" button. Yo
First thing is to lock a small fidelity bond (just 1% of the trade amount), so the seller knows you can be trusted. The satoshis in this bond will just freeze in your wallet. If you try to cheat or cancel unilaterally, you will lose the satoshis locked in the bond.
-
+
Scan or copy the invoice into your lightning wallet. It might show as a payment that is on transit, freeze or even seemingly break your wallet. You should always check on the RoboSats website whether the bond has been locked (your wallet will probably not tell you! Check [wallet compatibility list](https://github.com/Reckless-Satoshi/robosats/issues/44))
-
+
As soon as our bond is locked, RoboSats will ask you to provide a lightning invoice to send you the satoshis. Generate an invoice with the exact amount in your lightning wallet and submit it.
-
+
While you are submitting your payout invoice, the seller is asked to lock the trade escrow hold invoice. If you are faster than him, you would have to wait. Otherwise, you would already be able to chat with him.
@@ -108,13 +119,13 @@ While you are submitting your payout invoice, the seller is asked to lock the tr
There is a time limit of 3 hours to submit the invoice (buyer) and lock the trade escrow (seller). If the time runs out, the order will expire and the robot who did not follow with the contract obligations will lose the bond. This is a mechanism that helps prevent fake order spamming, wasting time of counterparts and DDOSing the order book.
-
+
As soon as the seller locks the satoshis, it is safe to send the fiat currency! As a buyer, you will have to ask the seller for the details to send fiat. Only share the strictly needed information about yourself to not compromise your privacy. Remember, in RoboSats v0.1.0 this chat is memoryless, so the conversation will be lost if you refresh the browser.
-
+
There is a time limit of 24 hours to complete the fiat exchange. If the time runs out, the order will expire and a dispute will be opened automatically. To avoid order expiration, **use always instant fiat payment methods**. For example, sending cash by ordinary mail is slow and will always trigger a dispute in v0.1.0. In the future longer expiry times will be possible.
@@ -122,7 +133,7 @@ There is a time limit of 24 hours to complete the fiat exchange. If the time run
As soon as you have sent the fiat, you should tap on "Confirm fiat sent" button. After that, the seller will have to confirm the fiat was received. As soon as he confirms the trade is finished and you will be paid out to your lightning wallet. You might see that it is "sending satoshis to buyer" but usually it is so fast you will simply see this screen. Enjoy your sats!
-
+
Rating the platform and leaving tips for improvement in our Telegram group or Github Issues is super appreciated!
@@ -132,13 +143,13 @@ Rating the platform and leaving tips for improvement in our Telegram group or Gi
It might happen that there are no active orders for the positioning and currency you want. In this case, there is no orders to SELL bitcoin for GBP.
-
+
We can create the order exactly has we want it. But mind that you need to publish an order that others want to take too!
-
+
In the maker page you are only required to enter the currency, order type (buy/sell) and amount. However, it is best practice to specify the payment methods you allow. It might be also helpful to set a premium/discount for your order to be taken faster. Remember that as a seller you can incentivze buyers to take your order by lowering the premium. If there are too many buyers, however, you can increase the premium to have a trading profit. Alternatively, you can set a fixed amount of Satoshis.
@@ -146,13 +157,13 @@ In the maker page you are only required to enter the currency, order type (buy/s
*Limits: in Robosats v0.1.0 an order cannot be smaller than 20.000 Satoshis. It cannot be larger than 1,200,000 Satoshis in order to avoid lightning routing failures. This limit will be increased in the future.*
-
+
You have to copy or scan the invoice with your lightning wallet in order to lock your fidelity maker bond (just 1% of the trade amount)). By locking this bond, the takers know you can be trusted and are committed to follow with this trade. In your wallet it might show as a payment that is on transit, freeze or even seemingly break your wallet. You should always check on the RoboSats website whether the bond has been locked (your wallet will probably not tell you! Check [wallet compatibility list](https://github.com/Reckless-Satoshi/robosats/issues/44))
-
+
Your order will be public for 24 hours. You can check the time left to expiration by checking the "Order" tab. It can be canceled at any time without penalty before it is taken by another robot. Keep the contract tab open to be notified [with this sound](https://github.com/Reckless-Satoshi/robosats/raw/main/frontend/static/assets/sounds/taker-found.mp3). It might be best to do this on a desktop computer and turn on the volume, so you do not miss when your order is taken. It might take long! Maybe you even forget! You can also enable telegram notifications by pressing "Enable Telegram Notification" and then pressing "Start" in the chat. You will receive a welcome message as confirmation of the enabled notifications. Another message will be sent once a taker for your order is found.
@@ -162,37 +173,37 @@ Your order will be public for 24 hours. You can check the time left to expiratio
In the contract tab you can also see how many other orders are public for the same currency. You can also see how well does your premium ranks among all other orders for the same currency.
-
+
Hurray, someone took the order! They have 4 minutes to lock a taker fidelity bond, if they do not proceed, your order will be made public again automatically.
-
+
As soon as the taker locks the bond, you will have to lock the trade escrow. This is a lightning hold invoice and will also freeze in your wallet. It will be released only when you confirm you received the fiat payment or if there is a dispute between you and the taker.
-
+
Once you lock the trade escrow and the buyer submit the payout invoice it is safe to send fiat! Share with the buyer the minimal information needed to send you fiat. Remember, in RoboSats v0.1.0 this chat is memoryless, so the conversation will be lost if you refresh the browser.
-
+
The buyer has just confirmed he did his part! Now check until the fiat is in your account.
-
+
By confirming that you received the fiat, the escrow will be charged and sent to the buyer. So only do this once you are 100% sure the fiat is with you!
-
+
All done!! :D
@@ -202,7 +213,7 @@ All done!! :D
After the trade escrow has been posted and before the buyer confirms he sent the fiat it is possible to cancel the order. It might just happen that you both do not have a common way to send and receive fiat after all. You can agree to tap on the "Collaborative cancel" button. After the "Fiat sent" button is pressed by the buyer, the only way to cancel an order is by opening a dispute and involving the staff.
-
+
This is totally not recommended, one of the two traders would lose his fidelity bond except in exceptional cases (up to the discretion of the staff)
@@ -212,23 +223,23 @@ This is totally not recommended, one of the two traders would lose his fidelity
Misunderstandings happen. But also, there might be people willing to try to scam others. In this case *MakeshiftSource875* thought he could get away by not confirming he received the fiat, as if he was going to be able to keep the satoshis.
-
+
This is in fact not possible, as a dispute will be automatically open at expiration. However, if you know something fishy is going on, you should open a dispute.
-
+
In RoboSats v0.1.0 the dispute pipeline is not fully implemented in the web. Therefore, most contact and resolution has to happen through alternative methods. Be sure to send a contact method to the staff. You will have to write down full statement of facts, remember that the staff cannot read your private chat to judge about what happened. It is useful to send images/screenshots. For maximum privacy, these can be encrypted via PGP key and uploaded into any anonymous file sharing system.
-
+
Once the staff has resolved the dispute, the final order status will display the resolution. Make sure to check on the contact method provided to the staff. If you are a dispute winner, the staff will ask you again for a lightning network invoice to send the payout+bond (Your old invoice is probably expired!)
-
+
diff --git a/docs/how-to-use_de.md b/docs/_pages/how-to-use_de.md
similarity index 100%
rename from docs/how-to-use_de.md
rename to docs/_pages/how-to-use_de.md
diff --git a/docs/how-to-use_es.md b/docs/_pages/how-to-use_es.md
similarity index 100%
rename from docs/how-to-use_es.md
rename to docs/_pages/how-to-use_es.md
diff --git a/docs/sensitive-data-PGP-guide.md b/docs/_pages/sensitive-data-PGP-guide.md
similarity index 87%
rename from docs/sensitive-data-PGP-guide.md
rename to docs/_pages/sensitive-data-PGP-guide.md
index dc512aff..e0f510e3 100644
--- a/docs/sensitive-data-PGP-guide.md
+++ b/docs/_pages/sensitive-data-PGP-guide.md
@@ -1,3 +1,14 @@
+---
+layout: single
+title: RoboSats - Easy PGP Encryption
+permalink: /docs/pgp-encryption/
+toc: true
+toc_stickly: true
+sidebar:
+ title: "Easy PGP"
+ nav: docs
+---
+
# How to use OpenKeychain for cipher sensible data during RoboSats trade.
## Why encryption is needed?
@@ -9,7 +20,7 @@ Since RoboSats works over the TOR network all communication is end-to-end encryp
OpenKeychain is an open source Android app that allows to create and manage cryptographic key pairs and sign or/and encrypt/decrypt text and files. OpenKeychain is based on the well established OpenPGP standard making encryption compatible across devices and systems. For a list of compatible software for Windows, Mac OS, and other operating systems check [openpgp.org/software/](https://openpgp.org/software/). Since the concept is the same, this method can be replicated using any another application. OpenKeychain app can be found at F-droid.org [[Link]](https://f-droid.org/packages/org.sufficientlysecure.keychain/) or at Google play store [[Link]](https://play.google.com/store/apps/details?id=org.sufficientlysecure.keychain)
-
+
## Encryption schema.
@@ -17,7 +28,7 @@ OpenKeychain is an open source Android app that allows to create and manage cryp
In most cases, the sensitive information we would want to protect is the seller's fiat payment information, i.e. phone number, PayPal account, etc. So, the image below shows the encryption scheme that ensures that the seller payment information can only be read by the buyer.
-
+
The data exchange process has been divided into 3 easy steps:
@@ -37,7 +48,7 @@ The first step to ensure data confidentiality is to create a public/private key
-
+
@@ -49,7 +60,7 @@ Now the buyer is holding two keys, the private key must only be known by his own
-
+
@@ -63,7 +74,7 @@ Once the seller has the buyer's public key, the encryption schema show above can
-
+
diff --git a/docs/sensitive-data-PGP-guide_es.md b/docs/_pages/sensitive-data-PGP-guide_es.md
similarity index 100%
rename from docs/sensitive-data-PGP-guide_es.md
rename to docs/_pages/sensitive-data-PGP-guide_es.md
diff --git a/docs/_posts/2022-05-14-welcome-to-jekyll.markdown b/docs/_posts/2022-05-14-welcome-to-jekyll.markdown
new file mode 100644
index 00000000..c644a8a3
--- /dev/null
+++ b/docs/_posts/2022-05-14-welcome-to-jekyll.markdown
@@ -0,0 +1,29 @@
+---
+layout: post
+title: "Welcome to Jekyll!"
+date: 2022-05-14 06:28:14 -0500
+categories: jekyll update
+---
+You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.
+
+Jekyll requires blog post files to be named according to the following format:
+
+`YEAR-MONTH-DAY-title.MARKUP`
+
+Where `YEAR` is a fur-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.
+
+Jekyll also offers powerful support for code snippets:
+
+{% highlight ruby %}
+def print_hi(name)
+ puts "Hi, #{name}"
+end
+print_hi('Tom')
+#=> prints 'Hi, Tom' to STDOUT.
+{% endhighlight %}
+
+Check out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk].
+
+[jekyll-docs]: https://jekyllrb.com/docs/home
+[jekyll-gh]: https://github.com/jekyll/jekyll
+[jekyll-talk]: https://talk.jekyllrb.com/
diff --git a/docs/_sass/minimal-mistakes.scss b/docs/_sass/minimal-mistakes.scss
new file mode 100644
index 00000000..3b252e56
--- /dev/null
+++ b/docs/_sass/minimal-mistakes.scss
@@ -0,0 +1,40 @@
+/*!
+ * Minimal Mistakes Jekyll Theme 4.24.0 by Michael Rose
+ * Copyright 2013-2020 Michael Rose - mademistakes.com | @mmistakes
+ * Licensed under MIT (https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE)
+*/
+
+/* Variables */
+@import "minimal-mistakes/variables";
+
+/* Mixins and functions */
+@import "minimal-mistakes/vendor/breakpoint/breakpoint";
+@include breakpoint-set("to ems", true);
+@import "minimal-mistakes/vendor/magnific-popup/magnific-popup"; // Magnific Popup
+@import "minimal-mistakes/vendor/susy/susy";
+@import "minimal-mistakes/mixins";
+
+/* Core CSS */
+@import "minimal-mistakes/reset";
+@import "minimal-mistakes/base";
+@import "minimal-mistakes/forms";
+@import "minimal-mistakes/tables";
+@import "minimal-mistakes/animations";
+
+/* Components */
+@import "minimal-mistakes/buttons";
+@import "minimal-mistakes/notices";
+@import "minimal-mistakes/masthead";
+@import "minimal-mistakes/navigation";
+@import "minimal-mistakes/footer";
+@import "minimal-mistakes/search";
+@import "minimal-mistakes/syntax";
+
+/* Utility classes */
+@import "minimal-mistakes/utilities";
+
+/* Layout specific */
+@import "minimal-mistakes/page";
+@import "minimal-mistakes/archive";
+@import "minimal-mistakes/sidebar";
+@import "minimal-mistakes/print";
diff --git a/docs/_sass/minimal-mistakes/_animations.scss b/docs/_sass/minimal-mistakes/_animations.scss
new file mode 100644
index 00000000..25ef77fb
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_animations.scss
@@ -0,0 +1,21 @@
+/* ==========================================================================
+ ANIMATIONS
+ ========================================================================== */
+
+@-webkit-keyframes intro {
+ 0% {
+ opacity: 0;
+ }
+ 100% {
+ opacity: 1;
+ }
+}
+
+@keyframes intro {
+ 0% {
+ opacity: 0;
+ }
+ 100% {
+ opacity: 1;
+ }
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_archive.scss b/docs/_sass/minimal-mistakes/_archive.scss
new file mode 100644
index 00000000..9f576323
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_archive.scss
@@ -0,0 +1,463 @@
+/* ==========================================================================
+ ARCHIVE
+ ========================================================================== */
+
+.archive {
+ margin-top: 1em;
+ margin-bottom: 2em;
+
+ @include breakpoint($large) {
+ float: right;
+ width: calc(100% - #{$right-sidebar-width-narrow});
+ padding-right: $right-sidebar-width-narrow;
+ }
+
+ @include breakpoint($x-large) {
+ width: calc(100% - #{$right-sidebar-width});
+ padding-right: $right-sidebar-width;
+ }
+}
+
+.archive__item {
+ position: relative;
+
+ a {
+ position: relative;
+ z-index: 10;
+ }
+
+ a[rel="permalink"] {
+ position: static;
+ }
+}
+
+.archive__subtitle {
+ margin: 1.414em 0 0.5em;
+ padding-bottom: 0.5em;
+ font-size: $type-size-5;
+ color: $muted-text-color;
+ border-bottom: 1px solid $border-color;
+
+ + .list__item .archive__item-title {
+ margin-top: 0.5em;
+ }
+}
+
+.archive__item-title {
+ margin-bottom: 0.25em;
+ font-family: $sans-serif-narrow;
+ line-height: initial;
+ overflow: hidden;
+ text-overflow: ellipsis;
+
+ a[rel="permalink"]::before {
+ content: '';
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ }
+
+ a + a {
+ opacity: 0.5;
+ }
+}
+
+/* remove border*/
+.page__content {
+ .archive__item-title {
+ margin-top: 1em;
+ border-bottom: none;
+ }
+}
+
+.archive__item-excerpt {
+ margin-top: 0;
+ font-size: $type-size-6;
+
+ & + p {
+ text-indent: 0;
+ }
+
+ a {
+ position: relative;
+ }
+}
+
+.archive__item-teaser {
+ position: relative;
+ border-radius: $border-radius;
+ overflow: hidden;
+
+ img {
+ width: 100%;
+ }
+}
+
+.archive__item-caption {
+ position: absolute;
+ bottom: 0;
+ right: 0;
+ margin: 0 auto;
+ padding: 2px 5px;
+ color: #fff;
+ font-family: $caption-font-family;
+ font-size: $type-size-8;
+ background: #000;
+ text-align: right;
+ z-index: 5;
+ opacity: 0.5;
+ border-radius: $border-radius 0 0 0;
+
+ @include breakpoint($large) {
+ padding: 5px 10px;
+ }
+
+ a {
+ color: #fff;
+ text-decoration: none;
+ }
+}
+
+/*
+ List view
+ ========================================================================== */
+
+.list__item {
+ .page__meta {
+ margin: 0 0 4px;
+ font-size: 0.6em;
+ }
+}
+
+/*
+ Grid view
+ ========================================================================== */
+
+.archive {
+ .grid__wrapper {
+ /* extend grid elements to the right */
+
+ @include breakpoint($large) {
+ margin-right: -1 * $right-sidebar-width-narrow;
+ }
+
+ @include breakpoint($x-large) {
+ margin-right: -1 * $right-sidebar-width;
+ }
+ }
+}
+
+.grid__item {
+ margin-bottom: 2em;
+
+ @include breakpoint($small) {
+ float: left;
+ width: span(5 of 10);
+
+ &:nth-child(2n + 1) {
+ clear: both;
+ margin-left: 0;
+ }
+
+ &:nth-child(2n + 2) {
+ clear: none;
+ margin-left: gutter(of 10);
+ }
+ }
+
+ @include breakpoint($medium) {
+ margin-left: 0; /* override margin*/
+ margin-right: 0; /* override margin*/
+ width: span(3 of 12);
+
+ &:nth-child(2n + 1) {
+ clear: none;
+ }
+
+ &:nth-child(4n + 1) {
+ clear: both;
+ }
+
+ &:nth-child(4n + 2) {
+ clear: none;
+ margin-left: gutter(1 of 12);
+ }
+
+ &:nth-child(4n + 3) {
+ clear: none;
+ margin-left: gutter(1 of 12);
+ }
+
+ &:nth-child(4n + 4) {
+ clear: none;
+ margin-left: gutter(1 of 12);
+ }
+ }
+
+ .page__meta {
+ margin: 0 0 4px;
+ font-size: 0.6em;
+ }
+
+ .page__meta-sep {
+ display: block;
+
+ &::before {
+ display: none;
+ }
+ }
+
+ .archive__item-title {
+ margin-top: 0.5em;
+ font-size: $type-size-5;
+ }
+
+ .archive__item-excerpt {
+ display: none;
+
+ @include breakpoint($medium) {
+ display: block;
+ font-size: $type-size-6;
+ }
+ }
+
+ .archive__item-teaser {
+ @include breakpoint($small) {
+ max-height: 200px;
+ }
+
+ @include breakpoint($medium) {
+ max-height: 120px;
+ }
+ }
+}
+
+/*
+ Features
+ ========================================================================== */
+
+.feature__wrapper {
+ @include clearfix();
+ margin-bottom: 2em;
+ border-bottom: 1px solid $border-color;
+
+ .archive__item-title {
+ margin-bottom: 0;
+ }
+}
+
+.feature__item {
+ position: relative;
+ margin-bottom: 2em;
+ font-size: 1.125em;
+
+ @include breakpoint($small) {
+ float: left;
+ margin-bottom: 0;
+ width: span(4 of 12);
+
+ &:nth-child(3n + 1) {
+ clear: both;
+ margin-left: 0;
+ }
+
+ &:nth-child(3n + 2) {
+ clear: none;
+ margin-left: gutter(of 12);
+ }
+
+ &:nth-child(3n + 3) {
+ clear: none;
+ margin-left: gutter(of 12);
+ }
+
+ .feature__item-teaser {
+ max-height: 200px;
+ overflow: hidden;
+ }
+ }
+
+ .archive__item-body {
+ padding-left: gutter(1 of 12);
+ padding-right: gutter(1 of 12);
+ }
+
+ a.btn::before {
+ content: '';
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ }
+
+ &--left {
+ position: relative;
+ float: left;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ clear: both;
+ font-size: 1.125em;
+
+ .archive__item {
+ float: left;
+ }
+
+ .archive__item-teaser {
+ margin-bottom: 2em;
+ }
+
+ a.btn::before {
+ content: '';
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ }
+
+ @include breakpoint($small) {
+ .archive__item-teaser {
+ float: left;
+ width: span(5 of 12);
+ }
+
+ .archive__item-body {
+ float: right;
+ padding-left: gutter(0.5 of 12);
+ padding-right: gutter(1 of 12);
+ width: span(7 of 12);
+ }
+ }
+ }
+
+ &--right {
+ position: relative;
+ float: left;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ clear: both;
+ font-size: 1.125em;
+
+ .archive__item {
+ float: left;
+ }
+
+ .archive__item-teaser {
+ margin-bottom: 2em;
+ }
+
+ a.btn::before {
+ content: '';
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ }
+
+ @include breakpoint($small) {
+ text-align: right;
+
+ .archive__item-teaser {
+ float: right;
+ width: span(5 of 12);
+ }
+
+ .archive__item-body {
+ float: left;
+ width: span(7 of 12);
+ padding-left: gutter(0.5 of 12);
+ padding-right: gutter(1 of 12);
+ }
+ }
+ }
+
+ &--center {
+ position: relative;
+ float: left;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ clear: both;
+ font-size: 1.125em;
+
+ .archive__item {
+ float: left;
+ width: 100%;
+ }
+
+ .archive__item-teaser {
+ margin-bottom: 2em;
+ }
+
+ a.btn::before {
+ content: '';
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ }
+
+ @include breakpoint($small) {
+ text-align: center;
+
+ .archive__item-teaser {
+ margin: 0 auto;
+ width: span(5 of 12);
+ }
+
+ .archive__item-body {
+ margin: 0 auto;
+ width: span(7 of 12);
+ }
+ }
+ }
+}
+
+/* Place inside an archive layout */
+
+.archive {
+ .feature__wrapper {
+ .archive__item-title {
+ margin-top: 0.25em;
+ font-size: 1em;
+ }
+ }
+
+ .feature__item,
+ .feature__item--left,
+ .feature__item--center,
+ .feature__item--right {
+ font-size: 1em;
+ }
+}
+
+/*
+ Wide Pages
+ ========================================================================== */
+
+ .wide {
+ .archive {
+ @include breakpoint($large) {
+ padding-right: 0;
+ }
+
+ @include breakpoint($x-large) {
+ padding-right: 0;
+ }
+ }
+}
+
+/* Place inside a single layout */
+
+.layout--single {
+ .feature__wrapper {
+ display: inline-block;
+ }
+}
diff --git a/docs/_sass/minimal-mistakes/_base.scss b/docs/_sass/minimal-mistakes/_base.scss
new file mode 100644
index 00000000..3796eb61
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_base.scss
@@ -0,0 +1,357 @@
+/* ==========================================================================
+ BASE ELEMENTS
+ ========================================================================== */
+
+html {
+ /* sticky footer fix */
+ position: relative;
+ min-height: 100%;
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ color: $text-color;
+ font-family: $global-font-family;
+ line-height: 1.5;
+
+ &.overflow--hidden {
+ /* when primary navigation is visible, the content in the background won't scroll */
+ overflow: hidden;
+ }
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ margin: 2em 0 0.5em;
+ line-height: 1.2;
+ font-family: $header-font-family;
+ font-weight: bold;
+}
+
+h1 {
+ margin-top: 0;
+ font-size: $h-size-1;
+}
+
+h2 {
+ font-size: $h-size-2;
+}
+
+h3 {
+ font-size: $h-size-3;
+}
+
+h4 {
+ font-size: $h-size-4;
+}
+
+h5 {
+ font-size: $h-size-5;
+}
+
+h6 {
+ font-size: $h-size-6;
+}
+
+small,
+.small {
+ font-size: $type-size-6;
+}
+
+p {
+ margin-bottom: 1.3em;
+}
+
+u,
+ins {
+ text-decoration: none;
+ border-bottom: 1px solid $text-color;
+ a {
+ color: inherit;
+ }
+}
+
+del a {
+ color: inherit;
+}
+
+/* reduce orphans and widows when printing */
+
+p,
+pre,
+blockquote,
+ul,
+ol,
+dl,
+figure,
+table,
+fieldset {
+ orphans: 3;
+ widows: 3;
+}
+
+/* abbreviations */
+
+abbr[title],
+abbr[data-original-title] {
+ text-decoration: none;
+ cursor: help;
+ border-bottom: 1px dotted $text-color;
+}
+
+/* blockquotes */
+
+blockquote {
+ margin: 2em 1em 2em 0;
+ padding-left: 1em;
+ padding-right: 1em;
+ font-style: italic;
+ border-left: 0.25em solid $primary-color;
+
+ cite {
+ font-style: italic;
+
+ &:before {
+ content: "\2014";
+ padding-right: 5px;
+ }
+ }
+}
+
+/* links */
+
+a {
+ &:focus {
+ @extend %tab-focus;
+ }
+
+ &:visited {
+ color: $link-color-visited;
+ }
+
+ &:hover {
+ color: $link-color-hover;
+ outline: 0;
+ }
+}
+
+/* buttons */
+
+button:focus {
+ @extend %tab-focus;
+}
+
+/* code */
+
+tt,
+code,
+kbd,
+samp,
+pre {
+ font-family: $monospace;
+}
+
+pre {
+ overflow-x: auto; /* add scrollbars to wide code blocks*/
+}
+
+p > code,
+a > code,
+li > code,
+figcaption > code,
+td > code {
+ padding-top: 0.1rem;
+ padding-bottom: 0.1rem;
+ font-size: 0.8em;
+ background: $code-background-color;
+ border-radius: $border-radius;
+
+ &:before,
+ &:after {
+ letter-spacing: -0.2em;
+ content: "\00a0"; /* non-breaking space*/
+ }
+}
+
+/* horizontal rule */
+
+hr {
+ display: block;
+ margin: 1em 0;
+ border: 0;
+ border-top: 1px solid $border-color;
+}
+
+/* lists */
+
+ul li,
+ol li {
+ margin-bottom: 0.5em;
+}
+
+li ul,
+li ol {
+ margin-top: 0.5em;
+}
+
+/*
+ Media and embeds
+ ========================================================================== */
+
+/* Figures and images */
+
+figure {
+ display: -webkit-box;
+ display: flex;
+ -webkit-box-pack: justify;
+ justify-content: space-between;
+ -webkit-box-align: start;
+ align-items: flex-start;
+ flex-wrap: wrap;
+ margin: 2em 0;
+
+ img,
+ iframe,
+ .fluid-width-video-wrapper {
+ margin-bottom: 1em;
+ }
+
+ img {
+ width: 100%;
+ border-radius: $border-radius;
+ -webkit-transition: $global-transition;
+ transition: $global-transition;
+ }
+
+ > a {
+ display: block;
+ }
+
+ &.half {
+ > a,
+ > img {
+ @include breakpoint($small) {
+ width: calc(50% - 0.5em);
+ }
+ }
+
+ figcaption {
+ width: 100%;
+ }
+ }
+
+ &.third {
+ > a,
+ > img {
+ @include breakpoint($small) {
+ width: calc(33.3333% - 0.5em);
+ }
+ }
+
+ figcaption {
+ width: 100%;
+ }
+ }
+}
+
+/* Figure captions */
+
+figcaption {
+ margin-bottom: 0.5em;
+ color: $muted-text-color;
+ font-family: $caption-font-family;
+ font-size: $type-size-6;
+
+ a {
+ -webkit-transition: $global-transition;
+ transition: $global-transition;
+
+ &:hover {
+ color: $link-color-hover;
+ }
+ }
+}
+
+/* Fix IE9 SVG bug */
+
+svg:not(:root) {
+ overflow: hidden;
+}
+
+/*
+ Navigation lists
+ ========================================================================== */
+
+/**
+ * Removes margins, padding, and bullet points from navigation lists
+ *
+ * Example usage:
+ *
+ *
+ *
+ */
+
+nav {
+ ul {
+ margin: 0;
+ padding: 0;
+ }
+
+ li {
+ list-style: none;
+ }
+
+ a {
+ text-decoration: none;
+ }
+
+ /* override white-space for nested lists */
+ ul li,
+ ol li {
+ margin-bottom: 0;
+ }
+
+ li ul,
+ li ol {
+ margin-top: 0;
+ }
+}
+
+/*
+ Global animation transition
+ ========================================================================== */
+
+b,
+i,
+strong,
+em,
+blockquote,
+p,
+q,
+span,
+figure,
+img,
+h1,
+h2,
+header,
+input,
+a,
+tr,
+td,
+form button,
+input[type="submit"],
+.btn,
+.highlight,
+.archive__item-teaser {
+ -webkit-transition: $global-transition;
+ transition: $global-transition;
+}
diff --git a/docs/_sass/minimal-mistakes/_buttons.scss b/docs/_sass/minimal-mistakes/_buttons.scss
new file mode 100644
index 00000000..9ef60a84
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_buttons.scss
@@ -0,0 +1,97 @@
+/* ==========================================================================
+ BUTTONS
+ ========================================================================== */
+
+/*
+ Default button
+ ========================================================================== */
+
+.btn {
+ /* default */
+ display: inline-block;
+ margin-bottom: 0.25em;
+ padding: 0.5em 1em;
+ font-family: $sans-serif;
+ font-size: $type-size-6;
+ font-weight: bold;
+ text-align: center;
+ text-decoration: none;
+ border-width: 0;
+ border-radius: $border-radius;
+ cursor: pointer;
+
+ .icon {
+ margin-right: 0.5em;
+ }
+
+ .icon + .hidden {
+ margin-left: -0.5em; /* override for hidden text*/
+ }
+
+ /* button colors */
+ $buttoncolors:
+ (primary, $primary-color),
+ (inverse, #fff),
+ (light-outline, transparent),
+ (success, $success-color),
+ (warning, $warning-color),
+ (danger, $danger-color),
+ (info, $info-color),
+ (facebook, $facebook-color),
+ (twitter, $twitter-color),
+ (linkedin, $linkedin-color);
+
+ @each $buttoncolor, $color in $buttoncolors {
+ &--#{$buttoncolor} {
+ @include yiq-contrasted($color);
+ @if ($buttoncolor == inverse) {
+ border: 1px solid $border-color;
+ }
+ @if ($buttoncolor == light-outline) {
+ border: 1px solid #fff;
+ }
+
+ &:visited {
+ @include yiq-contrasted($color);
+ }
+
+ &:hover {
+ @include yiq-contrasted(mix(#000, $color, 20%));
+ }
+ }
+ }
+
+ /* fills width of parent container */
+ &--block {
+ display: block;
+ width: 100%;
+
+ + .btn--block {
+ margin-top: 0.25em;
+ }
+ }
+
+ /* disabled */
+ &--disabled {
+ pointer-events: none;
+ cursor: not-allowed;
+ filter: alpha(opacity=65);
+ box-shadow: none;
+ opacity: 0.65;
+ }
+
+ /* extra large button */
+ &--x-large {
+ font-size: $type-size-4;
+ }
+
+ /* large button */
+ &--large {
+ font-size: $type-size-5;
+ }
+
+ /* small button */
+ &--small {
+ font-size: $type-size-7;
+ }
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_footer.scss b/docs/_sass/minimal-mistakes/_footer.scss
new file mode 100644
index 00000000..c0b0625b
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_footer.scss
@@ -0,0 +1,85 @@
+/* ==========================================================================
+ FOOTER
+ ========================================================================== */
+
+.page__footer {
+ @include clearfix;
+ float: left;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ margin-top: 3em;
+ color: $muted-text-color;
+ -webkit-animation: $intro-transition;
+ animation: $intro-transition;
+ -webkit-animation-delay: 0.45s;
+ animation-delay: 0.45s;
+ background-color: $footer-background-color;
+
+ footer {
+ @include clearfix;
+ margin-left: auto;
+ margin-right: auto;
+ margin-top: 2em;
+ max-width: 100%;
+ padding: 0 1em 2em;
+
+ @include breakpoint($x-large) {
+ max-width: $x-large;
+ }
+ }
+
+ a {
+ color: inherit;
+ text-decoration: none;
+
+ &:hover {
+ text-decoration: underline;
+ }
+ }
+
+ .fas,
+ .fab,
+ .far,
+ .fal {
+ color: $muted-text-color;
+ }
+}
+
+.page__footer-copyright {
+ font-family: $global-font-family;
+ font-size: $type-size-7;
+}
+
+.page__footer-follow {
+ ul {
+ margin: 0;
+ padding: 0;
+ list-style-type: none;
+ }
+
+ li {
+ display: inline-block;
+ padding-top: 5px;
+ padding-bottom: 5px;
+ font-family: $sans-serif-narrow;
+ font-size: $type-size-6;
+ text-transform: uppercase;
+ }
+
+ li + li:before {
+ content: "";
+ padding-right: 5px;
+ }
+
+ a {
+ padding-right: 10px;
+ font-weight: bold;
+ }
+
+ .social-icons {
+ a {
+ white-space: nowrap;
+ }
+ }
+}
diff --git a/docs/_sass/minimal-mistakes/_forms.scss b/docs/_sass/minimal-mistakes/_forms.scss
new file mode 100644
index 00000000..0dd9b480
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_forms.scss
@@ -0,0 +1,359 @@
+/* ==========================================================================
+ Forms
+ ========================================================================== */
+
+form {
+ margin: 0 0 5px 0;
+ padding: 1em;
+ background-color: $form-background-color;
+
+ fieldset {
+ margin-bottom: 5px;
+ padding: 0;
+ border-width: 0;
+ }
+
+ legend {
+ display: block;
+ width: 100%;
+ margin-bottom: 5px * 2;
+ *margin-left: -7px;
+ padding: 0;
+ color: $text-color;
+ border: 0;
+ white-space: normal;
+ }
+
+ p {
+ margin-bottom: (5px / 2);
+ }
+
+ ul {
+ list-style-type: none;
+ margin: 0 0 5px 0;
+ padding: 0;
+ }
+
+ br {
+ display: none;
+ }
+}
+
+label,
+input,
+button,
+select,
+textarea {
+ vertical-align: baseline;
+ *vertical-align: middle;
+}
+
+input,
+button,
+select,
+textarea {
+ box-sizing: border-box;
+ font-family: $sans-serif;
+}
+
+label {
+ display: block;
+ margin-bottom: 0.25em;
+ color: $text-color;
+ cursor: pointer;
+
+ small {
+ font-size: $type-size-6;
+ }
+
+ input,
+ textarea,
+ select {
+ display: block;
+ }
+}
+
+input,
+textarea,
+select {
+ display: inline-block;
+ width: 100%;
+ padding: 0.25em;
+ margin-bottom: 0.5em;
+ color: $text-color;
+ background-color: $background-color;
+ border: $border-color;
+ border-radius: $border-radius;
+ box-shadow: $box-shadow;
+}
+
+.input-mini {
+ width: 60px;
+}
+
+.input-small {
+ width: 90px;
+}
+
+input[type="image"],
+input[type="checkbox"],
+input[type="radio"] {
+ width: auto;
+ height: auto;
+ padding: 0;
+ margin: 3px 0;
+ *margin-top: 0;
+ line-height: normal;
+ cursor: pointer;
+ border-radius: 0;
+ border: 0 \9;
+ box-shadow: none;
+}
+
+input[type="checkbox"],
+input[type="radio"] {
+ box-sizing: border-box;
+ padding: 0;
+ *width: 13px;
+ *height: 13px;
+}
+
+input[type="image"] {
+ border: 0;
+}
+
+input[type="file"] {
+ width: auto;
+ padding: initial;
+ line-height: initial;
+ border: initial;
+ background-color: transparent;
+ background-color: initial;
+ box-shadow: none;
+}
+
+input[type="button"],
+input[type="reset"],
+input[type="submit"] {
+ width: auto;
+ height: auto;
+ cursor: pointer;
+ *overflow: visible;
+}
+
+select,
+input[type="file"] {
+ *margin-top: 4px;
+}
+
+select {
+ width: auto;
+ background-color: #fff;
+}
+
+select[multiple],
+select[size] {
+ height: auto;
+}
+
+textarea {
+ resize: vertical;
+ height: auto;
+ overflow: auto;
+ vertical-align: top;
+}
+
+input[type="hidden"] {
+ display: none;
+}
+
+.form {
+ position: relative;
+}
+
+.radio,
+.checkbox {
+ padding-left: 18px;
+ font-weight: normal;
+}
+
+.radio input[type="radio"],
+.checkbox input[type="checkbox"] {
+ float: left;
+ margin-left: -18px;
+}
+
+.radio.inline,
+.checkbox.inline {
+ display: inline-block;
+ padding-top: 5px;
+ margin-bottom: 0;
+ vertical-align: middle;
+}
+
+.radio.inline + .radio.inline,
+.checkbox.inline + .checkbox.inline {
+ margin-left: 10px;
+}
+
+/*
+ Disabled state
+ ========================================================================== */
+
+input[disabled],
+select[disabled],
+textarea[disabled],
+input[readonly],
+select[readonly],
+textarea[readonly] {
+ opacity: 0.5;
+ cursor: not-allowed;
+}
+
+/*
+ Focus & active state
+ ========================================================================== */
+
+input:focus,
+textarea:focus {
+ border-color: $primary-color;
+ outline: 0;
+ outline: thin dotted \9;
+ box-shadow: inset 0 1px 3px rgba($text-color, 0.06),
+ 0 0 5px rgba($primary-color, 0.7);
+}
+
+input[type="file"]:focus,
+input[type="radio"]:focus,
+input[type="checkbox"]:focus,
+select:focus {
+ box-shadow: none;
+}
+
+/*
+ Help text
+ ========================================================================== */
+
+.help-block,
+.help-inline {
+ color: $muted-text-color;
+}
+
+.help-block {
+ display: block;
+ margin-bottom: 1em;
+ line-height: 1em;
+}
+
+.help-inline {
+ display: inline-block;
+ vertical-align: middle;
+ padding-left: 5px;
+}
+
+/*
+ .form-group
+ ========================================================================== */
+
+.form-group {
+ margin-bottom: 5px;
+ padding: 0;
+ border-width: 0;
+}
+
+/*
+ .form-inline
+ ========================================================================== */
+
+.form-inline input,
+.form-inline textarea,
+.form-inline select {
+ display: inline-block;
+ margin-bottom: 0;
+}
+
+.form-inline label {
+ display: inline-block;
+}
+
+.form-inline .radio,
+.form-inline .checkbox,
+.form-inline .radio {
+ padding-left: 0;
+ margin-bottom: 0;
+ vertical-align: middle;
+}
+
+.form-inline .radio input[type="radio"],
+.form-inline .checkbox input[type="checkbox"] {
+ float: left;
+ margin-left: 0;
+ margin-right: 3px;
+}
+
+/*
+ .form-search
+ ========================================================================== */
+
+.form-search input,
+.form-search textarea,
+.form-search select {
+ display: inline-block;
+ margin-bottom: 0;
+}
+
+.form-search .search-query {
+ padding-left: 14px;
+ padding-right: 14px;
+ margin-bottom: 0;
+ border-radius: 14px;
+}
+
+.form-search label {
+ display: inline-block;
+}
+
+.form-search .radio,
+.form-search .checkbox,
+.form-inline .radio {
+ padding-left: 0;
+ margin-bottom: 0;
+ vertical-align: middle;
+}
+
+.form-search .radio input[type="radio"],
+.form-search .checkbox input[type="checkbox"] {
+ float: left;
+ margin-left: 0;
+ margin-right: 3px;
+}
+
+/*
+ .form--loading
+ ========================================================================== */
+
+.form--loading:before {
+ content: "";
+}
+
+.form--loading .form__spinner {
+ display: block;
+}
+
+.form:before {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ background-color: rgba(255, 255, 255, 0.7);
+ z-index: 10;
+}
+
+.form__spinner {
+ display: none;
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ z-index: 11;
+}
diff --git a/docs/_sass/minimal-mistakes/_masthead.scss b/docs/_sass/minimal-mistakes/_masthead.scss
new file mode 100644
index 00000000..2dfefcce
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_masthead.scss
@@ -0,0 +1,93 @@
+/* ==========================================================================
+ MASTHEAD
+ ========================================================================== */
+
+.masthead {
+ position: relative;
+ border-bottom: 1px solid $border-color;
+ -webkit-animation: $intro-transition;
+ animation: $intro-transition;
+ -webkit-animation-delay: 0.15s;
+ animation-delay: 0.15s;
+ z-index: 20;
+
+ &__inner-wrap {
+ @include clearfix;
+ margin-left: auto;
+ margin-right: auto;
+ padding: 1em;
+ max-width: 100%;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ font-family: $sans-serif-narrow;
+
+ @include breakpoint($x-large) {
+ max-width: $max-width;
+ }
+
+ nav {
+ z-index: 10;
+ }
+
+ a {
+ text-decoration: none;
+ }
+ }
+}
+
+.site-logo img {
+ max-height: 2rem;
+}
+
+.site-title {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -ms-flex-item-align: center;
+ align-self: center;
+ font-weight: bold;
+ // z-index: 20;
+}
+
+.site-subtitle {
+ display: block;
+ font-size: $type-size-8;
+}
+
+.masthead__menu {
+ float: left;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ clear: both;
+
+ .site-nav {
+ margin-left: 0;
+
+ @include breakpoint($small) {
+ float: right;
+ }
+ }
+
+ ul {
+ margin: 0;
+ padding: 0;
+ clear: both;
+ list-style-type: none;
+ }
+}
+
+.masthead__menu-item {
+ display: block;
+ list-style-type: none;
+ white-space: nowrap;
+
+ &--lg {
+ padding-right: 2em;
+ font-weight: 700;
+ }
+}
diff --git a/docs/_sass/minimal-mistakes/_mixins.scss b/docs/_sass/minimal-mistakes/_mixins.scss
new file mode 100644
index 00000000..4aa9eb09
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_mixins.scss
@@ -0,0 +1,92 @@
+/* ==========================================================================
+ MIXINS
+ ========================================================================== */
+
+%tab-focus {
+ /* Default*/
+ outline: thin dotted $focus-color;
+ /* Webkit*/
+ outline: 5px auto $focus-color;
+ outline-offset: -2px;
+}
+
+/*
+ em function
+ ========================================================================== */
+
+@function em($target, $context: $doc-font-size) {
+ @return ($target / $context) * 1em;
+}
+
+
+/*
+ Bourbon clearfix
+ ========================================================================== */
+
+/*
+ * Provides an easy way to include a clearfix for containing floats.
+ * link http://cssmojo.com/latest_new_clearfix_so_far/
+ *
+ * example scss - Usage
+ *
+ * .element {
+ * @include clearfix;
+ * }
+ *
+ * example css - CSS Output
+ *
+ * .element::after {
+ * clear: both;
+ * content: "";
+ * display: table;
+ * }
+*/
+
+@mixin clearfix {
+ clear: both;
+
+ &::after {
+ clear: both;
+ content: "";
+ display: table;
+ }
+}
+
+/*
+ Compass YIQ Color Contrast
+ https://github.com/easy-designs/yiq-color-contrast
+ ========================================================================== */
+
+@function yiq-is-light(
+ $color,
+ $threshold: $yiq-contrasted-threshold
+) {
+ $red: red($color);
+ $green: green($color);
+ $blue: blue($color);
+
+ $yiq: (($red*299)+($green*587)+($blue*114))/1000;
+
+ @if $yiq-debug { @debug $yiq, $threshold; }
+
+ @return if($yiq >= $threshold, true, false);
+}
+
+@function yiq-contrast-color(
+ $color,
+ $dark: $yiq-contrasted-dark-default,
+ $light: $yiq-contrasted-light-default,
+ $threshold: $yiq-contrasted-threshold
+) {
+ @return if(yiq-is-light($color, $threshold), $yiq-contrasted-dark-default, $yiq-contrasted-light-default);
+}
+
+@mixin yiq-contrasted(
+ $background-color,
+ $dark: $yiq-contrasted-dark-default,
+ $light: $yiq-contrasted-light-default,
+ $threshold: $yiq-contrasted-threshold
+) {
+ background-color: $background-color;
+ color: yiq-contrast-color($background-color, $dark, $light, $threshold);
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_navigation.scss b/docs/_sass/minimal-mistakes/_navigation.scss
new file mode 100644
index 00000000..24d1b1b5
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_navigation.scss
@@ -0,0 +1,573 @@
+/* ==========================================================================
+ NAVIGATION
+ ========================================================================== */
+
+/*
+ Breadcrumb navigation links
+ ========================================================================== */
+
+.breadcrumbs {
+ @include clearfix;
+ margin: 0 auto;
+ max-width: 100%;
+ padding-left: 1em;
+ padding-right: 1em;
+ font-family: $sans-serif;
+ -webkit-animation: $intro-transition;
+ animation: $intro-transition;
+ -webkit-animation-delay: 0.3s;
+ animation-delay: 0.3s;
+
+ @include breakpoint($x-large) {
+ max-width: $x-large;
+ }
+
+ ol {
+ padding: 0;
+ list-style: none;
+ font-size: $type-size-6;
+
+ @include breakpoint($large) {
+ float: right;
+ width: calc(100% - #{$right-sidebar-width-narrow});
+ }
+
+ @include breakpoint($x-large) {
+ width: calc(100% - #{$right-sidebar-width});
+ }
+ }
+
+ li {
+ display: inline;
+ }
+
+ .current {
+ font-weight: bold;
+ }
+}
+
+/*
+ Post pagination navigation links
+ ========================================================================== */
+
+.pagination {
+ @include clearfix();
+ float: left;
+ margin-top: 1em;
+ padding-top: 1em;
+ width: 100%;
+
+ ul {
+ margin: 0;
+ padding: 0;
+ list-style-type: none;
+ font-family: $sans-serif;
+ }
+
+ li {
+ display: block;
+ float: left;
+ margin-left: -1px;
+
+ a {
+ display: block;
+ margin-bottom: 0.25em;
+ padding: 0.5em 1em;
+ font-family: $sans-serif;
+ font-size: 14px;
+ font-weight: bold;
+ line-height: 1.5;
+ text-align: center;
+ text-decoration: none;
+ color: $muted-text-color;
+ border: 1px solid mix(#000, $border-color, 25%);
+ border-radius: 0;
+
+ &:hover {
+ color: $link-color-hover;
+ }
+
+ &.current,
+ &.current.disabled {
+ color: #fff;
+ background: $primary-color;
+ }
+
+ &.disabled {
+ color: rgba($muted-text-color, 0.5);
+ pointer-events: none;
+ cursor: not-allowed;
+ }
+ }
+
+ &:first-child {
+ margin-left: 0;
+
+ a {
+ border-top-left-radius: $border-radius;
+ border-bottom-left-radius: $border-radius;
+ }
+ }
+
+ &:last-child {
+ a {
+ border-top-right-radius: $border-radius;
+ border-bottom-right-radius: $border-radius;
+ }
+ }
+ }
+
+ /* next/previous buttons */
+ &--pager {
+ display: block;
+ padding: 1em 2em;
+ float: left;
+ width: 50%;
+ font-family: $sans-serif;
+ font-size: $type-size-5;
+ font-weight: bold;
+ text-align: center;
+ text-decoration: none;
+ color: $muted-text-color;
+ border: 1px solid mix(#000, $border-color, 25%);
+ border-radius: $border-radius;
+
+ &:hover {
+ @include yiq-contrasted($muted-text-color);
+ }
+
+ &:first-child {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0;
+ }
+
+ &:last-child {
+ margin-left: -1px;
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0;
+ }
+
+ &.disabled {
+ color: rgba($muted-text-color, 0.5);
+ pointer-events: none;
+ cursor: not-allowed;
+ }
+ }
+}
+
+.page__content + .pagination,
+.page__meta + .pagination,
+.page__share + .pagination,
+.page__comments + .pagination {
+ margin-top: 2em;
+ padding-top: 2em;
+ border-top: 1px solid $border-color;
+}
+
+/*
+ Priority plus navigation
+ ========================================================================== */
+
+.greedy-nav {
+ position: relative;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ min-height: $nav-height;
+ background: $background-color;
+
+ a {
+ display: block;
+ margin: 0 1rem;
+ color: $masthead-link-color;
+ text-decoration: none;
+ -webkit-transition: none;
+ transition: none;
+
+ &:hover {
+ color: $masthead-link-color-hover;
+ }
+
+ &.site-logo {
+ margin-left: 0;
+ margin-right: 0.5rem;
+ }
+
+ &.site-title {
+ margin-left: 0;
+ }
+ }
+
+ img {
+ -webkit-transition: none;
+ transition: none;
+ }
+
+ &__toggle {
+ -ms-flex-item-align: center;
+ align-self: center;
+ height: $nav-toggle-height;
+ border: 0;
+ outline: none;
+ background-color: transparent;
+ cursor: pointer;
+ }
+
+ .visible-links {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ -webkit-box-flex: 1;
+ -ms-flex: 1;
+ flex: 1;
+ overflow: hidden;
+
+ li {
+ -webkit-box-flex: 0;
+ -ms-flex: none;
+ flex: none;
+ }
+
+ a {
+ position: relative;
+
+ &:before {
+ content: "";
+ position: absolute;
+ left: 0;
+ bottom: 0;
+ height: 4px;
+ background: $primary-color;
+ width: 100%;
+ -webkit-transition: $global-transition;
+ transition: $global-transition;
+ -webkit-transform: scaleX(0) translate3d(0, 0, 0);
+ transform: scaleX(0) translate3d(0, 0, 0); // hide
+ }
+
+ &:hover:before {
+ -webkit-transform: scaleX(1);
+ -ms-transform: scaleX(1);
+ transform: scaleX(1); // reveal
+ }
+ }
+ }
+
+ .hidden-links {
+ position: absolute;
+ top: 100%;
+ right: 0;
+ margin-top: 15px;
+ padding: 5px;
+ border: 1px solid $border-color;
+ border-radius: $border-radius;
+ background: $background-color;
+ -webkit-box-shadow: 0 2px 4px 0 rgba(#000, 0.16),
+ 0 2px 10px 0 rgba(#000, 0.12);
+ box-shadow: 0 2px 4px 0 rgba(#000, 0.16), 0 2px 10px 0 rgba(#000, 0.12);
+
+ &.hidden {
+ display: none;
+ }
+
+ a {
+ margin: 0;
+ padding: 10px 20px;
+ font-size: $type-size-5;
+
+ &:hover {
+ color: $masthead-link-color-hover;
+ background: $navicon-link-color-hover;
+ }
+ }
+
+ &:before {
+ content: "";
+ position: absolute;
+ top: -11px;
+ right: 10px;
+ width: 0;
+ border-style: solid;
+ border-width: 0 10px 10px;
+ border-color: $border-color transparent;
+ display: block;
+ z-index: 0;
+ }
+
+ &:after {
+ content: "";
+ position: absolute;
+ top: -10px;
+ right: 10px;
+ width: 0;
+ border-style: solid;
+ border-width: 0 10px 10px;
+ border-color: $background-color transparent;
+ display: block;
+ z-index: 1;
+ }
+
+ li {
+ display: block;
+ border-bottom: 1px solid $border-color;
+
+ &:last-child {
+ border-bottom: none;
+ }
+ }
+ }
+}
+
+.no-js {
+ .greedy-nav {
+ .visible-links {
+ -ms-flex-wrap: wrap;
+ flex-wrap: wrap;
+ overflow: visible;
+ }
+ }
+}
+
+/*
+ Navigation list
+ ========================================================================== */
+
+.nav__list {
+ margin-bottom: 1.5em;
+
+ input[type="checkbox"],
+ label {
+ display: none;
+ }
+
+ @include breakpoint(max-width $large - 1px) {
+ label {
+ position: relative;
+ display: inline-block;
+ padding: 0.5em 2.5em 0.5em 1em;
+ color: $gray;
+ font-size: $type-size-6;
+ font-weight: bold;
+ border: 1px solid $light-gray;
+ border-radius: $border-radius;
+ z-index: 20;
+ -webkit-transition: 0.2s ease-out;
+ transition: 0.2s ease-out;
+ cursor: pointer;
+
+ &:before,
+ &:after {
+ content: "";
+ position: absolute;
+ right: 1em;
+ top: 1.25em;
+ width: 0.75em;
+ height: 0.125em;
+ line-height: 1;
+ background-color: $gray;
+ -webkit-transition: 0.2s ease-out;
+ transition: 0.2s ease-out;
+ }
+
+ &:after {
+ -webkit-transform: rotate(90deg);
+ -ms-transform: rotate(90deg);
+ transform: rotate(90deg);
+ }
+
+ &:hover {
+ color: #fff;
+ border-color: $gray;
+ background-color: mix(white, #000, 20%);
+
+ &:before,
+ &:after {
+ background-color: #fff;
+ }
+ }
+ }
+
+ /* selected*/
+ input:checked + label {
+ color: white;
+ background-color: mix(white, #000, 20%);
+
+ &:before,
+ &:after {
+ background-color: #fff;
+ }
+ }
+
+ /* on hover show expand*/
+ label:hover:after {
+ -webkit-transform: rotate(90deg);
+ -ms-transform: rotate(90deg);
+ transform: rotate(90deg);
+ }
+
+ input:checked + label:hover:after {
+ -webkit-transform: rotate(0);
+ -ms-transform: rotate(0);
+ transform: rotate(0);
+ }
+
+ ul {
+ margin-bottom: 1em;
+ }
+
+ a {
+ display: block;
+ padding: 0.25em 0;
+
+ @include breakpoint($large) {
+ padding-top: 0.125em;
+ padding-bottom: 0.125em;
+ }
+
+ &:hover {
+ text-decoration: underline;
+ }
+ }
+ }
+}
+
+.nav__list .nav__items {
+ margin: 0;
+ font-size: 1.25rem;
+
+ a {
+ color: inherit;
+ }
+
+ .active {
+ margin-left: -0.5em;
+ padding-left: 0.5em;
+ padding-right: 0.5em;
+ font-weight: bold;
+ }
+
+ @include breakpoint(max-width $large - 1px) {
+ position: relative;
+ max-height: 0;
+ opacity: 0%;
+ overflow: hidden;
+ z-index: 10;
+ -webkit-transition: 0.3s ease-in-out;
+ transition: 0.3s ease-in-out;
+ -webkit-transform: translate(0, 10%);
+ -ms-transform: translate(0, 10%);
+ transform: translate(0, 10%);
+ }
+}
+
+@include breakpoint(max-width $large - 1px) {
+ .nav__list input:checked ~ .nav__items {
+ -webkit-transition: 0.5s ease-in-out;
+ transition: 0.5s ease-in-out;
+ max-height: 9999px; /* exaggerate max-height to accommodate tall lists*/
+ overflow: visible;
+ opacity: 1;
+ margin-top: 1em;
+ -webkit-transform: translate(0, 0);
+ -ms-transform: translate(0, 0);
+ transform: translate(0, 0);
+ }
+}
+
+.nav__title {
+ margin: 0;
+ padding: 0.5rem 0.75rem;
+ font-family: $sans-serif-narrow;
+ font-size: $type-size-5;
+ font-weight: bold;
+}
+
+.nav__sub-title {
+ display: block;
+ margin: 0.5rem 0;
+ padding: 0.25rem 0;
+ font-family: $sans-serif-narrow;
+ font-size: $type-size-6;
+ font-weight: bold;
+ text-transform: uppercase;
+ border-bottom: 1px solid $border-color;
+}
+
+/*
+ Table of contents navigation
+ ========================================================================== */
+
+.toc {
+ font-family: $sans-serif-narrow;
+ color: $gray;
+ background-color: $background-color;
+ border: 1px solid $border-color;
+ border-radius: $border-radius;
+ -webkit-box-shadow: $box-shadow;
+ box-shadow: $box-shadow;
+
+ .nav__title {
+ color: #fff;
+ font-size: $type-size-6;
+ background: $primary-color;
+ border-top-left-radius: $border-radius;
+ border-top-right-radius: $border-radius;
+ }
+
+ // Scrollspy marks toc items as .active when they are in focus
+ .active a {
+ @include yiq-contrasted($active-color);
+ }
+}
+
+.toc__menu {
+ margin: 0;
+ padding: 0;
+ width: 100%;
+ list-style: none;
+ font-size: $type-size-6;
+
+ @include breakpoint($large) {
+ font-size: $type-size-7;
+ }
+
+ a {
+ display: block;
+ padding: 0.25rem 0.75rem;
+ color: $muted-text-color;
+ font-weight: bold;
+ line-height: 1.5;
+ border-bottom: 1px solid $border-color;
+
+ &:hover {
+ color: $text-color;
+ }
+ }
+
+ li ul > li a {
+ padding-left: 1.25rem;
+ font-weight: normal;
+ }
+
+ li ul li ul > li a {
+ padding-left: 1.75rem;
+ }
+
+ li ul li ul li ul > li a {
+ padding-left: 2.25rem;
+ }
+
+ li ul li ul li ul li ul > li a {
+ padding-left: 2.75rem;
+ }
+
+ li ul li ul li ul li ul li ul > li a {
+ padding-left: 3.25rem
+ }
+}
diff --git a/docs/_sass/minimal-mistakes/_notices.scss b/docs/_sass/minimal-mistakes/_notices.scss
new file mode 100644
index 00000000..3a9b5e60
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_notices.scss
@@ -0,0 +1,105 @@
+/* ==========================================================================
+ NOTICE TEXT BLOCKS
+ ========================================================================== */
+
+/**
+ * Default Kramdown usage (no indents!):
+ *
+ * #### Headline for the Notice
+ * Text for the notice
+ *
+ */
+
+@mixin notice($notice-color) {
+ margin: 2em 0 !important; /* override*/
+ padding: 1em;
+ color: $text-color;
+ font-family: $global-font-family;
+ font-size: $type-size-6 !important;
+ text-indent: initial; /* override*/
+ background-color: mix($background-color, $notice-color, $notice-background-mix);
+ border-radius: $border-radius;
+ box-shadow: 0 1px 1px rgba($notice-color, 0.25);
+
+ h4 {
+ margin-top: 0 !important; /* override*/
+ margin-bottom: 0.75em;
+ line-height: inherit;
+ }
+
+ @at-root .page__content #{&} h4 {
+ /* using at-root to override .page-content h4 font size*/
+ margin-bottom: 0;
+ font-size: 1em;
+ }
+
+ p {
+ &:last-child {
+ margin-bottom: 0 !important; /* override*/
+ }
+ }
+
+ h4 + p {
+ /* remove space above paragraphs that appear directly after notice headline*/
+ margin-top: 0;
+ padding-top: 0;
+ }
+
+ a {
+ color: mix(#000, $notice-color, 10%);
+
+ &:hover {
+ color: mix(#000, $notice-color, 50%);
+ }
+ }
+
+ code {
+ background-color: mix($background-color, $notice-color, $code-notice-background-mix)
+ }
+
+ pre code {
+ background-color: inherit;
+ }
+
+ ul {
+ &:last-child {
+ margin-bottom: 0; /* override*/
+ }
+ }
+}
+
+/* Default notice */
+
+.notice {
+ @include notice($light-gray);
+}
+
+/* Primary notice */
+
+.notice--primary {
+ @include notice($primary-color);
+}
+
+/* Info notice */
+
+.notice--info {
+ @include notice($info-color);
+}
+
+/* Warning notice */
+
+.notice--warning {
+ @include notice($warning-color);
+}
+
+/* Success notice */
+
+.notice--success {
+ @include notice($success-color);
+}
+
+/* Danger notice */
+
+.notice--danger {
+ @include notice($danger-color);
+}
diff --git a/docs/_sass/minimal-mistakes/_page.scss b/docs/_sass/minimal-mistakes/_page.scss
new file mode 100644
index 00000000..145ca8e9
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_page.scss
@@ -0,0 +1,564 @@
+/* ==========================================================================
+ SINGLE PAGE/POST
+ ========================================================================== */
+
+#main {
+ @include clearfix;
+ margin-left: auto;
+ margin-right: auto;
+ padding-left: 1em;
+ padding-right: 1em;
+ -webkit-animation: $intro-transition;
+ animation: $intro-transition;
+ max-width: 100%;
+ -webkit-animation-delay: 0.15s;
+ animation-delay: 0.15s;
+
+ @include breakpoint($x-large) {
+ max-width: $max-width;
+ }
+}
+
+body {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ min-height: 100vh;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+}
+
+.initial-content,
+.search-content {
+ flex: 1 0 auto;
+}
+
+.page {
+ @include breakpoint($large) {
+ float: right;
+ width: calc(100% - #{$right-sidebar-width-narrow});
+ padding-right: $right-sidebar-width-narrow;
+ }
+
+ @include breakpoint($x-large) {
+ width: calc(100% - #{$right-sidebar-width});
+ padding-right: $right-sidebar-width;
+ }
+
+ .page__inner-wrap {
+ float: left;
+ margin-top: 1em;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ clear: both;
+
+ .page__content,
+ .page__meta,
+ .page__share {
+ position: relative;
+ float: left;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ clear: both;
+ }
+ }
+}
+
+.page__title {
+ margin-top: 0;
+ line-height: 1;
+
+ a {
+ color: $text-color;
+ text-decoration: none;
+ }
+
+ & + .page__meta {
+ margin-top: -0.5em;
+ }
+}
+
+.page__lead {
+ font-family: $global-font-family;
+ font-size: $type-size-4;
+}
+
+.page__content {
+ h2 {
+ padding-bottom: 0.5em;
+ border-bottom: 1px solid $border-color;
+ }
+
+ h1, h2, h3, h4, h5, h6 {
+ .header-link {
+ position: relative;
+ left: 0.5em;
+ opacity: 0;
+ font-size: 0.8em;
+ -webkit-transition: opacity 0.2s ease-in-out 0.1s;
+ -moz-transition: opacity 0.2s ease-in-out 0.1s;
+ -o-transition: opacity 0.2s ease-in-out 0.1s;
+ transition: opacity 0.2s ease-in-out 0.1s;
+ }
+
+ &:hover .header-link {
+ opacity: 1;
+ }
+ }
+
+ p,
+ li,
+ dl {
+ font-size: 1em;
+ }
+
+ /* paragraph indents */
+ p {
+ margin: 0 0 $indent-var;
+
+ /* sibling indentation*/
+ @if $paragraph-indent == true {
+ & + p {
+ text-indent: $indent-var;
+ margin-top: -($indent-var);
+ }
+ }
+ }
+
+ a:not(.btn) {
+ &:hover {
+ text-decoration: underline;
+
+ img {
+ box-shadow: 0 0 10px rgba(#000, 0.25);
+ }
+ }
+ }
+
+ dt {
+ margin-top: 1em;
+ font-family: $sans-serif;
+ font-weight: bold;
+ }
+
+ dd {
+ margin-left: 1em;
+ font-family: $sans-serif;
+ font-size: $type-size-6;
+ }
+
+ .small {
+ font-size: $type-size-6;
+ }
+
+ /* blockquote citations */
+ blockquote + .small {
+ margin-top: -1.5em;
+ padding-left: 1.25rem;
+ }
+}
+
+.page__hero {
+ position: relative;
+ margin-bottom: 2em;
+ @include clearfix;
+ -webkit-animation: $intro-transition;
+ animation: $intro-transition;
+ -webkit-animation-delay: 0.25s;
+ animation-delay: 0.25s;
+
+ &--overlay {
+ position: relative;
+ margin-bottom: 2em;
+ padding: 3em 0;
+ @include clearfix;
+ background-size: cover;
+ background-repeat: no-repeat;
+ background-position: center;
+ -webkit-animation: $intro-transition;
+ animation: $intro-transition;
+ -webkit-animation-delay: 0.25s;
+ animation-delay: 0.25s;
+
+ a {
+ color: #fff;
+ }
+
+ .wrapper {
+ padding-left: 1em;
+ padding-right: 1em;
+
+ @include breakpoint($x-large) {
+ max-width: $x-large;
+ }
+ }
+
+ .page__title,
+ .page__meta,
+ .page__lead,
+ .btn {
+ color: #fff;
+ text-shadow: 1px 1px 4px rgba(#000, 0.5);
+ }
+
+ .page__lead {
+ max-width: $medium;
+ }
+
+ .page__title {
+ font-size: $type-size-2;
+
+ @include breakpoint($small) {
+ font-size: $type-size-1;
+ }
+ }
+ }
+}
+
+.page__hero-image {
+ width: 100%;
+ height: auto;
+ -ms-interpolation-mode: bicubic;
+}
+
+.page__hero-caption {
+ position: absolute;
+ bottom: 0;
+ right: 0;
+ margin: 0 auto;
+ padding: 2px 5px;
+ color: #fff;
+ font-family: $caption-font-family;
+ font-size: $type-size-7;
+ background: #000;
+ text-align: right;
+ z-index: 5;
+ opacity: 0.5;
+ border-radius: $border-radius 0 0 0;
+
+ @include breakpoint($large) {
+ padding: 5px 10px;
+ }
+
+ a {
+ color: #fff;
+ text-decoration: none;
+ }
+}
+
+/*
+ Social sharing
+ ========================================================================== */
+
+.page__share {
+ margin-top: 2em;
+ padding-top: 1em;
+ border-top: 1px solid $border-color;
+
+ @include breakpoint(max-width $small) {
+ .btn span {
+ border: 0;
+ clip: rect(0 0 0 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px;
+ }
+ }
+}
+
+.page__share-title {
+ margin-bottom: 10px;
+ font-size: $type-size-6;
+ text-transform: uppercase;
+}
+
+/*
+ Page meta
+ ========================================================================== */
+
+.page__meta {
+ margin-top: 2em;
+ color: $muted-text-color;
+ font-family: $sans-serif;
+ font-size: $type-size-6;
+
+ p {
+ margin: 0;
+ }
+
+ a {
+ color: inherit;
+ }
+}
+
+.page__meta-title {
+ margin-bottom: 10px;
+ font-size: $type-size-6;
+ text-transform: uppercase;
+}
+
+.page__meta-sep::before {
+ content: "\2022";
+ padding-left: 0.5em;
+ padding-right: 0.5em;
+}
+
+/*
+ Page taxonomy
+ ========================================================================== */
+
+.page__taxonomy {
+ .sep {
+ display: none;
+ }
+
+ strong {
+ margin-right: 10px;
+ }
+}
+
+.page__taxonomy-item {
+ display: inline-block;
+ margin-right: 5px;
+ margin-bottom: 8px;
+ padding: 5px 10px;
+ text-decoration: none;
+ border: 1px solid mix(#000, $border-color, 25%);
+ border-radius: $border-radius;
+
+ &:hover {
+ text-decoration: none;
+ color: $link-color-hover;
+ }
+}
+
+.taxonomy__section {
+ margin-bottom: 2em;
+ padding-bottom: 1em;
+
+ &:not(:last-child) {
+ border-bottom: solid 1px $border-color;
+ }
+
+ .archive__item-title {
+ margin-top: 0;
+ }
+
+ .archive__subtitle {
+ clear: both;
+ border: 0;
+ }
+
+ + .taxonomy__section {
+ margin-top: 2em;
+ }
+}
+
+.taxonomy__title {
+ margin-bottom: 0.5em;
+ color: $muted-text-color;
+}
+
+.taxonomy__count {
+ color: $muted-text-color;
+}
+
+.taxonomy__index {
+ display: grid;
+ grid-column-gap: 2em;
+ grid-template-columns: repeat(2, 1fr);
+ margin: 1.414em 0;
+ padding: 0;
+ font-size: 0.75em;
+ list-style: none;
+
+ @include breakpoint($large) {
+ grid-template-columns: repeat(3, 1fr);
+ }
+
+ a {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ padding: 0.25em 0;
+ -webkit-box-pack: justify;
+ -ms-flex-pack: justify;
+ justify-content: space-between;
+ color: inherit;
+ text-decoration: none;
+ border-bottom: 1px solid $border-color;
+ }
+}
+
+.back-to-top {
+ display: block;
+ clear: both;
+ color: $muted-text-color;
+ font-size: 0.6em;
+ text-transform: uppercase;
+ text-align: right;
+ text-decoration: none;
+}
+
+/*
+ Comments
+ ========================================================================== */
+
+.page__comments {
+ float: left;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+ clear: both;
+}
+
+.page__comments-title {
+ margin-top: 2rem;
+ margin-bottom: 10px;
+ padding-top: 2rem;
+ font-size: $type-size-6;
+ border-top: 1px solid $border-color;
+ text-transform: uppercase;
+}
+
+.page__comments-form {
+ -webkit-transition: $global-transition;
+ transition: $global-transition;
+
+ &.disabled {
+ input,
+ button,
+ textarea,
+ label {
+ pointer-events: none;
+ cursor: not-allowed;
+ filter: alpha(opacity=65);
+ box-shadow: none;
+ opacity: 0.65;
+ }
+ }
+}
+
+.comment {
+ @include clearfix();
+ margin: 1em 0;
+
+ &:not(:last-child) {
+ border-bottom: 1px solid $border-color;
+ }
+}
+
+.comment__avatar-wrapper {
+ float: left;
+ width: 60px;
+ height: 60px;
+
+ @include breakpoint($large) {
+ width: 100px;
+ height: 100px;
+ }
+}
+
+.comment__avatar {
+ width: 40px;
+ height: 40px;
+ border-radius: 50%;
+
+ @include breakpoint($large) {
+ width: 80px;
+ height: 80px;
+ padding: 5px;
+ border: 1px solid $border-color;
+ }
+}
+
+.comment__content-wrapper {
+ float: right;
+ width: calc(100% - 60px);
+
+ @include breakpoint($large) {
+ width: calc(100% - 100px);
+ }
+}
+
+.comment__author {
+ margin: 0;
+
+ a {
+ text-decoration: none;
+ }
+}
+
+.comment__date {
+ @extend .page__meta;
+ margin: 0;
+
+ a {
+ text-decoration: none;
+ }
+}
+
+/*
+ Related
+ ========================================================================== */
+
+.page__related {
+ @include clearfix();
+ float: left;
+ margin-top: 2em;
+ padding-top: 1em;
+ border-top: 1px solid $border-color;
+
+ @include breakpoint($large) {
+ float: right;
+ width: calc(100% - #{$right-sidebar-width-narrow});
+ }
+
+ @include breakpoint($x-large) {
+ width: calc(100% - #{$right-sidebar-width});
+ }
+
+ a {
+ color: inherit;
+ text-decoration: none;
+ }
+}
+
+.page__related-title {
+ margin-bottom: 10px;
+ font-size: $type-size-6;
+ text-transform: uppercase;
+}
+
+/*
+ Wide Pages
+ ========================================================================== */
+
+.wide {
+ .page {
+ @include breakpoint($large) {
+ padding-right: 0;
+ }
+
+ @include breakpoint($x-large) {
+ padding-right: 0;
+ }
+ }
+
+ .page__related {
+ @include breakpoint($large) {
+ padding-right: 0;
+ }
+
+ @include breakpoint($x-large) {
+ padding-right: 0;
+ }
+ }
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_print.scss b/docs/_sass/minimal-mistakes/_print.scss
new file mode 100644
index 00000000..b93f1d40
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_print.scss
@@ -0,0 +1,252 @@
+/* ==========================================================================
+ PRINT STYLES
+ ========================================================================== */
+
+@media print {
+
+ [hidden] {
+ display: none;
+ }
+
+ * {
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ }
+
+ html {
+ margin: 0;
+ padding: 0;
+ min-height: auto !important;
+ font-size: 16px;
+ }
+
+ body {
+ margin: 0 auto;
+ background: #fff !important;
+ color: #000 !important;
+ font-size: 1rem;
+ line-height: 1.5;
+ -moz-osx-font-smoothing: grayscale;
+ -webkit-font-smoothing: antialiased;
+ text-rendering: optimizeLegibility;
+ }
+
+ h1,
+ h2,
+ h3,
+ h4,
+ h5,
+ h6 {
+ color: #000;
+ line-height: 1.2;
+ margin-bottom: 0.75rem;
+ margin-top: 0;
+ }
+
+ h1 {
+ font-size: 2.5rem;
+ }
+
+ h2 {
+ font-size: 2rem;
+ }
+
+ h3 {
+ font-size: 1.75rem;
+ }
+
+ h4 {
+ font-size: 1.5rem;
+ }
+
+ h5 {
+ font-size: 1.25rem;
+ }
+
+ h6 {
+ font-size: 1rem;
+ }
+
+ a,
+ a:visited {
+ color: #000;
+ text-decoration: underline;
+ word-wrap: break-word;
+ }
+
+ table {
+ border-collapse: collapse;
+ }
+
+ thead {
+ display: table-header-group;
+ }
+
+ table,
+ th,
+ td {
+ border-bottom: 1px solid #000;
+ }
+
+ td,
+ th {
+ padding: 8px 16px;
+ }
+
+ img {
+ border: 0;
+ display: block;
+ max-width: 100% !important;
+ vertical-align: middle;
+ }
+
+ hr {
+ border: 0;
+ border-bottom: 2px solid #bbb;
+ height: 0;
+ margin: 2.25rem 0;
+ padding: 0;
+ }
+
+ dt {
+ font-weight: bold;
+ }
+
+ dd {
+ margin: 0;
+ margin-bottom: 0.75rem;
+ }
+
+ abbr[title],
+ acronym[title] {
+ border: 0;
+ text-decoration: none;
+ }
+
+ table,
+ blockquote,
+ pre,
+ code,
+ figure,
+ li,
+ hr,
+ ul,
+ ol,
+ a,
+ tr {
+ page-break-inside: avoid;
+ }
+
+ h2,
+ h3,
+ h4,
+ p,
+ a {
+ orphans: 3;
+ widows: 3;
+ }
+
+ h1,
+ h2,
+ h3,
+ h4,
+ h5,
+ h6 {
+ page-break-after: avoid;
+ page-break-inside: avoid;
+ }
+
+ h1 + p,
+ h2 + p,
+ h3 + p {
+ page-break-before: avoid;
+ }
+
+ img {
+ page-break-after: auto;
+ page-break-before: auto;
+ page-break-inside: avoid;
+ }
+
+ pre {
+ white-space: pre-wrap !important;
+ word-wrap: break-word;
+ }
+
+ a[href^='http://']:after,
+ a[href^='https://']:after,
+ a[href^='ftp://']:after {
+ content: " (" attr(href) ")";
+ font-size: 80%;
+ }
+
+ abbr[title]:after,
+ acronym[title]:after {
+ content: " (" attr(title) ")";
+ }
+
+ #main {
+ max-width: 100%;
+ }
+
+ .page {
+ margin: 0;
+ padding: 0;
+ width: 100%;
+ }
+
+ .page-break,
+ .page-break-before {
+ page-break-before: always;
+ }
+
+ .page-break-after {
+ page-break-after: always;
+ }
+
+ .no-print {
+ display: none;
+ }
+
+ a.no-reformat:after {
+ content: '';
+ }
+
+ abbr[title].no-reformat:after,
+ acronym[title].no-reformat:after {
+ content: '';
+ }
+
+ .page__hero-caption {
+ color: #000 !important;
+ background: #fff !important;
+ opacity: 1;
+
+ a {
+ color: #000 !important;
+ }
+ }
+
+/*
+ Hide the following elements on print
+ ========================================================================== */
+
+ .masthead,
+ .toc,
+ .page__share,
+ .page__related,
+ .pagination,
+ .ads,
+ .page__footer,
+ .page__comments-form,
+ .author__avatar,
+ .author__content,
+ .author__urls-wrapper,
+ .nav__list,
+ .sidebar,
+ .adsbygoogle {
+ display: none !important;
+ height: 1px !important;
+ }
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_reset.scss b/docs/_sass/minimal-mistakes/_reset.scss
new file mode 100644
index 00000000..2259fd0c
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_reset.scss
@@ -0,0 +1,187 @@
+/* ==========================================================================
+ STYLE RESETS
+ ========================================================================== */
+
+* { box-sizing: border-box; }
+
+html {
+ /* apply a natural box layout model to all elements */
+ box-sizing: border-box;
+ background-color: $background-color;
+ font-size: 16px;
+
+ @include breakpoint($medium) {
+ font-size: 18px;
+ }
+
+ @include breakpoint($large) {
+ font-size: 20px;
+ }
+
+ @include breakpoint($x-large) {
+ font-size: 22px;
+ }
+
+ -webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
+}
+
+/* Remove margin */
+
+body { margin: 0; }
+
+/* Selected elements */
+
+::-moz-selection {
+ color: #fff;
+ background: #000;
+}
+
+::selection {
+ color: #fff;
+ background: #000;
+}
+
+/* Display HTML5 elements in IE6-9 and FF3 */
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+main,
+nav,
+section {
+ display: block;
+}
+
+/* Display block in IE6-9 and FF3 */
+
+audio,
+canvas,
+video {
+ display: inline-block;
+ *display: inline;
+ *zoom: 1;
+}
+
+/* Prevents modern browsers from displaying 'audio' without controls */
+
+audio:not([controls]) {
+ display: none;
+}
+
+a {
+ color: $link-color;
+}
+
+/* Apply focus state */
+
+a:focus {
+ @extend %tab-focus;
+}
+
+/* Remove outline from links */
+
+a:hover,
+a:active {
+ outline: 0;
+}
+
+/* Prevent sub and sup affecting line-height in all browsers */
+
+sub,
+sup {
+ position: relative;
+ font-size: 75%;
+ line-height: 0;
+ vertical-align: baseline;
+}
+
+sup {
+ top: -0.5em;
+}
+
+sub {
+ bottom: -0.25em;
+}
+
+/* img border in anchor's and image quality */
+
+img {
+ /* Responsive images (ensure images don't scale beyond their parents) */
+ max-width: 100%; /* part 1: Set a maximum relative to the parent*/
+ width: auto\9; /* IE7-8 need help adjusting responsive images*/
+ height: auto; /* part 2: Scale the height according to the width, otherwise you get stretching*/
+
+ vertical-align: middle;
+ border: 0;
+ -ms-interpolation-mode: bicubic;
+}
+
+/* Prevent max-width from affecting Google Maps */
+
+#map_canvas img,
+.google-maps img {
+ max-width: none;
+}
+
+/* Consistent form font size in all browsers, margin changes, misc */
+
+button,
+input,
+select,
+textarea {
+ margin: 0;
+ font-size: 100%;
+ vertical-align: middle;
+}
+
+button,
+input {
+ *overflow: visible; /* inner spacing ie IE6/7*/
+ line-height: normal; /* FF3/4 have !important on line-height in UA stylesheet*/
+}
+
+button::-moz-focus-inner,
+input::-moz-focus-inner { /* inner padding and border oddities in FF3/4*/
+ padding: 0;
+ border: 0;
+}
+
+button,
+html input[type="button"], // avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls
+input[type="reset"],
+input[type="submit"] {
+ -webkit-appearance: button; /* corrects inability to style clickable `input` types in iOS*/
+ cursor: pointer; /* improves usability and consistency of cursor style between image-type `input` and others*/
+}
+
+label,
+select,
+button,
+input[type="button"],
+input[type="reset"],
+input[type="submit"],
+input[type="radio"],
+input[type="checkbox"] {
+ cursor: pointer; /* improves usability and consistency of cursor style between image-type `input` and others*/
+}
+
+input[type="search"] { /* Appearance in Safari/Chrome*/
+ box-sizing: border-box;
+ -webkit-appearance: textfield;
+}
+
+input[type="search"]::-webkit-search-decoration,
+input[type="search"]::-webkit-search-cancel-button {
+ -webkit-appearance: none; /* inner-padding issues in Chrome OSX, Safari 5*/
+}
+
+textarea {
+ overflow: auto; /* remove vertical scrollbar in IE6-9*/
+ vertical-align: top; /* readability and alignment cross-browser*/
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_search.scss b/docs/_sass/minimal-mistakes/_search.scss
new file mode 100644
index 00000000..fa7ee832
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_search.scss
@@ -0,0 +1,132 @@
+/* ==========================================================================
+ SEARCH
+ ========================================================================== */
+
+.layout--search {
+ .archive__item-teaser {
+ margin-bottom: 0.25em;
+ }
+}
+
+.search__toggle {
+ margin-left: 1rem;
+ margin-right: 1rem;
+ height: $nav-toggle-height;
+ border: 0;
+ outline: none;
+ color: $primary-color;
+ background-color: transparent;
+ cursor: pointer;
+ -webkit-transition: 0.2s;
+ transition: 0.2s;
+
+ &:hover {
+ color: mix(#000, $primary-color, 25%);
+ }
+}
+
+.search-icon {
+ width: 100%;
+ height: 100%;
+}
+
+.search-content {
+ display: none;
+ visibility: hidden;
+ padding-top: 1em;
+ padding-bottom: 1em;
+
+ &__inner-wrap {
+ width: 100%;
+ margin-left: auto;
+ margin-right: auto;
+ padding-left: 1em;
+ padding-right: 1em;
+ -webkit-animation: $intro-transition;
+ animation: $intro-transition;
+ -webkit-animation-delay: 0.15s;
+ animation-delay: 0.15s;
+
+ @include breakpoint($x-large) {
+ max-width: $max-width;
+ }
+
+ }
+
+ &__form {
+ background-color: transparent;
+ }
+
+ .search-input {
+ display: block;
+ margin-bottom: 0;
+ padding: 0;
+ border: none;
+ outline: none;
+ box-shadow: none;
+ background-color: transparent;
+ font-size: $type-size-3;
+
+ @include breakpoint($large) {
+ font-size: $type-size-2;
+ }
+
+ @include breakpoint($x-large) {
+ font-size: $type-size-1;
+ }
+ }
+
+ &.is--visible {
+ display: block;
+ visibility: visible;
+
+ &::after {
+ content: "";
+ display: block;
+ }
+ }
+
+ .results__found {
+ margin-top: 0.5em;
+ font-size: $type-size-6;
+ }
+
+ .archive__item {
+ margin-bottom: 2em;
+
+ @include breakpoint($large) {
+ width: 75%;
+ }
+
+ @include breakpoint($x-large) {
+ width: 50%;
+ }
+ }
+
+ .archive__item-title {
+ margin-top: 0;
+ }
+
+ .archive__item-excerpt {
+ margin-bottom: 0;
+ }
+}
+
+/* Algolia search */
+
+.ais-search-box {
+ max-width: 100% !important;
+ margin-bottom: 2em;
+}
+
+.archive__item-title .ais-Highlight {
+ color: $primary-color;
+ font-style: normal;
+ text-decoration: underline;
+}
+
+.archive__item-excerpt .ais-Highlight {
+ color: $primary-color;
+ font-style: normal;
+ font-weight: bold;
+}
diff --git a/docs/_sass/minimal-mistakes/_sidebar.scss b/docs/_sass/minimal-mistakes/_sidebar.scss
new file mode 100644
index 00000000..02b455b4
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_sidebar.scss
@@ -0,0 +1,353 @@
+/* ==========================================================================
+ SIDEBAR
+ ========================================================================== */
+
+/*
+ Default
+ ========================================================================== */
+
+.sidebar {
+ @include clearfix();
+ // @include breakpoint(max-width $large) {
+ // /* fix z-index order of follow links */
+ // position: relative;
+ // z-index: 10;
+ // -webkit-transform: translate3d(0, 0, 0);
+ // transform: translate3d(0, 0, 0);
+ // }
+
+ @include breakpoint($large) {
+ float: left;
+ width: calc(#{$right-sidebar-width-narrow} - 1em);
+ opacity: 0.75;
+ -webkit-transition: opacity 0.2s ease-in-out;
+ transition: opacity 0.2s ease-in-out;
+
+ &:hover {
+ opacity: 1;
+ }
+
+ &.sticky {
+ overflow-y: auto;
+ /* calculate height of nav list
+ viewport height - nav height - masthead x-padding
+ */
+ max-height: calc(100vh - #{$nav-height} - 2em);
+ }
+ }
+
+ @include breakpoint($x-large) {
+ width: calc(#{$right-sidebar-width} - 1em);
+ }
+
+ > * {
+ margin-top: 1em;
+ margin-bottom: 1em;
+ }
+
+ h2,
+ h3,
+ h4,
+ h5,
+ h6 {
+ margin-bottom: 0;
+ font-family: $sans-serif-narrow;
+ }
+
+ p,
+ li {
+ font-family: $sans-serif;
+ font-size: $type-size-6;
+ line-height: 1.5;
+ }
+
+ img {
+ width: 100%;
+
+ &.emoji {
+ width: 20px;
+ height: 20px;
+ }
+ }
+}
+
+.sidebar__right {
+ margin-bottom: 1em;
+
+ @include breakpoint($large) {
+ position: absolute;
+ top: 0;
+ right: 0;
+ width: $right-sidebar-width-narrow;
+ margin-right: -1 * $right-sidebar-width-narrow;
+ padding-left: 1em;
+ z-index: 10;
+
+ &.sticky {
+ @include clearfix();
+ position: -webkit-sticky;
+ position: sticky;
+ top: 2em;
+ float: right;
+
+ .toc {
+ .toc__menu {
+ overflow-y: auto;
+ max-height: calc(100vh - 7em);
+ }
+ }
+ }
+ }
+
+ @include breakpoint($x-large) {
+ width: $right-sidebar-width;
+ margin-right: -1 * $right-sidebar-width;
+ }
+}
+
+.splash .sidebar__right {
+ @include breakpoint($large) {
+ position: relative;
+ float: right;
+ margin-right: 0;
+ }
+
+ @include breakpoint($x-large) {
+ margin-right: 0;
+ }
+}
+
+/*
+ Author profile and links
+ ========================================================================== */
+
+.author__avatar {
+ display: table-cell;
+ vertical-align: top;
+ width: 36px;
+ height: 36px;
+
+ @include breakpoint($large) {
+ display: block;
+ width: auto;
+ height: auto;
+ }
+
+ img {
+ max-width: 110px;
+ border-radius: 50%;
+
+ @include breakpoint($large) {
+ padding: 5px;
+ border: 1px solid $border-color;
+ }
+ }
+}
+
+.author__content {
+ display: table-cell;
+ vertical-align: top;
+ padding-left: 15px;
+ padding-right: 25px;
+ line-height: 1;
+
+ @include breakpoint($large) {
+ display: block;
+ width: 100%;
+ padding-left: 0;
+ padding-right: 0;
+ }
+
+ a {
+ color: inherit;
+ text-decoration: none;
+ }
+}
+
+.author__name {
+ margin: 0;
+
+ @include breakpoint($large) {
+ margin-top: 10px;
+ margin-bottom: 10px;
+ }
+}
+.sidebar .author__name {
+ font-family: $sans-serif;
+ font-size: $type-size-5;
+}
+
+.author__bio {
+ margin: 0;
+
+ @include breakpoint($large) {
+ margin-top: 10px;
+ margin-bottom: 20px;
+ }
+}
+
+.author__urls-wrapper {
+ position: relative;
+ display: table-cell;
+ vertical-align: middle;
+ font-family: $sans-serif;
+ z-index: 20;
+ cursor: pointer;
+
+ li:last-child {
+ a {
+ margin-bottom: 0;
+ }
+ }
+
+ .author__urls {
+ span.label {
+ padding-left: 5px;
+ }
+ }
+
+ @include breakpoint($large) {
+ display: block;
+ }
+
+ button {
+ position: relative;
+ margin-bottom: 0;
+
+ &:before {
+ @supports (pointer-events: none) {
+ content: '';
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ pointer-events: none;
+ }
+ }
+
+ &.open {
+ &:before {
+ pointer-events: auto;
+ }
+ }
+
+ @include breakpoint($large) {
+ display: none;
+ }
+ }
+}
+
+.author__urls {
+ display: none;
+ position: absolute;
+ right: 0;
+ margin-top: 15px;
+ padding: 10px;
+ list-style-type: none;
+ border: 1px solid $border-color;
+ border-radius: $border-radius;
+ background: $background-color;
+ box-shadow: 0 2px 4px 0 rgba(#000, 0.16), 0 2px 10px 0 rgba(#000, 0.12);
+ cursor: default;
+
+ &.is--visible {
+ display: block;
+ }
+
+ @include breakpoint($large) {
+ display: block;
+ position: relative;
+ margin: 0;
+ padding: 0;
+ border: 0;
+ background: transparent;
+ box-shadow: none;
+ }
+
+ &:before {
+ display: block;
+ content: "";
+ position: absolute;
+ top: -11px;
+ left: calc(50% - 10px);
+ width: 0;
+ border-style: solid;
+ border-width: 0 10px 10px;
+ border-color: $border-color transparent;
+ z-index: 0;
+
+ @include breakpoint($large) {
+ display: none;
+ }
+ }
+
+ &:after {
+ display: block;
+ content: "";
+ position: absolute;
+ top: -10px;
+ left: calc(50% - 10px);
+ width: 0;
+ border-style: solid;
+ border-width: 0 10px 10px;
+ border-color: $background-color transparent;
+ z-index: 1;
+
+ @include breakpoint($large) {
+ display: none;
+ }
+ }
+
+ ul {
+ padding: 10px;
+ list-style-type: none;
+ }
+
+ li {
+ white-space: nowrap;
+ }
+
+ a {
+ display: block;
+ margin-bottom: 5px;
+ padding-right: 5px;
+ padding-top: 2px;
+ padding-bottom: 2px;
+ color: inherit;
+ font-size: $type-size-5;
+ text-decoration: none;
+
+ &:hover {
+ text-decoration: underline;
+ }
+ }
+}
+
+/*
+ Wide Pages
+ ========================================================================== */
+
+.wide .sidebar__right {
+ margin-bottom: 1em;
+
+ @include breakpoint($large) {
+ position: initial;
+ top: initial;
+ right: initial;
+ width: initial;
+ margin-right: initial;
+ padding-left: initial;
+ z-index: initial;
+
+ &.sticky {
+ float: none;
+ }
+ }
+
+ @include breakpoint($x-large) {
+ width: initial;
+ margin-right: initial;
+ }
+}
+
diff --git a/docs/_sass/minimal-mistakes/_syntax.scss b/docs/_sass/minimal-mistakes/_syntax.scss
new file mode 100644
index 00000000..72652020
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_syntax.scss
@@ -0,0 +1,324 @@
+/* ==========================================================================
+ Syntax highlighting
+ ========================================================================== */
+
+div.highlighter-rouge,
+figure.highlight {
+ position: relative;
+ margin-bottom: 1em;
+ background: $base00;
+ color: $base05;
+ font-family: $monospace;
+ font-size: $type-size-6;
+ line-height: 1.8;
+ border-radius: $border-radius;
+
+ > pre,
+ pre.highlight {
+ margin: 0;
+ padding: 1em;
+ }
+}
+
+.highlight table {
+ margin-bottom: 0;
+ font-size: 1em;
+ border: 0;
+
+ td {
+ padding: 0;
+ width: calc(100% - 1em);
+ border: 0;
+
+ /* line numbers*/
+ &.gutter,
+ &.rouge-gutter {
+ padding-right: 1em;
+ width: 1em;
+ color: $base04;
+ border-right: 1px solid $base04;
+ text-align: right;
+ }
+
+ /* code */
+ &.code,
+ &.rouge-code {
+ padding-left: 1em;
+ }
+ }
+
+ pre {
+ margin: 0;
+ }
+}
+
+.highlight pre {
+ width: 100%;
+}
+
+.highlight .hll {
+ background-color: $base06;
+}
+.highlight {
+ .c {
+ /* Comment */
+ color: $base04;
+ }
+ .err {
+ /* Error */
+ color: $base08;
+ }
+ .k {
+ /* Keyword */
+ color: $base0e;
+ }
+ .l {
+ /* Literal */
+ color: $base09;
+ }
+ .n {
+ /* Name */
+ color: $base05;
+ }
+ .o {
+ /* Operator */
+ color: $base0c;
+ }
+ .p {
+ /* Punctuation */
+ color: $base05;
+ }
+ .cm {
+ /* Comment.Multiline */
+ color: $base04;
+ }
+ .cp {
+ /* Comment.Preproc */
+ color: $base04;
+ }
+ .c1 {
+ /* Comment.Single */
+ color: $base04;
+ }
+ .cs {
+ /* Comment.Special */
+ color: $base04;
+ }
+ .gd {
+ /* Generic.Deleted */
+ color: $base08;
+ }
+ .ge {
+ /* Generic.Emph */
+ font-style: italic;
+ }
+ .gh {
+ /* Generic.Heading */
+ color: $base05;
+ font-weight: bold;
+ }
+ .gi {
+ /* Generic.Inserted */
+ color: $base0b;
+ }
+ .gp {
+ /* Generic.Prompt */
+ color: $base04;
+ font-weight: bold;
+ }
+ .gs {
+ /* Generic.Strong */
+ font-weight: bold;
+ }
+ .gu {
+ /* Generic.Subheading */
+ color: $base0c;
+ font-weight: bold;
+ }
+ .kc {
+ /* Keyword.Constant */
+ color: $base0e;
+ }
+ .kd {
+ /* Keyword.Declaration */
+ color: $base0e;
+ }
+ .kn {
+ /* Keyword.Namespace */
+ color: $base0c;
+ }
+ .kp {
+ /* Keyword.Pseudo */
+ color: $base0e;
+ }
+ .kr {
+ /* Keyword.Reserved */
+ color: $base0e;
+ }
+ .kt {
+ /* Keyword.Type */
+ color: $base0a;
+ }
+ .ld {
+ /* Literal.Date */
+ color: $base0b;
+ }
+ .m {
+ /* Literal.Number */
+ color: $base09;
+ }
+ .s {
+ /* Literal.String */
+ color: $base0b;
+ }
+ .na {
+ /* Name.Attribute */
+ color: $base0d;
+ }
+ .nb {
+ /* Name.Builtin */
+ color: $base05;
+ }
+ .nc {
+ /* Name.Class */
+ color: $base0a;
+ }
+ .no {
+ /* Name.Constant */
+ color: $base08;
+ }
+ .nd {
+ /* Name.Decorator */
+ color: $base0c;
+ }
+ .ni {
+ /* Name.Entity */
+ color: $base05;
+ }
+ .ne {
+ /* Name.Exception */
+ color: $base08;
+ }
+ .nf {
+ /* Name.Function */
+ color: $base0d;
+ }
+ .nl {
+ /* Name.Label */
+ color: $base05;
+ }
+ .nn {
+ /* Name.Namespace */
+ color: $base0a;
+ }
+ .nx {
+ /* Name.Other */
+ color: $base0d;
+ }
+ .py {
+ /* Name.Property */
+ color: $base05;
+ }
+ .nt {
+ /* Name.Tag */
+ color: $base0c;
+ }
+ .nv {
+ /* Name.Variable */
+ color: $base08;
+ }
+ .ow {
+ /* Operator.Word */
+ color: $base0c;
+ }
+ .w {
+ /* Text.Whitespace */
+ color: $base05;
+ }
+ .mf {
+ /* Literal.Number.Float */
+ color: $base09;
+ }
+ .mh {
+ /* Literal.Number.Hex */
+ color: $base09;
+ }
+ .mi {
+ /* Literal.Number.Integer */
+ color: $base09;
+ }
+ .mo {
+ /* Literal.Number.Oct */
+ color: $base09;
+ }
+ .sb {
+ /* Literal.String.Backtick */
+ color: $base0b;
+ }
+ .sc {
+ /* Literal.String.Char */
+ color: $base05;
+ }
+ .sd {
+ /* Literal.String.Doc */
+ color: $base04;
+ }
+ .s2 {
+ /* Literal.String.Double */
+ color: $base0b;
+ }
+ .se {
+ /* Literal.String.Escape */
+ color: $base09;
+ }
+ .sh {
+ /* Literal.String.Heredoc */
+ color: $base0b;
+ }
+ .si {
+ /* Literal.String.Interpol */
+ color: $base09;
+ }
+ .sx {
+ /* Literal.String.Other */
+ color: $base0b;
+ }
+ .sr {
+ /* Literal.String.Regex */
+ color: $base0b;
+ }
+ .s1 {
+ /* Literal.String.Single */
+ color: $base0b;
+ }
+ .ss {
+ /* Literal.String.Symbol */
+ color: $base0b;
+ }
+ .bp {
+ /* Name.Builtin.Pseudo */
+ color: $base05;
+ }
+ .vc {
+ /* Name.Variable.Class */
+ color: $base08;
+ }
+ .vg {
+ /* Name.Variable.Global */
+ color: $base08;
+ }
+ .vi {
+ /* Name.Variable.Instance */
+ color: $base08;
+ }
+ .il {
+ /* Literal.Number.Integer.Long */
+ color: $base09;
+ }
+}
+
+.gist {
+ th, td {
+ border-bottom: 0;
+ }
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_tables.scss b/docs/_sass/minimal-mistakes/_tables.scss
new file mode 100644
index 00000000..c270a775
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_tables.scss
@@ -0,0 +1,39 @@
+/* ==========================================================================
+ TABLES
+ ========================================================================== */
+
+table {
+ display: block;
+ margin-bottom: 1em;
+ width: 100%;
+ font-family: $global-font-family;
+ font-size: $type-size-6;
+ border-collapse: collapse;
+ overflow-x: auto;
+
+ & + table {
+ margin-top: 1em;
+ }
+}
+
+thead {
+ background-color: $border-color;
+ border-bottom: 2px solid mix(#000, $border-color, 25%);
+}
+
+th {
+ padding: 0.5em;
+ font-weight: bold;
+ text-align: left;
+}
+
+td {
+ padding: 0.5em;
+ border-bottom: 1px solid mix(#000, $border-color, 25%);
+}
+
+tr,
+td,
+th {
+ vertical-align: middle;
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/_utilities.scss b/docs/_sass/minimal-mistakes/_utilities.scss
new file mode 100644
index 00000000..1c127d36
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_utilities.scss
@@ -0,0 +1,593 @@
+/* ==========================================================================
+ UTILITY CLASSES
+ ========================================================================== */
+
+/*
+ Visibility
+ ========================================================================== */
+
+/* http://www.456bereastreet.com/archive/200711/screen_readers_sometimes_ignore_displaynone/ */
+
+.hidden,
+.is--hidden {
+ display: none;
+ visibility: hidden;
+}
+
+/* for preloading images */
+
+.load {
+ display: none;
+}
+
+.transparent {
+ opacity: 0;
+}
+
+/* https://developer.yahoo.com/blogs/ydn/clip-hidden-content-better-accessibility-53456.html */
+
+.visually-hidden,
+.screen-reader-text,
+.screen-reader-text span,
+.screen-reader-shortcut {
+ position: absolute !important;
+ clip: rect(1px, 1px, 1px, 1px);
+ height: 1px !important;
+ width: 1px !important;
+ border: 0 !important;
+ overflow: hidden;
+}
+
+body:hover .visually-hidden a,
+body:hover .visually-hidden input,
+body:hover .visually-hidden button {
+ display: none !important;
+}
+
+/* screen readers */
+
+.screen-reader-text:focus,
+.screen-reader-shortcut:focus {
+ clip: auto !important;
+ height: auto !important;
+ width: auto !important;
+ display: block;
+ font-size: 1em;
+ font-weight: bold;
+ padding: 15px 23px 14px;
+ background: #fff;
+ z-index: 100000;
+ text-decoration: none;
+ box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
+}
+
+/*
+ Skip links
+ ========================================================================== */
+
+.skip-link {
+ position: fixed;
+ z-index: 20;
+ margin: 0;
+ font-family: $sans-serif;
+ white-space: nowrap;
+}
+
+.skip-link li {
+ height: 0;
+ width: 0;
+ list-style: none;
+}
+
+/*
+ Type
+ ========================================================================== */
+
+.text-left {
+ text-align: left;
+}
+
+.text-center {
+ text-align: center;
+}
+
+.text-right {
+ text-align: right;
+}
+
+.text-justify {
+ text-align: justify;
+}
+
+.text-nowrap {
+ white-space: nowrap;
+}
+
+/*
+ Task lists
+ ========================================================================== */
+
+.task-list {
+ padding:0;
+
+ li {
+ list-style-type: none;
+ }
+
+ .task-list-item-checkbox {
+ margin-right: 0.5em;
+ opacity: 1;
+ }
+}
+
+.task-list .task-list {
+ margin-left: 1em;
+}
+
+/*
+ Alignment
+ ========================================================================== */
+
+/* clearfix */
+
+.cf {
+ clear: both;
+}
+
+.wrapper {
+ margin-left: auto;
+ margin-right: auto;
+ width: 100%;
+}
+
+/*
+ Images
+ ========================================================================== */
+
+/* image align left */
+
+.align-left {
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+
+ @include breakpoint($small) {
+ float: left;
+ margin-right: 1em;
+ }
+}
+
+/* image align right */
+
+.align-right {
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+
+ @include breakpoint($small) {
+ float: right;
+ margin-left: 1em;
+ }
+}
+
+/* image align center */
+
+.align-center {
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+/* file page content container */
+
+.full {
+ @include breakpoint($large) {
+ margin-right: -1 * span(2.5 of 12) !important;
+ }
+}
+
+/*
+ Icons
+ ========================================================================== */
+
+.icon {
+ display: inline-block;
+ fill: currentColor;
+ width: 1em;
+ height: 1.1em;
+ line-height: 1;
+ position: relative;
+ top: -0.1em;
+ vertical-align: middle;
+}
+
+/* social icons*/
+
+.social-icons {
+ .fas,
+ .fab,
+ .far,
+ .fal {
+ color: $text-color;
+ }
+
+ .fa-behance,
+ .fa-behance-square {
+ color: $behance-color;
+ }
+
+ .fa-bitbucket {
+ color: $bitbucket-color;
+ }
+
+ .fa-dribbble,
+ .fa-dribble-square {
+ color: $dribbble-color;
+ }
+
+ .fa-facebook,
+ .fa-facebook-square,
+ .fa-facebook-f {
+ color: $facebook-color;
+ }
+
+ .fa-flickr {
+ color: $flickr-color;
+ }
+
+ .fa-foursquare {
+ color: $foursquare-color;
+ }
+
+ .fa-github,
+ .fa-github-alt,
+ .fa-github-square {
+ color: $github-color;
+ }
+
+ .fa-gitlab {
+ color: $gitlab-color;
+ }
+
+ .fa-instagram {
+ color: $instagram-color;
+ }
+
+ .fa-keybase {
+ color: $keybase-color;
+ }
+
+ .fa-lastfm,
+ .fa-lastfm-square {
+ color: $lastfm-color;
+ }
+
+ .fa-linkedin,
+ .fa-linkedin-in {
+ color: $linkedin-color;
+ }
+
+ .fa-mastodon,
+ .fa-mastodon-square {
+ color: $mastodon-color;
+ }
+
+ .fa-pinterest,
+ .fa-pinterest-p,
+ .fa-pinterest-square {
+ color: $pinterest-color;
+ }
+
+ .fa-reddit {
+ color: $reddit-color;
+ }
+
+ .fa-rss,
+ .fa-rss-square {
+ color: $rss-color;
+ }
+
+ .fa-soundcloud {
+ color: $soundcloud-color;
+ }
+
+ .fa-stack-exchange,
+ .fa-stack-overflow {
+ color: $stackoverflow-color;
+ }
+
+ .fa-tumblr,
+ .fa-tumblr-square {
+ color: $tumblr-color;
+ }
+
+ .fa-twitter,
+ .fa-twitter-square {
+ color: $twitter-color;
+ }
+
+ .fa-vimeo,
+ .fa-vimeo-square,
+ .fa-vimeo-v {
+ color: $vimeo-color;
+ }
+
+ .fa-vine {
+ color: $vine-color;
+ }
+
+ .fa-youtube {
+ color: $youtube-color;
+ }
+
+ .fa-xing,
+ .fa-xing-square {
+ color: $xing-color;
+ }
+}
+
+/*
+ Navicons
+ ========================================================================== */
+
+.navicon {
+ position: relative;
+ width: $navicon-width;
+ height: $navicon-height;
+ background: $primary-color;
+ margin: auto;
+ -webkit-transition: 0.3s;
+ transition: 0.3s;
+
+ &:before,
+ &:after {
+ content: "";
+ position: absolute;
+ left: 0;
+ width: $navicon-width;
+ height: $navicon-height;
+ background: $primary-color;
+ -webkit-transition: 0.3s;
+ transition: 0.3s;
+ }
+
+ &:before {
+ top: (-2 * $navicon-height);
+ }
+
+ &:after {
+ bottom: (-2 * $navicon-height);
+ }
+}
+
+.close .navicon {
+ /* hide the middle line*/
+ background: transparent;
+
+ /* overlay the lines by setting both their top values to 0*/
+ &:before,
+ &:after {
+ -webkit-transform-origin: 50% 50%;
+ -ms-transform-origin: 50% 50%;
+ transform-origin: 50% 50%;
+ top: 0;
+ width: $navicon-width;
+ }
+
+ /* rotate the lines to form the x shape*/
+ &:before {
+ -webkit-transform: rotate3d(0, 0, 1, 45deg);
+ transform: rotate3d(0, 0, 1, 45deg);
+ }
+ &:after {
+ -webkit-transform: rotate3d(0, 0, 1, -45deg);
+ transform: rotate3d(0, 0, 1, -45deg);
+ }
+}
+
+.greedy-nav__toggle {
+ &:before {
+ @supports (pointer-events: none) {
+ content: '';
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ opacity: 0;
+ background-color: $background-color;
+ -webkit-transition: $global-transition;
+ transition: $global-transition;
+ pointer-events: none;
+ }
+ }
+
+ &.close {
+ &:before {
+ opacity: 0.9;
+ -webkit-transition: $global-transition;
+ transition: $global-transition;
+ pointer-events: auto;
+ }
+ }
+}
+
+.greedy-nav__toggle:hover {
+ .navicon,
+ .navicon:before,
+ .navicon:after {
+ background: mix(#000, $primary-color, 25%);
+ }
+
+ &.close {
+ .navicon {
+ background: transparent;
+ }
+ }
+}
+
+/*
+ Sticky, fixed to top content
+ ========================================================================== */
+
+.sticky {
+ @include breakpoint($large) {
+ @include clearfix();
+ position: -webkit-sticky;
+ position: sticky;
+ top: 2em;
+
+ > * {
+ display: block;
+ }
+ }
+}
+
+/*
+ Wells
+ ========================================================================== */
+
+.well {
+ min-height: 20px;
+ padding: 19px;
+ margin-bottom: 20px;
+ background-color: #f5f5f5;
+ border: 1px solid #e3e3e3;
+ border-radius: $border-radius;
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
+}
+
+/*
+ Modals
+ ========================================================================== */
+
+.show-modal {
+ overflow: hidden;
+ position: relative;
+
+ &:before {
+ position: absolute;
+ content: "";
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 999;
+ background-color: rgba(255, 255, 255, 0.85);
+ }
+
+ .modal {
+ display: block;
+ }
+}
+
+.modal {
+ display: none;
+ position: fixed;
+ width: 300px;
+ top: 50%;
+ left: 50%;
+ margin-left: -150px;
+ margin-top: -150px;
+ min-height: 0;
+ z-index: 9999;
+ background: #fff;
+ border: 1px solid $border-color;
+ border-radius: $border-radius;
+ box-shadow: $box-shadow;
+
+ &__title {
+ margin: 0;
+ padding: 0.5em 1em;
+ }
+
+ &__supporting-text {
+ padding: 0 1em 0.5em 1em;
+ }
+
+ &__actions {
+ padding: 0.5em 1em;
+ border-top: 1px solid $border-color;
+ }
+}
+
+/*
+ Footnotes
+ ========================================================================== */
+
+.footnote {
+ color: mix(#fff, $gray, 25%);
+ text-decoration: none;
+}
+
+.footnotes {
+ color: mix(#fff, $gray, 25%);
+
+ ol,
+ li,
+ p {
+ margin-bottom: 0;
+ font-size: $type-size-6;
+ }
+}
+
+a.reversefootnote {
+ color: $gray;
+ text-decoration: none;
+
+ &:hover {
+ text-decoration: underline;
+ }
+}
+
+/*
+ Required
+ ========================================================================== */
+
+.required {
+ color: $danger-color;
+ font-weight: bold;
+}
+
+/*
+ Google Custom Search Engine
+ ========================================================================== */
+
+.gsc-control-cse {
+ table,
+ tr,
+ td {
+ border: 0; /* remove table borders widget */
+ }
+}
+
+/*
+ Responsive Video Embed
+ ========================================================================== */
+
+.responsive-video-container {
+ position: relative;
+ margin-bottom: 1em;
+ padding-bottom: 56.25%;
+ height: 0;
+ overflow: hidden;
+ max-width: 100%;
+
+ iframe,
+ object,
+ embed {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ }
+}
+
+// full screen video fixes
+:-webkit-full-screen-ancestor {
+ .masthead,
+ .page__footer {
+ position: static;
+ }
+}
diff --git a/docs/_sass/minimal-mistakes/_variables.scss b/docs/_sass/minimal-mistakes/_variables.scss
new file mode 100644
index 00000000..81a3acf7
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/_variables.scss
@@ -0,0 +1,173 @@
+/* ==========================================================================
+ Variables
+ ========================================================================== */
+
+/*
+ Typography
+ ========================================================================== */
+
+$doc-font-size: 16 !default;
+
+/* paragraph indention */
+$paragraph-indent: false !default; // true, false (default)
+$indent-var: 1.3em !default;
+
+/* system typefaces */
+$serif: Georgia, Times, serif !default;
+$sans-serif: -apple-system, BlinkMacSystemFont, "Roboto", "Segoe UI",
+ "Helvetica Neue", "Lucida Grande", Arial, sans-serif !default;
+$monospace: Monaco, Consolas, "Lucida Console", monospace !default;
+
+/* sans serif typefaces */
+$sans-serif-narrow: $sans-serif !default;
+$helvetica: Helvetica, "Helvetica Neue", Arial, sans-serif !default;
+
+/* serif typefaces */
+$georgia: Georgia, serif !default;
+$times: Times, serif !default;
+$bodoni: "Bodoni MT", serif !default;
+$calisto: "Calisto MT", serif !default;
+$garamond: Garamond, serif !default;
+
+$global-font-family: $sans-serif !default;
+$header-font-family: $sans-serif !default;
+$caption-font-family: $serif !default;
+
+/* type scale */
+$type-size-1: 2.441em !default; // ~39.056px
+$type-size-2: 1.953em !default; // ~31.248px
+$type-size-3: 1.563em !default; // ~25.008px
+$type-size-4: 1.25em !default; // ~20px
+$type-size-5: 1em !default; // ~16px
+$type-size-6: 0.75em !default; // ~12px
+$type-size-7: 0.6875em !default; // ~11px
+$type-size-8: 0.625em !default; // ~10px
+
+/* headline scale */
+$h-size-1: 1.563em !default; // ~25.008px
+$h-size-2: 1.25em !default; // ~20px
+$h-size-3: 1.125em !default; // ~18px
+$h-size-4: 1.0625em !default; // ~17px
+$h-size-5: 1.03125em !default; // ~16.5px
+$h-size-6: 1em !default; // ~16px
+
+/*
+ Colors
+ ========================================================================== */
+
+$gray: #7a8288 !default;
+$dark-gray: mix(#000, $gray, 50%) !default;
+$darker-gray: mix(#000, $gray, 60%) !default;
+$light-gray: mix(#fff, $gray, 50%) !default;
+$lighter-gray: mix(#fff, $gray, 90%) !default;
+
+$background-color: #fff !default;
+$code-background-color: #fafafa !default;
+$code-background-color-dark: $light-gray !default;
+$text-color: $dark-gray !default;
+$muted-text-color: mix(#fff, $text-color, 20%) !default;
+$border-color: $lighter-gray !default;
+$form-background-color: $lighter-gray !default;
+$footer-background-color: $lighter-gray !default;
+
+$primary-color: #6f777d !default;
+$success-color: #3fa63f !default;
+$warning-color: #d67f05 !default;
+$danger-color: #ee5f5b !default;
+$info-color: #3b9cba !default;
+$focus-color: $primary-color !default;
+$active-color: mix(#fff, $primary-color, 80%) !default;
+
+/* YIQ color contrast */
+$yiq-contrasted-dark-default: $dark-gray !default;
+$yiq-contrasted-light-default: #fff !default;
+$yiq-contrasted-threshold: 175 !default;
+$yiq-debug: false !default;
+
+/* brands */
+$behance-color: #1769ff !default;
+$bitbucket-color: #205081 !default;
+$dribbble-color: #ea4c89 !default;
+$facebook-color: #3b5998 !default;
+$flickr-color: #ff0084 !default;
+$foursquare-color: #0072b1 !default;
+$github-color: #171516 !default;
+$gitlab-color: #e24329 !default;
+$instagram-color: #517fa4 !default;
+$keybase-color: #ef7639 !default;
+$lastfm-color: #d51007 !default;
+$linkedin-color: #007bb6 !default;
+$mastodon-color: #2b90d9 !default;
+$pinterest-color: #cb2027 !default;
+$reddit-color: #ff4500 !default;
+$rss-color: #fa9b39 !default;
+$soundcloud-color: #ff3300 !default;
+$stackoverflow-color: #fe7a15 !default;
+$tumblr-color: #32506d !default;
+$twitter-color: #55acee !default;
+$vimeo-color: #1ab7ea !default;
+$vine-color: #00bf8f !default;
+$youtube-color: #bb0000 !default;
+$xing-color: #006567 !default;
+
+/* links */
+$link-color: mix(#000, $info-color, 20%) !default;
+$link-color-hover: mix(#000, $link-color, 25%) !default;
+$link-color-visited: mix(#fff, $link-color, 15%) !default;
+$masthead-link-color: $primary-color !default;
+$masthead-link-color-hover: mix(#000, $primary-color, 25%) !default;
+$navicon-link-color-hover: mix(#fff, $primary-color, 75%) !default;
+
+/* notices */
+$notice-background-mix: 80% !default;
+$code-notice-background-mix: 90% !default;
+
+/* syntax highlighting (base16) */
+$base00: #263238 !default;
+$base01: #2e3c43 !default;
+$base02: #314549 !default;
+$base03: #546e7a !default;
+$base04: #b2ccd6 !default;
+$base05: #eeffff !default;
+$base06: #eeffff !default;
+$base07: #ffffff !default;
+$base08: #f07178 !default;
+$base09: #f78c6c !default;
+$base0a: #ffcb6b !default;
+$base0b: #c3e88d !default;
+$base0c: #89ddff !default;
+$base0d: #82aaff !default;
+$base0e: #c792ea !default;
+$base0f: #ff5370 !default;
+
+/*
+ Breakpoints
+ ========================================================================== */
+
+$small: 600px !default;
+$medium: 768px !default;
+$medium-wide: 900px !default;
+$large: 1024px !default;
+$x-large: 1280px !default;
+$max-width: $x-large !default;
+
+/*
+ Grid
+ ========================================================================== */
+
+$right-sidebar-width-narrow: 200px !default;
+$right-sidebar-width: 300px !default;
+$right-sidebar-width-wide: 400px !default;
+
+/*
+ Other
+ ========================================================================== */
+
+$border-radius: 4px !default;
+$box-shadow: 0 1px 1px rgba(0, 0, 0, 0.125) !default;
+$nav-height: 2em !default;
+$nav-toggle-height: 2rem !default;
+$navicon-width: 1.5rem !default;
+$navicon-height: 0.25rem !default;
+$global-transition: all 0.2s ease-in-out !default;
+$intro-transition: intro 0.3s both !default;
diff --git a/docs/_sass/minimal-mistakes/skins/_air.scss b/docs/_sass/minimal-mistakes/skins/_air.scss
new file mode 100644
index 00000000..0e5360c3
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_air.scss
@@ -0,0 +1,23 @@
+/* ==========================================================================
+ Air skin
+ ========================================================================== */
+
+/* Colors */
+$background-color: #eeeeee !default;
+$text-color: #222831 !default;
+$muted-text-color: #393e46 !default;
+$primary-color: #0092ca !default;
+$border-color: mix(#fff, #393e46, 75%) !default;
+$footer-background-color: $primary-color !default;
+$link-color: #393e46 !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: $text-color !default;
+$navicon-link-color-hover: mix(#fff, $text-color, 80%) !default;
+
+.page__footer {
+ color: #fff !important; // override
+}
+
+.page__footer-follow .social-icons .svg-inline--fa {
+ color: inherit;
+}
diff --git a/docs/_sass/minimal-mistakes/skins/_aqua.scss b/docs/_sass/minimal-mistakes/skins/_aqua.scss
new file mode 100644
index 00000000..7c3944e0
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_aqua.scss
@@ -0,0 +1,34 @@
+/* ==========================================================================
+ Aqua skin
+ ========================================================================== */
+
+/* Colors */
+$gray : #1976d2 !default;
+$dark-gray : mix(#000, $gray, 40%) !default;
+$darker-gray : mix(#000, $gray, 60%) !default;
+$light-gray : mix(#fff, $gray, 50%) !default;
+$lighter-gray : mix(#fff, $gray, 90%) !default;
+
+$body-color : #fff !default;
+$background-color : #f0fff0 !default;
+$code-background-color : $lighter-gray !default;
+$code-background-color-dark : $light-gray !default;
+$text-color : $dark-gray !default;
+$border-color : $lighter-gray !default;
+
+$primary-color : $gray !default;
+$success-color : #27ae60 !default;
+$warning-color : #e67e22 !default;
+$danger-color : #c0392b !default;
+$info-color : #03a9f4 !default;
+
+/* links */
+$link-color : $info-color !default;
+$link-color-hover : mix(#000, $link-color, 25%) !default;
+$link-color-visited : mix(#fff, $link-color, 25%) !default;
+$masthead-link-color : $primary-color !default;
+$masthead-link-color-hover : mix(#000, $primary-color, 25%) !default;
+
+/* notices */
+$notice-background-mix: 90% !default;
+$code-notice-background-mix: 95% !default;
diff --git a/docs/_sass/minimal-mistakes/skins/_contrast.scss b/docs/_sass/minimal-mistakes/skins/_contrast.scss
new file mode 100644
index 00000000..38283b8f
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_contrast.scss
@@ -0,0 +1,52 @@
+/* ==========================================================================
+ Contrast skin
+ ========================================================================== */
+
+/* Colors */
+$text-color: #000 !default;
+$muted-text-color: $text-color !default;
+$primary-color: #ff0000 !default;
+$border-color: mix(#fff, $text-color, 75%) !default;
+$footer-background-color: #000 !default;
+$link-color: #0000ff !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: $text-color !default;
+$navicon-link-color-hover: mix(#fff, $text-color, 80%) !default;
+
+/* contrast syntax highlighting (base16) */
+$base00: #000000 !default;
+$base01: #242422 !default;
+$base02: #484844 !default;
+$base03: #6c6c66 !default;
+$base04: #918f88 !default;
+$base05: #b5b3aa !default;
+$base06: #d9d7cc !default;
+$base07: #fdfbee !default;
+$base08: #ff6c60 !default;
+$base09: #e9c062 !default;
+$base0a: #ffffb6 !default;
+$base0b: #a8ff60 !default;
+$base0c: #c6c5fe !default;
+$base0d: #96cbfe !default;
+$base0e: #ff73fd !default;
+$base0f: #b18a3d !default;
+
+.page__content {
+ .notice,
+ .notice--primary,
+ .notice--info,
+ .notice--warning,
+ .notice--success,
+ .notice--danger {
+ color: $text-color;
+ }
+}
+
+.page__footer {
+ color: #fff !important; // override
+}
+
+.page__footer-follow .social-icons i,
+.page__footer-follow .social-icons .svg-inline--fa {
+ color: inherit;
+}
diff --git a/docs/_sass/minimal-mistakes/skins/_dark.scss b/docs/_sass/minimal-mistakes/skins/_dark.scss
new file mode 100644
index 00000000..38053493
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_dark.scss
@@ -0,0 +1,30 @@
+/* ==========================================================================
+ Dark skin
+ ========================================================================== */
+
+/* Colors */
+$background-color: #252a34 !default;
+$text-color: #eaeaea !default;
+$primary-color: #00adb5 !default;
+$border-color: mix(#fff, $background-color, 20%) !default;
+$code-background-color: mix(#000, $background-color, 15%) !default;
+$code-background-color-dark: mix(#000, $background-color, 20%) !default;
+$form-background-color: mix(#000, $background-color, 15%) !default;
+$footer-background-color: mix(#000, $background-color, 30%) !default;
+$link-color: mix($primary-color, $text-color, 40%) !default;
+$link-color-hover: mix(#fff, $link-color, 25%) !default;
+$link-color-visited: mix(#000, $link-color, 25%) !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
+$navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
+
+.author__urls.social-icons i,
+.author__urls.social-icons .svg-inline--fa,
+.page__footer-follow .social-icons i,
+.page__footer-follow .social-icons .svg-inline--fa {
+ color: inherit;
+}
+
+.ais-search-box .ais-search-box--input {
+ background-color: $form-background-color;
+}
diff --git a/docs/_sass/minimal-mistakes/skins/_default.scss b/docs/_sass/minimal-mistakes/skins/_default.scss
new file mode 100644
index 00000000..7489b584
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_default.scss
@@ -0,0 +1,5 @@
+/* ==========================================================================
+ Default skin
+ ========================================================================== */
+
+// Intentionally left blank
diff --git a/docs/_sass/minimal-mistakes/skins/_dirt.scss b/docs/_sass/minimal-mistakes/skins/_dirt.scss
new file mode 100644
index 00000000..5090f559
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_dirt.scss
@@ -0,0 +1,33 @@
+/* ==========================================================================
+ Dirt skin
+ ========================================================================== */
+
+/* Colors */
+$background-color: #f3f3f3 !default;
+$text-color: #343434 !default;
+$muted-text-color: #8e8b82 !default;
+$primary-color: #343434 !default;
+$border-color: #e9dcbe !default;
+$footer-background-color: #e9dcbe !default;
+$link-color: #343434 !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: $text-color !default;
+$navicon-link-color-hover: mix(#fff, $text-color, 80%) !default;
+
+/* dirt syntax highlighting (base16) */
+$base00: #231e18 !default;
+$base01: #302b25 !default;
+$base02: #48413a !default;
+$base03: #9d8b70 !default;
+$base04: #b4a490 !default;
+$base05: #cabcb1 !default;
+$base06: #d7c8bc !default;
+$base07: #e4d4c8 !default;
+$base08: #d35c5c !default;
+$base09: #ca7f32 !default;
+$base0a: #e0ac16 !default;
+$base0b: #b7ba53 !default;
+$base0c: #6eb958 !default;
+$base0d: #88a4d3 !default;
+$base0e: #bb90e2 !default;
+$base0f: #b49368 !default;
diff --git a/docs/_sass/minimal-mistakes/skins/_mint.scss b/docs/_sass/minimal-mistakes/skins/_mint.scss
new file mode 100644
index 00000000..28557a3a
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_mint.scss
@@ -0,0 +1,24 @@
+/* ==========================================================================
+ Mint skin
+ ========================================================================== */
+
+/* Colors */
+$background-color: #f3f6f6 !default;
+$text-color: #40514e !default;
+$muted-text-color: #40514e !default;
+$primary-color: #11999e !default;
+$border-color: mix(#fff, #40514e, 75%) !default;
+$footer-background-color: #30e3ca !default;
+$link-color: #11999e !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: $text-color !default;
+$navicon-link-color-hover: mix(#fff, $text-color, 80%) !default;
+
+.page__footer {
+ color: #fff !important; // override
+}
+
+.page__footer-follow .social-icons i,
+.page__footer-follow .social-icons .svg-inline--fa {
+ color: inherit;
+}
diff --git a/docs/_sass/minimal-mistakes/skins/_neon.scss b/docs/_sass/minimal-mistakes/skins/_neon.scss
new file mode 100644
index 00000000..a4f2ef5d
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_neon.scss
@@ -0,0 +1,63 @@
+/* ==========================================================================
+ Neon skin
+ ========================================================================== */
+
+/* Colors */
+$background-color: #141010 !default;
+$text-color: #fff6fb !default;
+$primary-color: #f21368 !default;
+$border-color: mix(#fff, $background-color, 20%) !default;
+$code-background-color: mix(#000, $background-color, 15%) !default;
+$code-background-color-dark: mix(#000, $background-color, 20%) !default;
+$form-background-color: mix(#000, $background-color, 15%) !default;
+$footer-background-color: mix($primary-color, #000, 10%) !default;
+$link-color: $primary-color !default;
+$link-color-hover: mix(#fff, $link-color, 25%) !default;
+$link-color-visited: mix(#000, $link-color, 25%) !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
+$navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
+
+/* notices */
+$notice-background-mix: 90% !default;
+$code-notice-background-mix: 95% !default;
+
+/* neon syntax highlighting (base16) */
+$base00: #ffffff !default;
+$base01: #e0e0e0 !default;
+$base02: #d0d0d0 !default;
+$base03: #b0b0b0 !default;
+$base04: #000000 !default;
+$base05: #101010 !default;
+$base06: #151515 !default;
+$base07: #202020 !default;
+$base08: #ff0086 !default;
+$base09: #fd8900 !default;
+$base0a: #aba800 !default;
+$base0b: #00c918 !default;
+$base0c: #1faaaa !default;
+$base0d: #3777e6 !default;
+$base0e: #ad00a1 !default;
+$base0f: #cc6633 !default;
+
+.author__urls.social-icons i,
+.author__urls.social-icons .svg-inline--fa,
+.page__footer-follow .social-icons i,
+.page__footer-follow .social-icons .svg-inline--fa {
+ color: inherit;
+}
+
+/* next/previous buttons */
+.pagination--pager {
+ color: $text-color;
+ background-color: $primary-color;
+ border-color: transparent;
+
+ &:visited {
+ color: $text-color;
+ }
+}
+
+.ais-search-box .ais-search-box--input {
+ background-color: $form-background-color;
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/skins/_plum.scss b/docs/_sass/minimal-mistakes/skins/_plum.scss
new file mode 100644
index 00000000..defa69cd
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_plum.scss
@@ -0,0 +1,70 @@
+/* ==========================================================================
+ Plum skin
+ ========================================================================== */
+
+/* Colors */
+$background-color: #521477 !default;
+$text-color: #fffd86 !default;
+$primary-color: #c327ab !default;
+$border-color: mix(#fff, $background-color, 20%) !default;
+$code-background-color: mix(#000, $background-color, 15%) !default;
+$code-background-color-dark: mix(#000, $background-color, 20%) !default;
+$form-background-color: mix(#000, $background-color, 15%) !default;
+$footer-background-color: mix(#000, $background-color, 25%) !default;
+$link-color: $primary-color !default;
+$link-color-hover: mix(#fff, $link-color, 25%) !default;
+$link-color-visited: mix(#000, $link-color, 25%) !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
+$navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
+
+/* notices */
+$notice-background-mix: 70% !default;
+$code-notice-background-mix: 80% !default;
+
+/* plum syntax highlighting (base16) */
+$base00: #ffffff !default;
+$base01: #e0e0e0 !default;
+$base02: #d0d0d0 !default;
+$base03: #b0b0b0 !default;
+$base04: #000000 !default;
+$base05: #101010 !default;
+$base06: #151515 !default;
+$base07: #202020 !default;
+$base08: #ff0086 !default;
+$base09: #fd8900 !default;
+$base0a: #aba800 !default;
+$base0b: #00c918 !default;
+$base0c: #1faaaa !default;
+$base0d: #3777e6 !default;
+$base0e: #ad00a1 !default;
+$base0f: #cc6633 !default;
+
+.author__urls.social-icons i,
+.author__urls.social-icons .svg-inline--fa,
+.page__footer-follow .social-icons i,
+.page__footer-follow .social-icons .svg-inline--fa {
+ color: inherit;
+}
+
+.page__content {
+ a,
+ a:visited {
+ color: inherit;
+ }
+}
+
+/* next/previous buttons */
+.pagination--pager {
+ color: $text-color;
+ background-color: $primary-color;
+ border-color: transparent;
+
+ &:visited {
+ color: $text-color;
+ }
+}
+
+.ais-search-box .ais-search-box--input {
+ background-color: $form-background-color;
+}
\ No newline at end of file
diff --git a/docs/_sass/minimal-mistakes/skins/_sunrise.scss b/docs/_sass/minimal-mistakes/skins/_sunrise.scss
new file mode 100644
index 00000000..bc259f6d
--- /dev/null
+++ b/docs/_sass/minimal-mistakes/skins/_sunrise.scss
@@ -0,0 +1,49 @@
+/* ==========================================================================
+ Sunrise skin
+ ========================================================================== */
+
+/* Colors */
+$dark-gray: #0e2431 !default;
+$background-color: #e8d5b7 !default;
+$text-color: #000 !default;
+$muted-text-color: $dark-gray !default;
+$primary-color: #fc3a52 !default;
+$border-color: mix(#000, $background-color, 20%) !default;
+$code-background-color: mix(#fff, $background-color, 20%) !default;
+$code-background-color-dark: mix(#000, $background-color, 10%) !default;
+$form-background-color: mix(#fff, $background-color, 15%) !default;
+$footer-background-color: #f9b248 !default;
+$link-color: mix(#000, $primary-color, 10%) !default;
+$link-color-hover: mix(#fff, $link-color, 25%) !default;
+$link-color-visited: mix(#000, $link-color, 25%) !default;
+$masthead-link-color: $text-color !default;
+$masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
+$navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
+
+/* notices */
+$notice-background-mix: 75% !default;
+
+/* sunrise syntax highlighting (base16) */
+$base00: #1d1f21 !default;
+$base01: #282a2e !default;
+$base02: #373b41 !default;
+$base03: #969896 !default;
+$base04: #b4b7b4 !default;
+$base05: #c5c8c6 !default;
+$base06: #e0e0e0 !default;
+$base07: #ffffff !default;
+$base08: #cc6666 !default;
+$base09: #de935f !default;
+$base0a: #f0c674 !default;
+$base0b: #b5bd68 !default;
+$base0c: #8abeb7 !default;
+$base0d: #81a2be !default;
+$base0e: #b294bb !default;
+$base0f: #a3685a !default;
+
+.author__urls.social-icons i,
+.author__urls.social-icons .svg-inline--fa,
+.page__footer-follow .social-icons i,
+.page__footer-follow .social-icons .svg-inline--fa {
+ color: inherit;
+}
diff --git a/docs/about.markdown b/docs/about.markdown
new file mode 100644
index 00000000..8b4e0b28
--- /dev/null
+++ b/docs/about.markdown
@@ -0,0 +1,18 @@
+---
+layout: page
+title: About
+permalink: /about/
+---
+
+This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at [jekyllrb.com](https://jekyllrb.com/)
+
+You can find the source code for Minima at GitHub:
+[jekyll][jekyll-organization] /
+[minima](https://github.com/jekyll/minima)
+
+You can find the source code for Jekyll at GitHub:
+[jekyll][jekyll-organization] /
+[jekyll](https://github.com/jekyll/jekyll)
+
+
+[jekyll-organization]: https://github.com/jekyll
diff --git a/docs/assets/css/main.scss b/docs/assets/css/main.scss
new file mode 100644
index 00000000..23346e77
--- /dev/null
+++ b/docs/assets/css/main.scss
@@ -0,0 +1,8 @@
+---
+# Only the main Sass file needs front matter (the dashes are enough)
+---
+
+@charset "utf-8";
+
+@import "minimal-mistakes/skins/{{ site.minimal_mistakes_skin | default: 'default' }}"; // skin
+@import "minimal-mistakes"; // main partials
\ No newline at end of file
diff --git a/docs/images/fiat-payment-methods/PayPal-choose-desktop.png b/docs/assets/images/fiat-payment-methods/PayPal-choose-desktop.png
similarity index 100%
rename from docs/images/fiat-payment-methods/PayPal-choose-desktop.png
rename to docs/assets/images/fiat-payment-methods/PayPal-choose-desktop.png
diff --git a/docs/images/fiat-payment-methods/PayPal-choose-phone.png b/docs/assets/images/fiat-payment-methods/PayPal-choose-phone.png
similarity index 100%
rename from docs/images/fiat-payment-methods/PayPal-choose-phone.png
rename to docs/assets/images/fiat-payment-methods/PayPal-choose-phone.png
diff --git a/docs/images/fiat-payment-methods/PayPal-main-desktop.png b/docs/assets/images/fiat-payment-methods/PayPal-main-desktop.png
similarity index 100%
rename from docs/images/fiat-payment-methods/PayPal-main-desktop.png
rename to docs/assets/images/fiat-payment-methods/PayPal-main-desktop.png
diff --git a/docs/images/fiat-payment-methods/PayPal-main-phone.png b/docs/assets/images/fiat-payment-methods/PayPal-main-phone.png
similarity index 100%
rename from docs/images/fiat-payment-methods/PayPal-main-phone.png
rename to docs/assets/images/fiat-payment-methods/PayPal-main-phone.png
diff --git a/docs/images/how-to-use/book-desktop.png b/docs/assets/images/how-to-use/book-desktop.png
similarity index 100%
rename from docs/images/how-to-use/book-desktop.png
rename to docs/assets/images/how-to-use/book-desktop.png
diff --git a/docs/images/how-to-use/book-no-orders.png b/docs/assets/images/how-to-use/book-no-orders.png
similarity index 100%
rename from docs/images/how-to-use/book-no-orders.png
rename to docs/assets/images/how-to-use/book-no-orders.png
diff --git a/docs/images/how-to-use/book-phone.png b/docs/assets/images/how-to-use/book-phone.png
similarity index 100%
rename from docs/images/how-to-use/book-phone.png
rename to docs/assets/images/how-to-use/book-phone.png
diff --git a/docs/images/how-to-use/book-show-columns.png b/docs/assets/images/how-to-use/book-show-columns.png
similarity index 100%
rename from docs/images/how-to-use/book-show-columns.png
rename to docs/assets/images/how-to-use/book-show-columns.png
diff --git a/docs/images/how-to-use/book-tap-1.png b/docs/assets/images/how-to-use/book-tap-1.png
similarity index 100%
rename from docs/images/how-to-use/book-tap-1.png
rename to docs/assets/images/how-to-use/book-tap-1.png
diff --git a/docs/images/how-to-use/book-tap-2.png b/docs/assets/images/how-to-use/book-tap-2.png
similarity index 100%
rename from docs/images/how-to-use/book-tap-2.png
rename to docs/assets/images/how-to-use/book-tap-2.png
diff --git a/docs/images/how-to-use/contract-box-1.png b/docs/assets/images/how-to-use/contract-box-1.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-1.png
rename to docs/assets/images/how-to-use/contract-box-1.png
diff --git a/docs/images/how-to-use/contract-box-10.png b/docs/assets/images/how-to-use/contract-box-10.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-10.png
rename to docs/assets/images/how-to-use/contract-box-10.png
diff --git a/docs/images/how-to-use/contract-box-11.png b/docs/assets/images/how-to-use/contract-box-11.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-11.png
rename to docs/assets/images/how-to-use/contract-box-11.png
diff --git a/docs/images/how-to-use/contract-box-12.png b/docs/assets/images/how-to-use/contract-box-12.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-12.png
rename to docs/assets/images/how-to-use/contract-box-12.png
diff --git a/docs/images/how-to-use/contract-box-13.png b/docs/assets/images/how-to-use/contract-box-13.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-13.png
rename to docs/assets/images/how-to-use/contract-box-13.png
diff --git a/docs/images/how-to-use/contract-box-14.png b/docs/assets/images/how-to-use/contract-box-14.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-14.png
rename to docs/assets/images/how-to-use/contract-box-14.png
diff --git a/docs/images/how-to-use/contract-box-15.png b/docs/assets/images/how-to-use/contract-box-15.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-15.png
rename to docs/assets/images/how-to-use/contract-box-15.png
diff --git a/docs/images/how-to-use/contract-box-16.png b/docs/assets/images/how-to-use/contract-box-16.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-16.png
rename to docs/assets/images/how-to-use/contract-box-16.png
diff --git a/docs/images/how-to-use/contract-box-17.png b/docs/assets/images/how-to-use/contract-box-17.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-17.png
rename to docs/assets/images/how-to-use/contract-box-17.png
diff --git a/docs/images/how-to-use/contract-box-18.png b/docs/assets/images/how-to-use/contract-box-18.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-18.png
rename to docs/assets/images/how-to-use/contract-box-18.png
diff --git a/docs/images/how-to-use/contract-box-19.png b/docs/assets/images/how-to-use/contract-box-19.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-19.png
rename to docs/assets/images/how-to-use/contract-box-19.png
diff --git a/docs/images/how-to-use/contract-box-2.png b/docs/assets/images/how-to-use/contract-box-2.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-2.png
rename to docs/assets/images/how-to-use/contract-box-2.png
diff --git a/docs/images/how-to-use/contract-box-3.png b/docs/assets/images/how-to-use/contract-box-3.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-3.png
rename to docs/assets/images/how-to-use/contract-box-3.png
diff --git a/docs/images/how-to-use/contract-box-4.png b/docs/assets/images/how-to-use/contract-box-4.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-4.png
rename to docs/assets/images/how-to-use/contract-box-4.png
diff --git a/docs/images/how-to-use/contract-box-5.png b/docs/assets/images/how-to-use/contract-box-5.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-5.png
rename to docs/assets/images/how-to-use/contract-box-5.png
diff --git a/docs/images/how-to-use/contract-box-6.png b/docs/assets/images/how-to-use/contract-box-6.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-6.png
rename to docs/assets/images/how-to-use/contract-box-6.png
diff --git a/docs/images/how-to-use/contract-box-7.png b/docs/assets/images/how-to-use/contract-box-7.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-7.png
rename to docs/assets/images/how-to-use/contract-box-7.png
diff --git a/docs/images/how-to-use/contract-box-8.png b/docs/assets/images/how-to-use/contract-box-8.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-8.png
rename to docs/assets/images/how-to-use/contract-box-8.png
diff --git a/docs/images/how-to-use/contract-box-9.png b/docs/assets/images/how-to-use/contract-box-9.png
similarity index 100%
rename from docs/images/how-to-use/contract-box-9.png
rename to docs/assets/images/how-to-use/contract-box-9.png
diff --git a/docs/images/how-to-use/homepage-1.png b/docs/assets/images/how-to-use/homepage-1.png
similarity index 100%
rename from docs/images/how-to-use/homepage-1.png
rename to docs/assets/images/how-to-use/homepage-1.png
diff --git a/docs/images/how-to-use/homepage-2.png b/docs/assets/images/how-to-use/homepage-2.png
similarity index 100%
rename from docs/images/how-to-use/homepage-2.png
rename to docs/assets/images/how-to-use/homepage-2.png
diff --git a/docs/images/how-to-use/homepage-3.png b/docs/assets/images/how-to-use/homepage-3.png
similarity index 100%
rename from docs/images/how-to-use/homepage-3.png
rename to docs/assets/images/how-to-use/homepage-3.png
diff --git a/docs/images/how-to-use/homepage-buttons.png b/docs/assets/images/how-to-use/homepage-buttons.png
similarity index 100%
rename from docs/images/how-to-use/homepage-buttons.png
rename to docs/assets/images/how-to-use/homepage-buttons.png
diff --git a/docs/images/how-to-use/maker-page.png b/docs/assets/images/how-to-use/maker-page.png
similarity index 100%
rename from docs/images/how-to-use/maker-page.png
rename to docs/assets/images/how-to-use/maker-page.png
diff --git a/docs/images/how-to-use/order-page-1.png b/docs/assets/images/how-to-use/order-page-1.png
similarity index 100%
rename from docs/images/how-to-use/order-page-1.png
rename to docs/assets/images/how-to-use/order-page-1.png
diff --git a/docs/assets/images/misc/feature-fast.png b/docs/assets/images/misc/feature-fast.png
new file mode 100644
index 0000000000000000000000000000000000000000..a28ab0d15c27288546f065b9e31bc8a429022d13
GIT binary patch
literal 12547
zcmV+eG5pSnP)00Arr0{{R30%fuK0002MP)t-smYboH
zm!6N4oRylOjF6gebAfSmf@^MkZg78dc7%6(h-hnhk(Qi_j+vR9p>%kKe1MI4e2RyQ
zmwJASgNKuaiIr_{et(0HW@>k7YvA4mry2N5-b75q1xxmP~!pgtK&A!CUk(Qyhy~eP%zqP!@uCu$B
zo2H_tv8u4SrK+=(cV!pEJWsi>{9-uk&2001xkNkl!sKYkR;t`-P3YhzWDC}`=Cd?2pOqiYYKF#wJh^MfziRMU5iQ|<;On?Rf}*vB>f+8!@ktz+rIUYlzAt_f7U
zm$?X&M)U#0QTv03iHCHMhwFN^f3BLoUs!I`M`dS~TFg4tju&!qkE`kX2D9(@obD{A
z`-3}7XJIV#@0#B0Z8fL&Q%(2ji7w(?9hlTDUC)#yuJ}7_$=`0m2JeQL65Wj$qy##M
zH$$eQ>}@(77J6H{);Rz?w3aj6#=p){O@b3!H!y%R7WZ&oOK8eXCvB?fGv;*s!!xhA
zJqYl%l3Yo&7`r6wo!w|N&veCpuBMmG>0Jqp<+Rp2$}P^me?DwNpq~6Y1$Q{%4qe8!HIP~
z96D9gi-N(`tZusf(hTHUG+|Cx?%jQxx4s;@F5au@^G@Wnu`RP%%XE%RHx{y+(*t(w
z+D#Z~6=&!^x#`R-L~MD$^wqzGR^Z1lZ##^NS35C2In&4Ibd=@Lv!QM|Ds*-9z4#C3wDx=SMLhEZK~<+INgu)n=rRyi3r7ffjd3Vb*=GNeCEG+
z_1@NMxQS-^p=2&SMLDd0sbteb1zFx7gFF#Tbax1ri+kPN|nY1
zwQoGm=T}(0>$9=t&tm$j&{=T=nbdT%4fV;UqZgab%UAFAscJflrOrk{d(*FG#o&EK
zJir{7Q~027WQEmxt2$NFP59|%b$lz+#Zz~9M^#T>F=B>H&w@@9o~9&aYdXr5dD#?p
z8a5k;121OQM*?<`d5k{YyQk3ersFd?E%Tw%MAK1@27QMxo3=H7s|vB@b-j(MLxTrV@daZk6`1h|GCU^+m)Ds&bn
zd#ZMU>FBW(nI5+D_S(R7K;P2zw}swD*Z?Dt=4(nnh+beih?BmuyXl1TR?xeqC+Jbr
zXH)z$O>bLr_~}H=0_fHBvZY*!>9~xWo&rzjb8WSMqQzNY`pf@9gF9iv`0o%-{iz?t
zB$N8-LtBP&cRnY~>C3XfbaLgLpljGwHj<-0vbYnTYC4FYwNKisravq}_GzLoFx|lp
z13Wc!YO3jv3XqpomNo^ZtLqMU%f6cauwX@BNWI*27t-qHbgHI5F2bf*bf7OXo%CwE
z)%3@PMIStYbkbufH2vIE(+?7c?B%9^usP*}AF^-{ZC#%lTjyqp>F@9h2=ie@KT;We
z|Ad$T-Ix5CY|}OkR`PAXp=Hb$nqH0PyH$(pSk(Sx#}{KJo8EM0bg(}+ZJ}!V6C~I!
zW~%A_#=Gu9YP<8jn*J0Kc1wX#({b#skTJHqUZcmc)%0fwOIvL-#q{8KnA0)AyM3FI
zKUdR_9~Ra|MokBC?>Q!TMX#ne2QZybD)hYS6HUi}-e6$YJ8wEQr>B_H<=@9Io&4$K
z<3BNP5K-CN>NNl0li8vxW80i>r*oLqw+<&MHr;%_{*3kR{7)OSsR>3o@*
zZ*K$LroecZZtqE-=wyzqOaB~a_vpVTL;uPHd9CAJFrPTL6HE_NJskjgE}Wc`V)|@5~hGD+lTv9K3%N22O>`ZD%vR0)9{{O#fFl*mE
zvFsv5Z2Np59uhm#$9E5aWUFRbSkxIfa)tj%Pnm?2fxOH*Y0_^9cNO1d;FVj542XYO
zx8_Fc
zML0rFtXs--F-dnKhKA>L1{xj<>2=4_ok=G%^m4|woaWuhIsXaO`8F(F=^m`iQ4M@L~2@bxHZ0}LGlx`PaWeOEJXfjZ1O+kq5
zMUU)PYF(Xly0rLR-fxq1zG{UKZ8MPcHd7!cnZl5^A7c9^+S6Z@bl^`q{*GJO-MLB9
z+gfVcwbV-^>P%tX+v|h314j6IspnihHS&kh*ku~I
zAQxO@I(6sWh7N_J_oo}l=aNrIIv{-OB|7O>e<+$lw|U@Xu!3<=k&`yFcxtWL*y$rSN0>N$rB
z`cd;shjU1OM{trP?Jje&qaKRP$y4=5dQ-bzPdNX3k{&jS$LVvVz!Ydw;5>IxRMe4t
zL^5~OmU=+LZMX6`C}UGAO$QI<_6KwVrJJQd=K&qcE1l^ziF5ER>69b?a_w%hYbK~u
z2fLQ@3N1&k^}ciW?pXT3b!jxO>d`m@Dj8v&$~h>uTFO6`{IaR34_;^e)LY++$zPLn
z;7dBh1LLTSfy{cRd%Bzh8Ectw<6gFFsFwuRMrxc#Cqe|I2FGorCcKl+^O
z`PP=K772Ms#O_M#+-8X>zcT6eP#z%VuA~!_iBGAYQ~}O&FBx>JX|F|<&>%?#@guDB
zfVwZ~PPA{ZnsIkZmrXm89w*&)emq!FHt|*vQJJ`+_?bfv3^d+4PxCa`pg(aQL
zw5QG@!t!3R(rxEyx_Ze00xp%;Z9*~dLGRyIM5gtkv+mTUbDv2cOg@tCoV!D!?Aya}
zJMU-@eFV>={UxY@S`m0tRyCHtdcOZoX$J=
zBdnvIk2IFvoqBRG=(O%_pbcR079?NJOd?&%4NE#Pl2;zIR$PTrd)nz-(mccY$Fi>I
zN^I>ryr;wZ9VH#oV_>oz$Jp_}YWE>scIp@HOy4r8U45EbhjYM%mh@-nnNGVP;LLhB
zJhs3MrR&(|O_4R2?_RW%F2{7(;sNft`tzbmbx!pk=f#mGq8lzqsp}Py-};JrS#;9B
zNX90eshxUhzLvU@eqOM}gHnBZZ#qAv1{lyCIHf&!X9zC1$mKk3c!&M^PLmGlVOXcr
z=yP`@-T2O%mS|%y9g}Fi`)j{*uxi)qbvI(aUOHHb_cz7F&u6`gPC5m`1KpFX&yz0A
z;;x-^(vwckq)RZPW5kD@L)=*D@l=IAg`Z3Ml9R5J+DZ3e?WOxOmcz&$&Ld>gEa2!5
zq!%=Kat)Rt-BtE3d0efeztF|Y!rypgbTFJRMS5pF14(q!2P$MNu&AV)m#3kD>r7*)
z-cf2vKj_Y*pjl~D>DB+FpH+5X(^v9SQK~!Xs4wZwlBBn)^cBqvpQJvcPeKd+xVi6eq8C;)xGeiT;*{Q($kKYT%jfh%T4-)
z2U)?=ok;gx)b;thuRkvx6L+-qwPw9qiu5*DX=!e_1B%6zK55b!p<74ht&&IN5N}7)
zS(W=6cqZ#}rR$A*!D()|RU@QN*{9>VK=5Jc1;<(+^#-1Z*Z`0|8*5{S+|Bvq(R-M5
zSIlM9Q&*Ljq!Zuh4SXj(^_PU$gr(6M`{QoU6{B}BSJDx4xeg_r(N9hKhKDD;WHjN5
zWv_h>pE=#0h@{(KJQokLZ)2qVqls$a$=#pBd$%?Iqnog(`_8pzMChh*A`h1CX*`B>mzT?c`{m_uY*-X>d_j)=uS}^$lYII5USWIW0@X8DO~motwXAddo<jyZ9VL7^4uwj?0-*y!?&EbokaD^tJvEL1?O7UCL}g0$?Pn$Z>zOaI
z{887Fe#MbER1~yRy7WRYFNkdm=z!&+-v{dh>MCt5Yq(|bG
z9uI^6fcjM^?1%+%s`Cg=9#2?0Py3BIeT*m{>FoHEKEL$wL9dt>?9hqgk$HkHg-dCN
z@lj7bg}dOkNq?9E$i5=zZ!83QDY#85i}`SIGKo#3tQ8i~}^(P#jnk
zC*|FXirouC(#J4MJD(N`uK~ZXz6gQ5Y^RHB%E4
za$%TprY|ww(HT%OP!y~G|E~%NUv|SyrIzIfz#;D&A+`v#XVS0UPE(dmcUMnr_eI
zxONE3xU*{n-`IBQudh4h;Jg#3{Cl!`8Akod`A>KiwM8HUHB#wqh8w^A`51VusF`u1k=+Hbh{1luQu8ec(mEV6x}aEzB>TboEg)NJrA`xk)Dl-!cax
zoelbVg!59h7W|p~{!Iace1E6r{{_Udl4X)^FP(5XylAL->C)$@pRPz#i!t`~*_hUD~Q;T(&94jf8I9@F{+>B}Yl)eFPPBt3rtV;wB
znHVO|QT`5mS2*`N=V0%$@MAQ0O?YDpunS?!q}vl%;*G8JMb9_aGj)!={OJyq^7?=_
zPUIZ?a9PSdKO33BKUHY14TFJR(M=}5kU$CqA_Ux75Bz`2YQ@Nm-S
z0o?>+K(`sCufstx?rF`D{7AuZ2ab_7TRfUb-@(Nx0C2A399U89Kro#~F(!rXCmxe@
zflw@tN0q(?w|E^I
z=c9B?J+!*@=y(8i6qP%WMLd?$L13uv7#t0hff*@17O+VAe4p)k>5;DNrRRdz&z|1-
zIf^20H(-MFB?;sTqRG-hNNSeEhYCdL)(oT{LW!>$>sR8u!9qIo7QzPI`<-rG+Q_`Y
zN}rl|V3YWe)MV+^{>E4Jc!KqArRN@qb8G2BiPD>UCUnKH+3*8yj2s6MBb}4ar+;pa
zdvFP@x$Hp@iUjEnGzWaHj>pgY4mb}xhSKkU3*iK!=F)Ec54h0+`8K@r1oST!f&K;ajKD^(q+te9Y&p_OrJhneOgM9JpGlO(k?;5_E
zxsyJSo^_>`9ve6hq+f}2SXVm-=RGKtYYR^LzN>kphutphw|=*_ZvBuBsDEg;PyE_k
z1d?=X>A^sH60HetqH~@Ijp4WlC!-f8>C1u8Tk&euB72wR$0#uUv%Ok+2I}|@4jE95
z8h49cGN{fu*w{`p7?gDermT_TX6uX4>PG&T9%d$ic1;c`F#V8
zbdW30t=wi(&XaO2QVx#@M@jd}Bf89d(sA}Yti!(QNf?Bh
zChOCRgsBC`$ko6(|GM_)Ky#M&O8?kGwF77$V3Blt^ToirT&eS{C)jklyZX&x?dy}y
z<-f=VTw*TiCF4AuE9fIrv>rt(9l*a?ywAh0Tzpz!{WaB7GtR%IB0uiUnYfsYe2#0X
zr}DvKNw=5&u7!v8*XY6+j!l=A3^ne#EP44}^SwKVM|)$y%-_7^4|1C{=^MWvlx+AS>o
z`8h04shWJH>W*<)u@i!MZ$gi1VmOMCtk6&ci~AEt<4(
zB~fYft$TyBN#{yx2P)~9+eM7hA)jI=8LWD$1XRTNHW8)gI1fu4`BR_sJg&QAsA;S}
zZqoZ{y;ILwhjiSYPx?wGPX_q!1@gu@NVlHmJObAZ_?VxVZw1WVJ-(g3y!X{v_ix28
zE$OHpRnlAGgEc+-tqt4mEm?8+$$(OHo``HC_3JyEM$D#+wE~Z(F9j%d3M!59RkI1F
zv+`Rkq|eH$Hv)Z!@9aZ6q=O};)90)baCkr9M*nckPU)x)3+cdC`g@*j0;>K_zeq$bzPjVY-%^>)>3IH4eJauxvvW!@
zkbeC0a?J%-?bgeNL{iI3$75cJ%9~v)p1`$td+Bzn2^pgjUbUw~+qPRyv2h^iY)B5F-7972ZtF3*Y>Ht^?_to8bNmcl4@p
zMG`+Ad&?d7NN=!e@4RGtu5#1^*?ErFwRcYE2?=G;Aw7p`(%n~3EwCC`Un=SSbK{jP
zq_;5AS>}-L2u>6q)m+_c**o9`(*}#)$|@b&SWMov9wb&{V(_rvLwE
zHT&{#@9wkvBwOoguYE}jsXD!K?`{IN+maz&hFHe+E#wy1^snHfM|&mv(D(jo>G=%$
zo{g*JW*2%|B`!2t4PX
z%shn5w)M4v_`};I_m5(ZC
za-@^>FOXgZ)KPXx=_hi|q#rZa?4xoZ5AHG&L5FMXnxt#*h(_D4HxAQq7%M4-101pszUr3~=npg!S(60%y
zf3WmgAVc~nE~`y110oM^mRIfRcgE(lTMZnou!=*_OM}0LV<73qyzW$s6?w6Cy{CysR)&57$
zRKk%S8ekqP>qSQ?rqc`lQa+R42yp4(i=>19K>96n{{D~@_VD7LdRXL*Dl#Yc?%{P=
zf`ux&;{`b8m(hw-aKJx53j2m%Dm`CtK8HU74kaIbGMr}-ds2k=dXaVQwxr6O|7iZ-
z(kDF>#V+DJCH;DncQA4#!(
z37j9(7h`z{oR`(V%){>v-T+^l(!t*cpdwBMDEgb!X`&ZWNwT@{eCa(@0!4y}TNHxx
zaj$bw1{1+cSq!4ez<)k?f(StSq=AjNPLfNn8Oj`d??$^Io%6-gE2s{lp0+;zBVe4E
z9%9bdMV@qgE#MC(TS#X>rYUaH#p$4wslA`!6et&^_an&91)@Eqfu`+q?p`{A^E@gE
zf7!5ECm!ikstW0(u5@MPFygN+(hi82kTk)&DEPUs<40^|J
z0eK)<)Sr_6WayP&2-cbCEEdYS%V{B;ZJdLv$#C!s7buq001vLY^v-x!xbkXP;xn9o
zMbd{$pA4|>UsPT-#pSvQomZD>+D|!0VX5yQ;E$1{o1ClOtz`*UUy}4iDM_D2c@pv6
zpLYh3xS&uY(r-iOt>pYlaGnpP-X%T2zeJL5KW0V&uc(>>>g7_Evf_1s^Von<2mCwI
zDU^`&8IW-l{oP^Fr)6`FEtPaXstf%qH`3XiQTeN~Wk
z)5y6JONME@?>ci8B$946wIbP5&}kbT9r#S2BYnybDrf4?-H{S2Zocq#S
z*>oB<$Ae&Hzvj{tEB^wu(9uW3obOcCWXkhD=Blr2y~m`({KZsr7ch*=#&ox)`F>vrI=xI_J`qV72GJAFyVRk}FfpE^wv*)tv``((6@~
zC<+W6HtBkv*F~w<@?G7gQ_}N!QjO$`qeMO!S7wt_=zKXdM8}=$(D{>0iQ^<%9o<;b}$v=>@WO24P-FrP+X(l7J%Myme4Va`v>v!p4X
zZCzZaXX`z4p-^$uhtz55b5>{*@VTUG
z!>p?AZu{c%F}Wk`I5QQTpL&;~v83zbC4IU3`1lxAG3Vn~pA}1bAAV$MgQOS6ZM5=#
zj9mNXIT!budC1SsE-Jkuj{JjjZAdy_1mD??c%}
zR*!No;Wp;1sP6LJcizSpm``_xi1QhRH`XZW9E|O1yTyZ{{gOHNrJriYu&GoaA5^;Q
zr9kgOYkOl|%QppUc(U#(uT^&uxJ`nWy3_7e*rDAQFM`+YxyjKz7~Hp7E(^NFItSe<
zKQHO9KEsoq!>h|yd<=A|;P#TX+Bf^i0JQhs;wi8}?K&$P8%jCduaW-{l1@H@;_PC_
z4gEb8UwxwbMJ5RP%{0o{`3o@C_v@!z>j26<4iBPpeuGD`M;!)y3t2C^f*U;5seNd7
z6OJCzAruIi_r+WLs?Jr-V~){s%Wftf@xKHxzQ*i}jAm!5Ie
zo22`dD8zN1Yn(wTr_~;f?&Mon{`l45!Wa7Mxja5T{@fK^b-@>B$of=u`O1IpN(VYu
z`^lC5;9VtXa87j2!C^f4XGy?iFotSjl>Fn?Sn
zo!`aijMrm46ME$wOXuy|^RiKXoO_90O1eytbi0cQy)ZFH((72%7hO9`C+D!<@%?AL
zc|_ltS8>N00NOiirr3>K^jY=`?9T1Z+#TId_h-DBz;-*t+%JZvz0rA}qS+dgPR1df
z(Tv(x0?xgMc{6HuZl?hsNjJ@wpaL)V-uRA%oORBlUTUf!=c-=7Gw4#Ss^Ss7q8kw?
z?^ZnqdZP^lmQ|%KMC)eyskw-z`n$DF^FrL-gZWh5Iwz!f__S-d-Cz-5v
z2mFJOE`rZ=U}#6fj;62`X^#Qld>^0It&57BlU_Jp&|`Mk)}2kd)oe>wJB;N=U8qud
zH0Qwj+{ruhi^>N96=>7uW{=jCYH#mIpWXX-w+y%D93OHy1Tf0y6ftBGua)~
z^pGnZ&b@^kDkVKw$CGp1#=$Um&(d!8>RN}~megmk7QmXnu+B+$$J=)aX9nnSvTjI?
z?)*z7nwsj&Mp;)~1L+_4oT-92cl!vf5l-&!lz3ItmLB3}NQZL+S8j}BA@4cIC{Nla
zWSPG&S5dQ&b9dEld&a`WB;C4v)9vl;`AzfuUA1S`sf{`Q{a5WA=Aqpc56iylh<<3F
z(*b?qc+!veX{>XwJs|0ftzN%r-+Iqf)lJBGO!{Hhh|Vpspd;x#>IK&EJlneCkZ|Li
zk}lJUhI7ruTZnS3yYI?8ZN95R9YNsD!rx!b(`2nWsJRj0~!=#tN1iQ2R+W|E^MVGa#|YLsnB}9i6{Ml&sA1O(K$~#ZK%OF=5$j53wz}@he9dGr)z_u
zJecjZ)JsxcEu^H=#!33KDrdg&_6?ACEuO9AVcyKk
zaph+CCd?{8S3-;5H{fOtAbxh@&LMp^o7|kZ^~tPLj;fkEdAwm9#^q%|wTnB4bR!uR
z@2?vu=_nysz+)5nq>O15?#+!?y*+n8PWm^cIB3sqIb)=A>!dvybP}se1QYhQ0jHSs
z*@y4Eod(kJK-FP2i_(V1ch@td96TIe!I7K`w`>$`L>k%^{s0fxq~10_)^&$B*6`>B
zKr*r(O*$z?3BCX}>cES-?Rf1v4!3^OIEA@uc&pFGA2}AYElR9uJyQcCLJ^z5S6}ir5BK%2Tj)AhN?+3
zpmP+sUDI7qRSBIJ)H#!SU(&U4lK$+v{!NttW}c+uVGX2n?HK9@Cf%I7YCLXS=>>N#
zNk4ADGA4by0jJp~q+7?dL4$HQ7m|+3*6k3kD(3Wf(#s(0NIHOUK{~8My2g2DUZUT*
z_I_wQj%zxh7zOug@5Pi!PdOdOr0+MNjY^+5u;T!8cCbsX1L>IWC)T(ebi|x?wRf@{
zPkPCco-19pZV{{x9NrOi@V*-@m+SHICE&fB%F@>xaEwX!9@=F}=hm^sF2YQXspu*t
zomo#MU3_7al6ob*TZy{>UTzJuL<=V|H7&0ubGrStKf`PRKq43&`dLNzSpP=qO7_|J<$`j1Ka
zV}|sOD^dCTHIxHkdEQU?FAeYL)kZ8pNV+$tBkUm+vhM!Tx*+{a=5%0g63ibail;Z18t`ch}oA425xgLJFiz
zND~r+NkDtS4RAM!mkGZA=c2Kl{_ULjIA@7N+U>EMX0S2Pk0*80uD$sKH2Ja1E#PjW
zOu1428p6GF&`U|R{fLW?zJl*3>=fM>IQfy5ogc6Lbag(8jz1x)RWpyqkc2f79C0bL=~sPT}>Y6OuOnB#-TGFxdU%Kdb*j2Ixvu
za~@WOoY)TQGG%Pis(F83LjQFGrWGA#Z%)$#wvzHWc&<)@Aw1v4?@fyZ{oo_X;hu*M
z^kNMsy9W(DJi*Ly
zfV|m>rtiv4AIxm%yZ9*>`H5qxgpG
zfhLK!eo_W;*g?)k04rG@7t9j$u<1QU2Zb*
zdTb!&QTjxEhix43J*T2)$T1&@fxH5`YMe@j}*GnAy==G2NyY#*fQ*P;TIEVq3YCNL2gTX5XeoLqGUPbDezRDVRq!
ze5>fWZ;G(fNv^fD-DJlHb#6pLKqV&h+zS!74dzc4U8UlJ7QH8wQcOOx+krk{CqMdL
z5#4j^=0qjO{9@2sKLtPXxHG*vgAZL=z9bv|Z-IWx$mfI(IqurY7_dPn3OXrblUm3?
zmt!e<$jdfbN4gEcJ0yJA4xN!@`ajWMi2go2L^j=wjyaiRei7&>$2;&af+kzcU0R13
z9TK>Rw9%M@PVDG7>p5{xLkD}i=&>>KEjSr>+4S(qt^OTa(7R2*Mtmjo>EuvjUL76W
znJM)gPWHSavmu$L2S=Hv&HT2)tf0egMmODtN78o+wDqvQHhN1WLzC`>N-~xAH{z=-
z@z_(*y}}WlJQ`gsH;Jgv8GU4QlYNFr_zlR3!8wTnEaFuz5M6Pr&~zry+~iI&@9tk2
z&=qnEI2d4f^Y%b61Em+tGK@
zfs+BcO937CrQ!W^Khu16=ItElCKLTQZBO>Ga8Rv5T((-KBRre|de8nUsCOGe6_-cn
z8&pHT1AUG;q40RcLuf-m71^kGX8R=_>mC=-@8l
z?*vsL*Ti5x6Fv0X+xv=#ZQpc-czfumM_G|PwJJ}8IiA*J%=gZZmy_AYO_#JG#-`T~
z>J=LgH~~C`(nk@RU~YxZ+@KTRaL6-F@7MWI`}}wGz)tIR{9ALhj>9$euGQ3&EYrw
z?a1_r4)rSfbaOJnd@p)V)4!+TJ{}oEcd3UyW%VoEYds1QVVP(;|89J-tjOo1<3;vK
Z{sBXT_&W&QbkqO<002ovPDHLkV1gb=r9A)u
literal 0
HcmV?d00001
diff --git a/docs/assets/images/misc/feature-open-source.png b/docs/assets/images/misc/feature-open-source.png
new file mode 100644
index 0000000000000000000000000000000000000000..a0f8b40146f079a78135664992ab353f814d903e
GIT binary patch
literal 10565
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
T*axJ200000NkvXXu0mjfoe5RJ
literal 0
HcmV?d00001
diff --git a/docs/assets/images/misc/feature-private.png b/docs/assets/images/misc/feature-private.png
new file mode 100644
index 0000000000000000000000000000000000000000..630fef62c268f110bb4dcdb74e480151700ddb94
GIT binary patch
literal 16852
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
Vqdb3LB
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
T`6IBo00000NkvXXu0mjf*>JkQ
literal 0
HcmV?d00001
diff --git a/docs/assets/images/misc/learn-robosats-home.jpg b/docs/assets/images/misc/learn-robosats-home.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..76c9d1d84b49a7b4d0cfdde9914a5ce0c8f8c363
GIT binary patch
literal 31487
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