Catalog / hanamimastery.com
63

SEO audit for hanamimastery.com

Newest Hanami screencasts, articles, and video tutorials | Hanami Mastery

blogNext.js

Health 63/100 (fair) · 50 pages crawled · generated 2026-08-26

Download Markdown report (feed to ChatGPT / Claude / Cursor)

Get familiar with Hanami framework and realise that Ruby is not only Rails!

Screenshot of hanamimastery.com
50
pages crawled
50
indexable pages
2
errors
110
warnings
376
notices
0
orphan pages
0
broken links
Category breakdown
CategoryScoreErrorsWarningsNotices
Titles 93 2 5 0
Agent Readiness 74 0 44 50
Performance 78 0 36 65
Canonical 93 0 12 0
Headings 96 0 7 2
Content 99 0 2 26
Duplicate 99 0 2 2
Meta Description 99 0 2 25
Images 100 0 0 49
Links 100 0 0 44
Security 100 0 0 91
Social 100 0 0 10
Structured Data 100 0 0 12
Findings

Errors (1 rules)

error Missing or empty <title>

Rule title.missing · Titles · 2 occurrence(s)

Warnings (8 rules)

warning Control has no accessible name

Rule agent.control_no_name · Agent Readiness · 44 occurrence(s)

warning Thin content (low word count)

Rule content.thin · Content · 2 occurrence(s)

warning Near-duplicate page content

Rule duplicate.near · Duplicate · 2 occurrence(s)

warning Hero/LCP image is lazy-loaded (loading=lazy delays LCP)

Rule images.no_lazy_lcp_candidate · Performance · 36 occurrence(s)

  • https://hanamimastery.com/articles/2022-summary — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/dry-rb-dependency-graph — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/giving-appreciation — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/hanami-architecture-explained — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/hanamimastery-origins — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/open-source-heroes — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/secret-of-stunning-oss-contributions — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/sequel-over-activerecord — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/unofficial-hanami-upgrade-guides — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/unofficial-hanami-upgrade-guides?view=discuss — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/articles/why-all-apis-are-inconsistent — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/authors — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/42-front-matter-parser — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/43-connect-with-google-drive — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/44-bridgetown — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/45-github-integration — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/46-contact-form — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/47-send-emails-with-hanami-mailer — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/48-phlex-in-hanami — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/50-hanami-core-team-interview — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/51-integrate-font-awesome-in-hanami — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/52-render-flash-the-correct-way — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/53-advanced-forms-in-hanami — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/54-complete-hanami-stack — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.
  • https://hanamimastery.com/episodes/54-complete-hanami-stack?view=discuss — the likely hero/LCP image (swilgosz-avatar.jpg) has loading="lazy" — Google explicitly warns against lazy-loading the LCP image, because it delays the fetch until layout completes. Remove loading="lazy" from the first significant image and add fetchpriority="high" instead.

warning Missing meta description

Rule meta_desc.missing · Meta Description · 2 occurrence(s)

warning Title likely truncated in SERP (too wide)

Rule title.too_long · Titles · 5 occurrence(s)

Notices (19 rules)

notice Heading levels skip a level

Rule agent.heading_skip · Agent Readiness · 49 occurrence(s)

notice No llms.txt for AI agents

Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)

notice Main text is hard to read (low Flesch Reading Ease)

Rule content.readability_poor · Content · 6 occurrence(s)

  • https://hanamimastery.com/about — this page reads as difficult (Flesch Reading Ease 47, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://hanamimastery.com/articles/sequel-over-activerecord — this page reads as difficult (Flesch Reading Ease 48, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://hanamimastery.com/authors/fiachetti — this page reads as difficult (Flesch Reading Ease 42, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://hanamimastery.com/collaboration — this page reads as difficult (Flesch Reading Ease 47, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://hanamimastery.com/episodes — this page reads as difficult (Flesch Reading Ease 50, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
  • https://hanamimastery.com/t/hanami — this page reads as difficult (Flesch Reading Ease 49, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.

notice Duplicate meta description across pages

Rule duplicate.meta_desc · Duplicate · 2 occurrence(s)

notice Multiple <h1> elements

Rule h1.multiple · Headings · 2 occurrence(s)

notice Likely hero image lacks fetchpriority=high

Rule images.hero_no_fetchpriority · Performance · 14 occurrence(s)

  • https://hanamimastery.com/ — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/about — the likely hero/LCP image (swilgosz-small.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/authors/fiachetti — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/authors/swilgosz — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/c/stray — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/collaboration — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/episodes — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/episodes/33-semantic-versioning — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/episodes/34-versioning-with-pessimize — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/episodes/49-registry-pattern-in-hanami — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/privacy-policy — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/sponsors — the likely hero/LCP image (swilgosz-small.jpg) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/t/hanami — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
  • https://hanamimastery.com/thank-you — the likely hero/LCP image (https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=swilgosz&button_colour=FF5F5F&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.

notice Images without width/height (layout shift / CLS)

Rule images.missing_dimensions · Images · 49 occurrence(s)

notice Internal link has no anchor text / accessible name

Rule links.no_anchor_text · Links · 44 occurrence(s)

notice Meta description too long

Rule meta_desc.too_long · Meta Description · 22 occurrence(s)

notice Meta description too short

Rule meta_desc.too_short · Meta Description · 3 occurrence(s)

notice Missing Open Graph tags

Rule og.missing · Social · 5 occurrence(s)

notice Large DOM (over 1500 elements) slows rendering & interaction

Rule perf.dom_size_large · Performance · 1 occurrence(s)

  • https://hanamimastery.com/authors/swilgosz — the page has 1651 DOM elements (recommended maximum is around 1500) — a large DOM increases style-recalculation, layout and paint cost, hurting LCP and INP. Flatten deep nesting, paginate long lists/tables, and lazy-render off-screen elements.

notice Legacy image format (jpg/png/gif) with no next-gen fallback

Rule perf.images_legacy_format · Performance · 50 occurrence(s)

notice Deep page has no BreadcrumbList structured data

Rule schema.breadcrumb_missing · Structured Data · 2 occurrence(s)

notice Missing recommended security headers

Rule security.missing_headers · Security · 50 occurrence(s)

notice target=_blank link without rel=noopener (tab-napping)

Rule security.unsafe_cross_origin_links · Security · 41 occurrence(s)

Pages (showing 50 of 50)
URLStatusIndexableWordsIn-links
https://hanamimastery.com/
Newest Hanami screencasts, articles, and video tutorials | Hanami Mastery
200 yes 416 50
https://hanamimastery.com/privacy-policy
Privacy Policy for Hanami Mastery! | Hanami Mastery
200 yes 3111 50
https://hanamimastery.com/sponsors
Sponsors | Hanami Mastery - informations for supporters. | Hanami Mastery
200 yes 987 49
https://hanamimastery.com/t/hanami
Articles and screencasts about hanami | Hanami Mastery
200 yes 1661 44
https://hanamimastery.com/authors/swilgosz 200 yes 2562 36
https://hanamimastery.com/episodes/54-complete-hanami-stack
Last Puzzle in place! Fullstack Hanami 2.2! | Hanami Mastery
200 yes 4075 27
https://hanamimastery.com/episodes/53-advanced-forms-in-hanami
Advanced forms in Hanami 2 | Hanami Mastery
200 yes 3968 26
https://hanamimastery.com/episodes/52-render-flash-the-correct-way
Render flash messages in Hanami, but like a PRO | Hanami Mastery
200 yes 2528 23
https://hanamimastery.com/collaboration
Collaboration - how we can help each other? | Hanami Mastery
200 yes 641 3
https://hanamimastery.com/episodes/51-integrate-font-awesome-in-hanami
Font Awesome icons in Hanami apps! | Hanami Mastery
200 yes 1438 17
https://hanamimastery.com/about
About | Hanami Mastery - the concept and mission. | Hanami Mastery
200 yes 540 5
https://hanamimastery.com/episodes/48-phlex-in-hanami
Phlex with Hanami - make your views written in Ruby. Completely. | Hanami Mastery
200 yes 2336 10
https://hanamimastery.com/episodes/50-hanami-core-team-interview
Special: Hanami Core Team Interview | Hanami Mastery
200 yes 8761 10
https://hanamimastery.com/articles/open-source-heroes
Open Source Heroes - A Poem of Appreciation. | Hanami Mastery
200 yes 644 9
https://hanamimastery.com/articles/2022-summary
Hanami Mastery 2022 - Year Summary and next plans. | Hanami Mastery
200 yes 2525 8
https://hanamimastery.com/articles/unofficial-hanami-upgrade-guides
WIP: Unofficial guide for upgrading Hanami 1.x -> Hanami 2.x | Hanami Mastery
200 yes 2810 8
https://hanamimastery.com/episodes/30-mapping-is-everything
ROM - Mapping is everything | Hanami Mastery
200 yes 1099 11
https://hanamimastery.com/episodes/32-rom-pagination
Pagination in Hanami apps with ROM | Hanami Mastery
200 yes 1347 11
https://hanamimastery.com/c/stray
Casual articles about web development in Ruby | Hanami Mastery
200 yes 444 2
https://hanamimastery.com/episodes/40-hanamismith
Spin up your Hanami apps easily with Hanamismith | Hanami Mastery
200 yes 1861 11
https://hanamimastery.com/episodes/46-contact-form
Contact Forms with Hanami View | Hanami Mastery
200 yes 2714 8
https://hanamimastery.com/articles/secret-of-stunning-oss-contributions
The secret of stunning OSS contributions! | Hanami Mastery
200 yes 2165 9
https://hanamimastery.com/episodes/29-leverage-rom-repositories
Leverage ROM Repositories | Hanami Mastery
200 yes 666 8
https://hanamimastery.com/articles/why-all-apis-are-inconsistent
Why ALL APIs are inconsistent? | Hanami Mastery
200 yes 1905 8
https://hanamimastery.com/episodes
Newest Hanami screencasts, articles, and video tutorials | Hanami Mastery - learn Hanami as a pro
200 yes 2250 1
https://hanamimastery.com/articles/dry-rb-dependency-graph
I've made a dependency graph for all DRY gems of Ruby gems family! | Hanami Mastery
200 yes 1201 4
https://hanamimastery.com/articles/giving-appreciation
Why I'm giving so much appreciation everywhere? | Hanami Mastery
200 yes 2133 6
https://hanamimastery.com/episodes/35-halt-or-handle
Halt or Handle? Dealing with exceptions in Hanami apps! | Hanami Mastery
200 yes 1796 5
https://hanamimastery.com/episodes/38-hanami-mastery-app
Intro to Apps architecture - Level 1: Context | Hanami Mastery
200 yes 1146 6
https://hanamimastery.com/episodes/37-dry-cli
Advanced CLI tools with Ruby and dry-cli! | Hanami Mastery
200 yes 2440 6
https://hanamimastery.com/episodes/36-scale-your-app-with-slices
Scale your app with slices! | Hanami Mastery
200 yes 2406 5
https://hanamimastery.com/articles/sequel-over-activerecord
ROM and Sequel over ActiveRecord? | Hanami Mastery
200 yes 1861 4
https://hanamimastery.com/articles/hanami-architecture-explained
Hanami architecture explained | Hanami Mastery
200 yes 1085 4
https://hanamimastery.com/episodes/43-connect-with-google-drive
Connect your ruby app with google drive. | Hanami Mastery
200 yes 655 5
https://hanamimastery.com/episodes/45-github-integration
Github integration with Hanami | Hanami Mastery
200 yes 1132 5
https://hanamimastery.com/articles/hanamimastery-origins
My attempt to change the world of Open-Source financing. | Hanami Mastery
200 yes 1935 5
https://hanamimastery.com/episodes/41-deploying-to-render
Deploying Hanami Apps to Render | Hanami Mastery
200 yes 1526 4
https://hanamimastery.com/episodes/47-send-emails-with-hanami-mailer
Send emails with hanami-mailer | Hanami Mastery
200 yes 1969 4
https://hanamimastery.com/episodes/54-complete-hanami-stack?view=discuss
Last Puzzle in place! Fullstack Hanami 2.2! | Hanami Mastery
200 yes 4075 2
https://hanamimastery.com/episodes/49-registry-pattern-in-hanami
Registry Pattern in Hanami apps | Hanami Mastery
200 yes 2292 4
https://hanamimastery.com/episodes/39-markdown-to-html
HTML from markdown made simple! | Hanami Mastery
200 yes 1846 5
https://hanamimastery.com/episodes/42-front-matter-parser
Best way to work with Front Matter in Ruby! | Hanami Mastery
200 yes 1128 4
https://hanamimastery.com/authors/fiachetti 200 yes 206 4
https://hanamimastery.com/episodes/33-semantic-versioning
Deep dive into semantic versioning in Ruby | Hanami Mastery
200 yes 2607 4
https://hanamimastery.com/episodes/34-versioning-with-pessimize
Safe gem upgrades with pessimize gem | Hanami Mastery
200 yes 2148 4
https://hanamimastery.com/episodes/31-rom-factory
ROM-Factory - Your testing buddy for Hanami apps | Hanami Mastery
200 yes 1478 3
https://hanamimastery.com/episodes/44-bridgetown
Let's make a blog with Bridgetown | Hanami Mastery
200 yes 1555 3
https://hanamimastery.com/articles/unofficial-hanami-upgrade-guides?view=discuss
WIP: Unofficial guide for upgrading Hanami 1.x -> Hanami 2.x | Hanami Mastery
200 yes 2810 2
https://hanamimastery.com/thank-you
Thank you for your Hanami Mastery subscription! | Hanami Mastery
200 yes 95 1
https://hanamimastery.com/authors
HanamiMastery authors | Hanami Mastery
200 yes 33 0

Audit your own site — free

157 checks, internal PageRank, render-diff. No signup, results in ~30s.

Scan your site →