<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[BitHub Dev Notes]]></title><description><![CDATA[Engineering notes from BitHub, a technical web agency in Italy: custom eCommerce, SEO migrations, web performance and free tools for developers.]]></description><link>https://bithub.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Tue, 03 Nov 2026 02:34:42 GMT</lastBuildDate><atom:link href="https://bithub.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Embedding Google reviews without a Place ID (and without exposing your API key)]]></title><description><![CDATA[The design choices behind a free, copy-paste reviews widget]]></description><link>https://bithub.hashnode.dev/embedding-google-reviews-without-a-place-id-and-without-exposing-your-api-key</link><guid isPermaLink="true">https://bithub.hashnode.dev/embedding-google-reviews-without-a-place-id-and-without-exposing-your-api-key</guid><category><![CDATA[JavaScript]]></category><category><![CDATA[Web Development]]></category><category><![CDATA[google maps]]></category><dc:creator><![CDATA[Alessandro Giacani]]></dc:creator><pubDate>Tue, 27 Oct 2026 10:09:01 GMT</pubDate><content:encoded><![CDATA[<p>Showing Google reviews on a website sounds like a ten-minute job. In practice, most small businesses get stuck at one of three points: finding their Place ID, handling a Google Maps API key safely, or re-pasting code every time they want a different look.</p>
<p>We kept seeing all three, so we built a free <a href="https://bithub.it/en/tools/google-reviews-widget/">Google Reviews Widget</a> that removes them. Here are the decisions behind it.</p>
<h2>1. Start from the link people already have</h2>
<p>The Places API works with a Place ID. Most business owners have never heard of one, and finding it means another tool and another tab.</p>
<p>Everyone, however, can copy the link to their business on Google Maps. So the configurator takes that link and does the lookup itself. The owner pastes a URL they already know.</p>
<h2>2. Keep the API key out of the page</h2>
<p>Many embed approaches put the API key straight into the snippet. Anyone who opens the page source can copy it. HTTP referrer restrictions help, but many people never set them up.</p>
<p>In our widget the key travels over HTTPS when you configure it. It is never included in the embed code and is not stored in the browser. The snippet on your site contains only a container and a widget ID.</p>
<p>Usage is still billed by Google on the owner's own Google Maps Platform account, which keeps costs transparent: you see exactly what you consume.</p>
<h2>3. Separate the embed from the design</h2>
<p>The embed code is a lightweight container plus an asynchronous script, so it does not block page rendering. It works anywhere that accepts HTML: a WordPress custom HTML block, an embed block in another CMS, or a hand-coded page.</p>
<p>Because the configuration lives behind the widget ID, you can switch layout, colors or filters later without touching your site. The ID and snippet stay the same.</p>
<h2>4. Layouts for where reviews actually go</h2>
<p>Reviews earn their keep next to contact forms, booking buttons and service pages. Different spots need different shapes, so there are four layouts:</p>
<ul>
<li><strong>Slider</strong> for a hero or a full-width band</li>
<li><strong>Grid</strong> for a dedicated testimonials section</li>
<li><strong>List</strong> for sidebars and narrow columns</li>
<li><strong>Rating</strong> for a compact star summary near a call to action</li>
</ul>
<p>Each review shows the reviewer's name, date and star rating, with a link inviting visitors to leave their own review. Filters, colors, borders, shadows and corner radius are all adjustable with a live preview.</p>
<h2>Try it</h2>
<p>The widget is free and needs no account: <a href="https://bithub.it/en/tools/google-reviews-widget/">bithub.it/en/tools/google-reviews-widget</a>. Shopify stores can use the dedicated Shopify app instead.</p>
<p>I'd love feedback from anyone who has built something similar: how did you handle the API key problem?</p>
<p><em>Alessandro Giacani, CEO at</em> <a href="https://bithub.it/en/"><em>BitHub</em></a></p>
]]></content:encoded></item></channel></rss>