1<!DOCTYPE html> 2<html lang="en"> 3<head> 4<meta charset="UTF-8"> 5<meta name="viewport" content="width=device-width, initial-scale=1.0"> 6<title>The Cary Pub â Wings, Cold Beer & Every Game On · Cary, NC</title> 7<meta name="description" content="The Cary Pub â a neighborhood sports bar in Cary, NC. House-made food, wings people drive across town for, daily specials, and every game on. Est. 2013."> 8<meta name="theme-color" content="#13100C"> 9 10<link rel="canonical" href="https://carypub.com/"> 11 12<!-- Social link previews â Open Graph + Twitter (CARY-18). Absolute URLs use the 13 canonical domain; if that ever changes, update it here and SITE_URL on the 14 server. The interior-hero photo is 1400x900 (good for large-image cards). --> 15<meta property="og:site_name" content="The Cary Pub"> 16<meta property="og:title" content="The Cary Pub â Wings, Cold Beer & Every Game On"> 17<meta property="og:description" content="A neighborhood sports bar in Cary, NC. Wings people drive across town for, daily specials, and every game on. Est. 2013."> 18<meta property="og:type" content="restaurant.restaurant"> 19<meta property="og:url" content="https://carypub.com/"> 20<meta property="og:image" content="https://carypub.com/assets/interior-hero.jpg"> 21<meta property="og:image:width" content="1400"> 22<meta property="og:image:height" content="900"> 23<meta property="og:image:alt" content="Inside The Cary Pub"> 24<meta property="og:locale" content="en_US"> 25 26<meta name="twitter:card" content="summary_large_image"> 27<meta name="twitter:title" content="The Cary Pub â Wings, Cold Beer & Every Game On"> 28<meta name="twitter:description" content="A neighborhood sports bar in Cary, NC. Wings, daily specials, and every game on. Est. 2013."> 29<meta name="twitter:image" content="https://carypub.com/assets/interior-hero.jpg"> 30<meta name="twitter:image:alt" content="Inside The Cary Pub"> 31 32<link rel="icon" href="/assets/icons/favicon.png"> 33<link rel="apple-touch-icon" href="/assets/icons/apple-touch-icon.png"> 34
35<script type="application/ld+json">{"@context":"https://schema.org","@type":"Restaurant","name":"The Cary Pub","url":"https://carypub-com-website.onrender.com/","image":"https://carypub-com-website.onrender.com/assets/interior-hero.jpg","telephone":"+19198591070","priceRange":"$$","servesCuisine":["American","Bar Food","Wings"],"address":{"@type":"PostalAddress","addressLocality":"Cary","addressRegion":"NC","addressCountry":"US","streetAddress":"Cary Parkway & Tryon Rd"},"geo":{"@type":"GeoCoordinates","latitude":35.7547,"longitude":-78.7997},"openingHours":["Mo,Tu,We,Th,Fr,Sa 11:00-02:00"],"sameAs":["https://www.facebook.com/profile.php?id=100063737553657"]}</script>
35<!-- Schema.org Restaurant JSON-LD is injected here server-side 36 (see buildJsonLd() in server.js) so opening hours track the manager's edits. --> 37 38<link rel="preconnect" href="https://fonts.googleapis.com"> 39<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 40<link href="https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,600;0,9..144,900;1,9..144,300;1,9..144,600;1,9..144,900&family=Bebas+Neue&family=Source+Sans+3:wght@300;400;500;600;700&family=Caveat:wght@500;700&display=swap" rel="stylesheet"> 41<link rel="stylesheet" href="/css/public.css"> 42 43<!-- PostHog product analytics (public site only). Inlined like the Cloudflare 44 beacon; the manager PWA is intentionally excluded. Guarded so dev traffic 45 on localhost/127.0.0.1 never initializes PostHog (no loader, no capture). 46 CSP for us(-assets).i.posthog.com lives in server.js. -->
47<script> 48 !function(t,e){var o,n,p,r;e.__SV||(window.posthog && window.posthog.__loaded)||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(".");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement("script")).type="text/javascript",p.crossOrigin="anonymous",p.async=!0,p.src=s.api_host.replace(".i.posthog.com","-assets.i.posthog.com")+"/static/array.js",(r=t.getElementsByTagName("script")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a="posthog",u.people=u.people||[],u.toString=function(t){var e="posthog";return"posthog"!==a&&(e+="."+a),t||(e+=" (stub)"),e},u.people.toString=function(){return u.toString(1)+".people (stub)"},o="xi Si init Ni Bi pr qi Ui $i capture calculateEventProperties Zi register register_once register_for_session unregister unregister_for_session Yi getFeatureFlag getFeatureFlagPayload getFeatureFlagResult isFeatureEnabled reloadFeatureFlags updateFlags updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures on onFeatureFlags onSurveysLoaded onSessionId getSurveys getActiveMatchingSurveys renderSurvey displaySurvey cancelPendingSurvey canRenderSurvey canRenderSurveyAsync Ki identify setPersonProperties unsetPersonProperties group resetGroups setPersonPropertiesForFlags resetPersonPropertiesForFlags setGroupPropertiesForFlags resetGroupPropertiesForFlags reset setIdentity clearIdentity get_distinct_id getGroups get_session_id get_session_replay_url alias set_config startSessionRecording stopSessionRecording sessionRecordingStarted captureException addExceptionStep captureLog startExceptionAutocapture stopExceptionAutocapture loadToolbar get_property getSessionProperty Qi Wi createPersonProfile setInternalOrTestUser Ji Fi tn opt_in_capturing opt_out_capturing has_opted_in_capturing has_opted_out_capturing get_explicit_consent_status is_capturing clear_opt_in_out_capturing zi debug mr it getPageViewId captureTraceFeedback captureTraceMetric Ri".split(" "),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[]); 49 // Keep dev traffic out of analytics: only initialize off localhost/127.0.0.1. 50 if (location.hostname !== 'localhost' && location.hostname !== '127.0.0.1') { 51 posthog.init('phc_txjMWrUGHbidkgBN2Z6oEb9aYUy4xyxKYNQQiUrdjn87', { 52 api_host: 'https://us.i.posthog.com', 53 defaults: '2026-05-30', 54 person_profiles: 'identified_only', // or 'always' to create profiles for anonymous users as well 55 }) 56 } 57</script>
57 58</head> 59<body> 60 61<!-- announcement banner (shown only if set in manager) --> 62<div id="announce" class="announce" style="display:none;"></div> 63 64<!-- NAV --> 65<nav class="nav"> 66 <div class="nav-inner"> 67 <a class="nav-logo" href="/"> 68 <img src="/assets/logo-white.png" alt="The Cary Pub"> 69 <span>THE CARY PUB</span> 70 </a> 71 <div class="nav-links" id="nav-links"> 72 <a href="#today">Today</a> 73 <a href="#week">The Week</a> 74 <a href="#wings">Wings</a> 75 <a href="#board">Beer Board</a> 76 <a href="#menu">Menu</a> 77 <a href="#find">Find Us</a> 78 <a id="nav-call" class="nav-call" href="tel:+19194671544">CALL</a> 79 </div> 80 <button class="nav-toggle" id="nav-toggle" aria-label="Open menu" aria-expanded="false" aria-controls="nav-links"> 81 <svg class="ico-bars" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" aria-hidden="true"> 82 <line x1="3" y1="6" x2="21" y2="6"/> 83 <line x1="3" y1="12" x2="21" y2="12"/> 84 <line x1="3" y1="18" x2="21" y2="18"/> 85 </svg> 86 </button> 87 </div> 88</nav> 89 90<!-- RIGHT NOW (CARY-04) â ephemeral "what's happening right now" strip, set from 91 the manager Live tab; sits directly under the nav, distinct from the standing 92 announcement bar above the nav --> 93<div id="right-now" class="right-now" style="display:none;"> 94 <div class="wrap right-now-inner"> 95 <span class="rn-badge"><span class="dot coral"></span>RIGHT NOW</span> 96 <span id="right-now-text" class="rn-text"></span> 97 </div> 98</div> 99 100<!-- HERO --> 101<header class="hero"> 102 <div class="hero-bg"></div> 103 <div class="hero-inner"> 104 <img class="hero-logo" src="/assets/logo-white.png" alt="The Cary Pub"> 105 <p id="hero-tag" class="hero-tag">Your neighborhood pub for wings, cold beer, and every game on.</p> 106 <div class="hero-est">EST. 2013 · CARY, NC</div> 107 <div id="hero-gamenights" class="hero-gamenights" style="display:none;"></div> 108 <div id="hero-gameinfo" class="hero-gameinfo" style="display:none;">Free to play · Prizes are gift cards</div> 109 <div class="hero-cta"> 110 <a class="btn btn-amber" href="#today">SEE TODAY'S SPECIALS</a> 111 <a id="hero-directions" class="btn btn-blue" target="_blank" rel="noopener noreferrer" href="https://maps.google.com/?q=The+Cary+Pub+Cary+NC">DIRECTIONS</a> 112 <a id="hero-call" class="btn btn-ghost" href="tel:+19194671544">CALL THE PUB</a> 113 </div> 114 <div id="hero-status" class="hero-status"></div> 115 </div> 116</header> 117 118<!-- TODAY --> 119<section id="today" class="section today"> 120 <div class="wrap"> 121 <div class="section-head"> 122 <span id="today-eyebrow" class="today-eyebrow"><span class="dot coral"></span>TODAY</span> 123 <h2 class="section-title">Daily <span class="amber">Specials</span>.</h2> 124 </div> 125 <div id="today-gamenight" class="today-gamenight" style="display:none;"></div> 126 <div id="today-grid" class="today-grid"> 127 <!-- populated by public.js --> 128 </div> 129 </div> 130</section> 131 132<!-- GAME NIGHTS (marquee feature â sits below the daily specials) --> 133<section id="game-nights" class="section game-nights" style="display:none;"> 134 <div class="wrap"> 135 <div class="section-head"> 136 <span class="eyebrow gng-eyebrow">Weekly Game Nights</span> 137 <h2 class="section-title">Game night, <span class="amber">every week.</span></h2> 138 </div> 139 <div id="gng-grid" class="gng-grid"></div> 140 <div id="gng-host" class="gng-host"></div> 141 </div> 142</section> 143 144 145<!-- THE WEEK --> 146<section id="week" class="section"> 147 <div class="wrap"> 148 <div class="section-head"> 149 <span class="eyebrow">The Weekly Lineup</span> 150 <h2 class="section-title">Something <span class="blue">every</span> day of the week.</h2> 151 </div> 152 <div id="week-grid" class="week-grid"></div> 153 </div> 154</section> 155 156<!-- WINGS SHOWCASE â the house specialty. Static, read on page load (no voting, 157 no scoring, no SSE): just the sizes and every flavor as a clean grid. Sizes 158 and flavors come from the Wings category in menu.json; prices stay behind the 159 global showPrices flag. Hidden if the Wings category has no flavors. --> 160<section id="wings" class="section wings-showcase" style="display:none;"> 161 <div class="wrap"> 162 <div class="section-head wings-head"> 163 <div class="wings-head-main">
164 <span class="eyebrow">The House Specialty</span> 165 <h2 class="section-title">Wings worth the <span class="amber">drive</span>.</h2> 166 </div> 167 <p class="wings-swagger">Eight sauces, three sizes, and one <b>reason people cross town</b> on game night.</p> 168 </div> 169 <div class="wings-card"> 170 <div class="wings-sizes"> 171 <div class="wings-sub">By the order</div> 172 <div id="wings-sizes" class="wings-size-list"></div> 173 </div> 174 <div class="wings-flavors"> 175 <div class="wings-flav-head"> 176 <div class="wings-sub">Flavors</div> 177 <div id="wings-filter" class="wr-filter"></div> 178 </div> 179 <div id="wings-chips" class="wings-flav-grid"></div> 180 </div> 181 </div> 182 <div id="wings-foot" class="wings-foot"></div> 183 </div> 184</section> 185 186<!-- BEER BOARD â the pub's blackboard, recreated: Bottles / Draft / Cans. 187 Read on load like the menu; deliberately not live (no SSE). --> 188<section id="board" class="section" style="display:none;"> 189 <div class="wrap"> 190 <div class="section-head"> 191 <span class="eyebrow">The Beer Board</span> 192 <h2 class="section-title">What's <span class="amber">pouring</span>.</h2> 193 </div> 194 <div id="beer-board" class="beer-board"></div> 195 </div> 196</section> 197 198<!-- MENU --> 199<section id="menu" class="section" style="background:var(--bg-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);"> 200 <div class="wrap"> 201 <div class="section-head"> 202 <span class="eyebrow">The Menu</span> 203 <h2 class="section-title">Made in-house. <span class="amber">Built to share.</span></h2> 204 </div> 205 <div id="menu-tabs" class="menu-tabs"></div> 206 <div id="menu-body"></div> 207 <p class="menu-disclaimer">*Some items may be served raw or undercooked.<br>Consuming raw or undercooked meats or eggs may increase your risk of food-borne illness.</p> 208 <p class="menu-disclaimer" id="menu-kitchen-note" hidden></p> 209 </div> 210</section> 211 212<!-- FIND US --> 213<section id="find" class="section"> 214 <div class="wrap"> 215 <div class="section-head"> 216 <span class="eyebrow">Find Us</span> 217 <h2 class="section-title">Pull up a <span class="blue">stool</span>.</h2> 218 </div> 219 <div class="find-grid"> 220 <div id="find-map-block" class="find-map-block"> 221 <!-- map + directions, populated by public.js --> 222 </div> 223 <div id="find-info"> 224 <!-- populated by public.js --> 225 </div> 226 </div> 227 </div> 228</section> 229 230<!-- FOOTER --> 231<footer class="footer"> 232 <img src="/assets/logo-white.png" alt="The Cary Pub"> 233 <div class="fsocial"> 234 <a id="foot-fb" href="https://www.facebook.com/thecary.pub/" target="_blank" rel="noopener noreferrer">FACEBOOK</a> 235 <a id="foot-call" href="tel:+19194671544">CALL</a> 236 <a id="foot-dir" href="https://maps.google.com/?q=The+Cary+Pub+Cary+NC" target="_blank" rel="noopener noreferrer">DIRECTIONS</a> 237 </div> 238 <div class="fcopy">© <span id="foot-year"></span> THE CARY PUB · CARY, NC · EST. 2013</div> 239 <div class="fpowered">POWERED BY <a href="https://hoebtech.com" target="_blank" rel="noopener noreferrer">HOEBERLEIN TECHNOLOGIES LLC</a></div> 240</footer> 241 242<!-- CHATBOT --> 243<button id="chat-fab" class="chat-fab" aria-label="Ask the Pub"> 244 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 11.5a8.38 8.38 0 0 1-8.5 8.5 8.5 8.5 0 0 1-3.8-.9L3 21l1.9-5.7a8.5 8.5 0 0 1-.9-3.8A8.38 8.38 0 0 1 12.5 3 8.38 8.38 0 0 1 21 11.5z"/></svg> 245 <span>ASK THE PUB</span> 246</button> 247 248<div id="chat-panel" class="chat-panel"> 249 <div class="chat-head"> 250 <img src="/assets/logo-white.png" alt=""> 251 <div> 252 <div class="ct">Ask the Pub</div> 253 <div class="cs"><span class="dot green"></span>BARTENDER ON DUTY</div> 254 </div> 255 <button id="chat-close" class="chat-close" aria-label="Close">Ã</button> 256 </div> 257 <div id="chat-body" class="chat-body"></div> 258 <div id="chat-suggest" class="chat-suggest"> 259 <button data-q="What's the special today?">Today's special?</button> 260 <button data-q="Do you have anything gluten free?">Gluten free?</button> 261 <button data-q="What time do you close tonight?">Closing time?</button> 262 </div> 263 <div class="chat-input"> 264 <input id="chat-text" type="text" placeholder="Ask about the menu, specials, hoursâ¦" autocomplete="off"> 265 <button id="chat-send" aria-label="Send">â</button> 266 </div> 267</div> 268
269<script src="/js/shared.js"></script>
vendor: 1 bytes, line 269
269
270<script src="/js/public.js"></script>
270 271<!-- Cloudflare Web Analytics -->
vendor: 99 bytes, line 271
271<script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "
271f6d65224774e455382b1bd84509e46fb
vendor: 13 bytes, line 271
271"}'></script>
271<!-- End Cloudflare Web Analytics --> 272</body> 273</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.