-
-
Notifications
You must be signed in to change notification settings - Fork 2k
Add cookbook to "getting starting" #5273
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: current
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for esphome ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
WalkthroughReorganized main navigation and footer in Changes
Sequence Diagram(s)No sequence diagrams generated — changes are declarative (navigation/footer/content) and do not alter runtime control flow. Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested reviewers
Tip 🔌 Remote MCP (Model Context Protocol) integration is now available!Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. ✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
hugo.yaml
(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
- Do not generate or add any sequence diagrams
Files:
hugo.yaml
🔇 Additional comments (1)
hugo.yaml (1)
56-59
: Validate “Cookbook” menu linkIt looks like there isn’t a “Cookbook” heading under your Components page, nor a dedicated
/cookbook/
page in the content tree. As a result, the current entry- name: "Cookbook" url: "/components/#cookbook" weight: 16 parent: "getting-started"may point to a missing anchor or a non-existent page. Please:
- Open
content/components/_index.md
(or wherever your Components landing page lives) and confirm there’s a heading likeso that## Cookbook
#/components/#cookbook
actually resolves.- Search for a standalone Cookbook page under
content/
(e.g.content/cookbook/index.md
or similar). If it exists, change theurl
to"/cookbook/"
for a cleaner direct link.- If neither the heading nor a page exists, add the appropriate section or file (and update this nav entry) to avoid a broken menu link.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
🧹 Nitpick comments (3)
content/cookbook/_index.md (3)
7-7
: Use a PNG/JPEG for social previews; many platforms don’t render SVG in OG/Twitter cards.Switch to a raster image (1200×630 recommended) placed under images/. Keep SVG elsewhere if needed.
Apply this diff (ensure the file exists in the repo):
- image: logo.svg + image: images/cookbook-og.pngIf you want, I can generate a checklist/script to confirm the image dimensions and presence.
16-26
: Minor title casing tweaks for consistency.Optional copyedits for a more polished index.
Apply this diff:
-"BME280 Environment extras","cookbook/bme280_environment","bme280.jpg","" +"BME280 Environment Extras","cookbook/bme280_environment","bme280.jpg","" @@ -"EHMTX a matrix status/text display","cookbook/ehmtx","ehmtx.jpg","" +"EHMTX: A Matrix Status/Text Display","cookbook/ehmtx","ehmtx.jpg",""
15-27
: Consider leading slashes in URLs for uniformity.If your shortcode doesn’t normalize paths, prefer “/cookbook/slug” to avoid relative URL issues under nested routes.
Apply this diff (if your site config prefers absolute URLs):
-"Lambda Magic - Tips and Tricks","cookbook/lambda_magic","head-lightbulb-outline.svg","dark-invert" +"Lambda Magic - Tips and Tricks","/cookbook/lambda_magic","head-lightbulb-outline.svg","dark-invert" @@ -"LVGL Recipes","cookbook/lvgl","lvgl.png","" +"LVGL Recipes","/cookbook/lvgl","lvgl.png","" @@ -"Garage Door Template Cover","cookbook/garage-door","garage-variant.svg","dark-invert" +"Garage Door Template Cover","/cookbook/garage-door","garage-variant.svg","dark-invert" @@ -"Time & Temperature on OLED Display","cookbook/display_time_temp_oled","display_time_temp_oled_2.jpg","" +"Time & Temperature on OLED Display","/cookbook/display_time_temp_oled","display_time_temp_oled_2.jpg","" @@ -"ESP32 Water Leak Detector","cookbook/leak-detector-m5stickC","leak-detector-m5stickC_main_index.jpg","" +"ESP32 Water Leak Detector","/cookbook/leak-detector-m5stickC","leak-detector-m5stickC_main_index.jpg","" @@ -"BME280 Environment Extras","cookbook/bme280_environment","bme280.jpg","" +"BME280 Environment Extras","/cookbook/bme280_environment","bme280.jpg","" @@ -"Non-Invasive Power Meter","cookbook/power_meter","power_meter.jpg","" +"Non-Invasive Power Meter","/cookbook/power_meter","power_meter.jpg","" @@ -"Sonoff Fishpond Pump","cookbook/sonoff-fishpond-pump","cookbook-sonoff-fishpond-pump.jpg","" +"Sonoff Fishpond Pump","/cookbook/sonoff-fishpond-pump","cookbook-sonoff-fishpond-pump.jpg","" @@ -"Arduino Port Extender","cookbook/arduino_port_extender","arduino_logo.svg","" +"Arduino Port Extender","/cookbook/arduino_port_extender","arduino_logo.svg","" @@ -"EHMTX: A Matrix Status/Text Display","cookbook/ehmtx","ehmtx.jpg","" +"EHMTX: A Matrix Status/Text Display","/cookbook/ehmtx","ehmtx.jpg","" @@ -"Pulse Catcher","cookbook/pulse-catcher","pulses.png","" +"Pulse Catcher","/cookbook/pulse-catcher","pulses.png",""
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
content/cookbook/_index.md
(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
- Do not generate or add any sequence diagrams
Files:
content/cookbook/_index.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
♻️ Duplicate comments (1)
hugo.yaml (1)
73-76
: Cookbook now points to the canonical URL.This resolves the earlier “/components/#cookbook” vs “/cookbook/” inconsistency.
🧹 Nitpick comments (4)
hugo.yaml (4)
76-76
: Strip trailing whitespace flagged by lint.YAMLlint reports trailing spaces on these lines. Remove them to keep CI green.
Apply this diff:
- parent: "next-steps" + parent: "next-steps" - +Also applies to: 86-86
81-85
: Normalize “Device Database” label and remove embedded trailing space.Use consistent casing (as in footer) and drop trailing space to avoid subtle diffs.
Apply this diff:
- - name: "Device database " + - name: "Device Database" url: "https://devices.esphome.io/" weight: 27 post: <i class="fa-solid fa-code"></i> parent: "next-steps"
84-84
: Prefer theme icon token over raw HTML forpost
.For consistency with footer entries (e.g.,
post: "code"
), consider using the theme’s icon token instead of inline HTML.Apply this diff (verify that
"code"
is a valid icon token in the theme):- post: <i class="fa-solid fa-code"></i> + post: "code"
87-97
: Unify identifier casing: use lowercasecontribute
and update children’s parent references.Other identifiers (
getting-started
,next-steps
,keeping-up
) are lowercase-hyphen. Aligning avoids surprises if lookups are case-sensitive.Apply this diff:
- - name: "Contribute" - weight: 40 - identifier: "Contribute" + - name: "Contribute" + weight: 40 + identifier: "contribute" - name: "Sharing ESPHome Devices" url: "/guides/creators/" - weight: 46 - parent: "Contribute" + weight: 46 + parent: "contribute" - name: "Made for ESPHome" url: "/guides/made_for_esphome/" - weight: 47 - parent: "Contribute" + weight: 47 + parent: "contribute"
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
hugo.yaml
(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
- Do not generate or add any sequence diagrams
Files:
hugo.yaml
🪛 YAMLlint (1.37.1)
hugo.yaml
[error] 76-76: trailing spaces
(trailing-spaces)
[error] 86-86: trailing spaces
(trailing-spaces)
🔇 Additional comments (2)
hugo.yaml (2)
61-65
: Main navigation restructure under “Documentation” is coherent.Good reparenting and weighting. Links to Configuration Types, Automations, Components, and Cookbook look consistent.
Also applies to: 69-76
100-121
: “Keeping Up” subtree changes look good.Weights and URLs are consistent; ordering is clear.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
♻️ Duplicate comments (2)
content/cookbook/_index.md (2)
2-2
: Fix grammar and clarity in descriptions.Tighten phrasing; “we've number a couple of” is ungrammatical. Use clear, user-facing copy.
-description: "Example Cookbook - Over the years we've number a couple of useful examples which you can use to set up your devices quickly and easily." +description: "Example Cookbook — Over the years, we have collected a number of useful examples you can use to set up your devices quickly and easily." @@ - description: Example Cookbook - Over the years we've number a couple of useful examples which you can use to set up your devices quickly and easily. + description: Example Cookbook — Over the years, we have collected a number of useful examples you can use to set up your devices quickly and easily. @@ -Over the years we've number a couple of useful examples which you can use to set up your devices quickly and easily. +Over the years, we have collected a number of useful examples you can use to set up your devices quickly and easily.Also applies to: 6-6, 11-11
9-9
: Capitalize heading.Headings should be in sentence or title case; start with a capital letter.
-## what can you find here? +## What can you find here?
🧹 Nitpick comments (4)
content/cookbook/_index.md (1)
21-21
: Unify entry titles (consistency/polish).Use consistent title casing and punctuation in imgtable entries.
-"BME280 Environment extras","bme280_environment","bme280.jpg","" +"BME280 Environment Extras","bme280_environment","bme280.jpg","" @@ -"EHMTX a matrix status/text display","ehmtx","ehmtx.jpg","" +"EHMTX: A Matrix Status/Text Display","ehmtx","ehmtx.jpg",""Also applies to: 25-25
hugo.yaml (3)
76-76
: Remove trailing spaces to appease linters.YAMLlint reports trailing spaces on these lines.
- parent: "next-steps" + parent: "next-steps" - +Also applies to: 86-86
81-81
: Trim trailing space in menu label.There’s a stray space after “Device database”.
- - name: "Device database " + - name: "Device database"
125-129
: Optional: Make internal footer URLs absolute for consistency.Elsewhere (main nav) uses leading slashes; consider mirroring that in the footer to avoid relative-url surprises in nested routes.
- - { parent: Documentation, url: "components/", post: "puzzle-piece", name: Components} - - { parent: Documentation, url: "guides/", post: "compass", name: Guides} - - { parent: Documentation, url: "automations/", post: "magic", name: Automations} - - { parent: Documentation, url: "cookbook/", post: "kitchen-set", name: Cookbook} + - { parent: Documentation, url: "/components/", post: "puzzle-piece", name: Components} + - { parent: Documentation, url: "/guides/", post: "compass", name: Guides} + - { parent: Documentation, url: "/automations/", post: "magic", name: Automations} + - { parent: Documentation, url: "/cookbook/", post: "kitchen-set", name: Cookbook}
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
⛔ Files ignored due to path filters (4)
content/cookbook/images/display_time_temp_oled_2.jpg
is excluded by!**/*.jpg
content/cookbook/images/garage-variant.svg
is excluded by!**/*.svg
content/cookbook/images/head-lightbulb-outline.svg
is excluded by!**/*.svg
content/cookbook/images/leak-detector-m5stickC_main_index.jpg
is excluded by!**/*.jpg
📒 Files selected for processing (2)
content/cookbook/_index.md
(1 hunks)hugo.yaml
(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
- Do not generate or add any sequence diagrams
Files:
content/cookbook/_index.md
hugo.yaml
🪛 LanguageTool
content/cookbook/_index.md
[style] ~11-~11: In American English, “we” and “have” do not usually form a contraction unless they’re followed by a past participle.
Context: ...what can you find here? Over the years we've number a couple of useful examples whic...
(IVE_I_HAVE_AMERICAN_STYLE)
🪛 YAMLlint (1.37.1)
hugo.yaml
[error] 76-76: trailing spaces
(trailing-spaces)
[error] 86-86: trailing spaces
(trailing-spaces)
🔇 Additional comments (3)
content/cookbook/_index.md (1)
15-27
: Imgtable block migration LGTM.Moving the cookbook list into a dedicated page with an imgtable is a solid IA improvement and aligns with the new navigation entry.
hugo.yaml (2)
73-76
: Main nav correctly points “Cookbook” to /cookbook/.Nice catch aligning main navigation with the new dedicated page.
73-76
: No legacy/components/#cookbook
anchors found
A repository-wide search returned zero occurrences of the old deep-link (/components/#cookbook
), so no further updates are required. ✅
Description:
Related issue (if applicable): fixes
Pull request in esphome with YAML changes (if applicable):
Checklist:
I am merging into
next
because this is new documentation that has a matching pull-request in esphome as linked above.or
I am merging into
current
because this is a fix, change and/or adjustment in the current documentation and is not for a new component or feature.Link added in
/components/index.rst
when creating new documents for new components or cookbook.New Component Images
If you are adding a new component to ESPHome, you can automatically generate a standardized black and white component name image for the documentation.
To generate a component image:
Comment on this pull request with the following command, replacing
COMPONENT_NAME
with your component name in UPPER_CASE format with underscores (e.g.,BME280
,SHT3X
,DALLAS_TEMP
):The ESPHome bot will respond with a downloadable ZIP file containing the SVG image.
Extract the SVG file and place it in the
images/
folder of this repository.Use the image in your component's index table entry in
/components/index.rst
.Example: For a component called "DHT22 Temperature Sensor", use: