├── .nvmrc ├── tsconfig.json ├── src ├── env.d.ts ├── images │ └── burgers │ │ ├── midcity.jpg │ │ ├── alleydogz.jpg │ │ ├── americana.jpg │ │ ├── blueeyes.jpg │ │ ├── bendbrewing.jpg │ │ └── willieburger.jpg ├── content │ ├── config.ts │ └── burgers │ │ ├── bendbrewing.md │ │ ├── alleydogz.md │ │ ├── blueeyes.md │ │ ├── willieburger.md │ │ ├── midcity.md │ │ └── americana.md ├── components │ ├── Footer.astro │ └── Card.astro ├── pages │ ├── index.astro │ └── burger │ │ └── [slug].astro └── layouts │ └── Layout.astro ├── .vscode ├── extensions.json └── launch.json ├── astro.config.mjs ├── .gitignore ├── package.json └── README.md /.nvmrc: -------------------------------------------------------------------------------- 1 | 18.17.1 -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "astro/tsconfigs/base" 3 | } 4 | -------------------------------------------------------------------------------- /src/env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["astro-build.astro-vscode"], 3 | "unwantedRecommendations": [] 4 | } 5 | -------------------------------------------------------------------------------- /src/images/burgers/midcity.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriscoyier/smashburgers-in-bend/HEAD/src/images/burgers/midcity.jpg -------------------------------------------------------------------------------- /src/images/burgers/alleydogz.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriscoyier/smashburgers-in-bend/HEAD/src/images/burgers/alleydogz.jpg -------------------------------------------------------------------------------- /src/images/burgers/americana.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriscoyier/smashburgers-in-bend/HEAD/src/images/burgers/americana.jpg -------------------------------------------------------------------------------- /src/images/burgers/blueeyes.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriscoyier/smashburgers-in-bend/HEAD/src/images/burgers/blueeyes.jpg -------------------------------------------------------------------------------- /src/images/burgers/bendbrewing.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriscoyier/smashburgers-in-bend/HEAD/src/images/burgers/bendbrewing.jpg -------------------------------------------------------------------------------- /src/images/burgers/willieburger.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriscoyier/smashburgers-in-bend/HEAD/src/images/burgers/willieburger.jpg -------------------------------------------------------------------------------- /astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | 3 | // https://astro.build/config 4 | export default defineConfig({}); 5 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": [ 4 | { 5 | "command": "./node_modules/.bin/astro dev", 6 | "name": "Development server", 7 | "request": "launch", 8 | "type": "node-terminal" 9 | } 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | 4 | # generated types 5 | .astro/ 6 | 7 | # dependencies 8 | node_modules/ 9 | 10 | # logs 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # environment variables 17 | .env 18 | .env.production 19 | 20 | # macOS-specific files 21 | .DS_Store 22 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cd", 3 | "type": "module", 4 | "version": "0.0.1", 5 | "scripts": { 6 | "dev": "astro dev", 7 | "start": "astro dev", 8 | "build": "astro build", 9 | "preview": "astro preview", 10 | "astro": "astro" 11 | }, 12 | "dependencies": { 13 | "astro": "^3.0.12", 14 | "sass": "^1.66.1" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/content/config.ts: -------------------------------------------------------------------------------- 1 | import { z, defineCollection } from "astro:content"; 2 | 3 | const burgersCollection = defineCollection({ 4 | type: "content", 5 | schema: ({ image }) => 6 | z.object({ 7 | restaurant: z.string(), 8 | image: image(), 9 | website: z.string().url(), 10 | location: z.string(), 11 | summary: z.string(), 12 | bg: z.string(), 13 | color: z.string(), 14 | }), 15 | }); 16 | 17 | export const collections = { 18 | burgers: burgersCollection, 19 | }; 20 | -------------------------------------------------------------------------------- /src/content/burgers/bendbrewing.md: -------------------------------------------------------------------------------- 1 | --- 2 | restaurant: BBC 3 | slug: bendbrewing 4 | image: "../../images/burgers/bendbrewing.jpg" 5 | website: https://www.bendbrewingco.com/ 6 | location: 1019 NW Brooks St 7 | summary: One choice on a full menu 8 | bg: "#465361" 9 | color: "#fff" 10 | --- 11 | 12 | I think this Bend Brewing Company smashburger _just_ squeaks in as being worthy of the name smashburger. It's pretttttty thick as far as the genre is concerned. No thin crispy edges to be found. But it honors the genre generally with just the grilled onions, american cheese, and basic lettuce, and I'll admit it was perfectly tasty. 13 | -------------------------------------------------------------------------------- /src/components/Footer.astro: -------------------------------------------------------------------------------- 1 | 7 | 8 | 24 | -------------------------------------------------------------------------------- /src/content/burgers/alleydogz.md: -------------------------------------------------------------------------------- 1 | --- 2 | restaurant: Alley Dogz 3 | slug: alleydogz 4 | image: "../../images/burgers/alleydogz.jpg" 5 | website: https://www.alleydogzfoodcart.com/ 6 | location: 1661 NE 4th Street (Midtown Yacht Club) 7 | summary: Hotdog cart that does a classic smash 8 | bg: "#465361" 9 | color: "#fff" 10 | --- 11 | 12 | It ain't just dogs. 13 | 14 | [Nancy](https://eatdrinkbend.com/smash-burgers-bend-oregon/): 15 | 16 | > Don’t let the name fool you—Alley Dogz now serves smash burgers alongside their extensive hot dog and corn dog offerings. This smashy comes with a heaping of grilled onions, pickles, and gooey American cheese. 17 | 18 | I haven't actually tried one yet so it's on my list to go check out. I'm a fan of the Yacht Club anyway — almost every single cart there is very good. 19 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Smashburgers in Bend 2 | 3 | Deployed site: 4 | 5 | https://smashburgers.chriscoyier.net/ 6 | 7 | ## TODO Burgers 8 | 9 | - CHOW has a smashburger [on the carry out menu](https://www.bendinspoon.com/carryout-menu). 10 | 11 | - [Trailhead Grill](https://juniperpreserve.com/dine/trailhead-grill/) at Juniper Preserve (the new name for Pronghorn Resort) has a smashburger [on the lunch/dinner menu](https://juniperpreserve.com/wp-content/uploads/2023/07/THGMain_2306.pdf). 12 | 13 | - Worthy Brewing (West Side Only) [has build-your-own smashburgers](https://worthy.beer/brewery-with-food-bend/burgers-bend-oregon/). 14 | 15 | ## Interesting related links 16 | 17 | - https://mangiabeve.blogspot.com/2023/01/bend-smashburger-smash-off.html 18 | - https://eatdrinkbend.com/smash-burgers-bend-oregon/ 19 | - https://www.bendsource.com/food-drink/smash-burgers-in-bend-18138059 20 | -------------------------------------------------------------------------------- /src/content/burgers/blueeyes.md: -------------------------------------------------------------------------------- 1 | --- 2 | restaurant: Blue Eyes 3 | slug: blueeyes 4 | image: "../../images/burgers/blueeyes.jpg" 5 | website: https://www.blueeyesburgersandfries.com/ 6 | location: 706 NE Greenwood Ave 7 | summary: A Jackson's Corner popup gone brick and mortar. 8 | bg: "#d0d1cf" 9 | color: "#000" 10 | --- 11 | 12 | From [Janay Wright's review](https://www.bendbulletin.com/lifestyle/entertainment/blue-eyes-burgers-and-fries-in-bend-offers-classic-diner-experience/article_5b32a9f0-06e7-11ed-9f65-9f324b0fdbf7.html): 13 | 14 | > The smash burgers are prepared on a Jackson’s Corner griddled sweet bun with thinly shaved onions smashed directly into the patty itself. True to the smash burger style, the hamburger is thin, asymmetrical and crispy. 15 | 16 | As a full-blown shop, they can and do offer more, a kid's burger, onion rings, soft-serve based deserts, and even a full bar. 17 | 18 | I've been twice now and I hate to say it but I don't think the burgers are very good. I can't quite put my finger on it but the flavor just isn't there. The onion rings are good, but that's not enough to keep me coming. I worry that the Jackson's Corner empire generally has faded. 19 | -------------------------------------------------------------------------------- /src/content/burgers/willieburger.md: -------------------------------------------------------------------------------- 1 | --- 2 | restaurant: Willieburger 3 | slug: willieburger 4 | image: "../../images/burgers/willieburger.jpg" 5 | website: https://www.instagram.com/willieburgerbend/ 6 | location: 901 SW Simpson Ave (Deschutes Brewery Tasting Room) 7 | summary: Zero frills — singles, doubles, and triples. 8 | bg: "#0a0c11" 9 | color: "#fff" 10 | --- 11 | 12 | Willieburger, from ~Chris and Kahla Collins~ [Andrew George](https://www.bendbulletin.com/lifestyle/willieburger-s-next-chapter-a-new-owner-takes-the-helm/article_b686cc42-1887-11ef-8fc8-07cc1bd06aee.html), is the best smashburger in Bend. Their dedication to perfectly classic smashburgers is unmatched. All they do is singles, doubles, and triples. The thinly sliced onions are smashed right into the patty during cooking. Make it spicy by adding jalapeños done the same way for $1. 13 | 14 | No sides except bags of chips. No drinks except a cooler of sodas. No frills. Just burgers. 15 | 16 | Frankly the unpredictable hours and location have left me frustrated a few times and I'm a creature that values predictability. Your best bet is consulting Instagram, as they post schedules [like this](https://www.instagram.com/p/Cw35pGGruNo/) sometimes. 17 | 18 | They sell out nearly every time they are open especially at events, so that should tell you something about how good they are. 19 | -------------------------------------------------------------------------------- /src/content/burgers/midcity.md: -------------------------------------------------------------------------------- 1 | --- 2 | restaurant: MidCity 3 | slug: midcity 4 | image: "../../images/burgers/midcity.jpg" 5 | website: https://midcitysmashedburger.com/ 6 | summary: Started in Portland and the 4th cart is now in Bend. 7 | location: Various cart locations 8 | bg: "#e8e3ab" 9 | color: "#000" 10 | --- 11 | 12 | I haven't actually tried MidCity yet, but I'd really like to. I've heard they were at Munch & Music a bunch during the 2023 summer, but I didn't catch it there. I've heard they've been at the ampitheater, at Boneyard, and other cart pods, but I've literally never seen it. There doesn't seem to be any public information about the plan. 13 | 14 | [Their website](https://midcitysmashedburger.com/about-1): 15 | 16 | > Prepared with 80/20 Oregon beef sourced from Painted Hills, our classic Smashy Boi is smashed flat beneath a cast-iron press, resulting in thin and crispy patties. Our burgers are covered in American cheese, and Smash Sauce, and served up on Franz Bakery buns, for an accessible for all $6 price tag. 17 | 18 | That's an inexpensive burger! The Americana truck has an [explicit goal of affordability](https://www.bendbulletin.com/lifestyle/enjoy-a-smash-burger-for-8-at-the-americana-food-truck-in-bend/article_8730e4a4-91ca-11ed-a896-672585f7e686.html) but clocks in at $8 to MidCity's $6. 19 | 20 | In 2021, MidCity was named Portland’s best smash burger by The Oregonian, so let's hope that quality makes it way to Bend's cart! 21 | -------------------------------------------------------------------------------- /src/content/burgers/americana.md: -------------------------------------------------------------------------------- 1 | --- 2 | restaurant: Americana 3 | slug: americana 4 | image: "../../images/burgers/americana.jpg" 5 | website: https://www.americanafoodtruck.com/ 6 | location: 536 NW Arizona Ave (Podski) 7 | summary: Intentionally affordable and downhome. 8 | bg: "#825c47" 9 | color: "#fff" 10 | --- 11 | 12 | Platinum winner of "Best Restaurant" by CommunityVotes Bend in 2023, as well as "Best Burger in 2022 and 2023 and "Best Fries" in 2023. Plus 2nd place in "Best Food Cart" in SourceWeekly in 2023. Not bad for Joe Franco's cart that's just a few years old. 13 | 14 | I'm a fan, particularly of the OG, their basic smashburger. They do put shredded lettuce on it and it can be a little sauce heavy, but it's a great burger. 15 | 16 | Their other burgers, and the specials, tend to _go big_ in a way that doesn't do it for me (like [The Gaucho](https://www.instagram.com/p/Csw-xEPvsLE/)). 17 | 18 | The fries though really take Americana another level up. They are kinda McDonald's style, which a famous for a reason, but seasoned with something reminiscent of [Lawry's](https://www.mccormick.com/lawrys) but really reminds me of the Taco John's Potato Oles seasoning. 19 | 20 | From [Janay Wright's review](https://www.bendbulletin.com/lifestyle/enjoy-a-smash-burger-for-8-at-the-americana-food-truck-in-bend/article_8730e4a4-91ca-11ed-a896-672585f7e686.html): 21 | 22 | > While most smash burgers are cooked by continually smashing and flipping the burger, The Americana allows the burger to cook in place on the grill, forming a crust on the bottom. 23 | 24 | > The two patties flared beyond the bun on all sides like a skirt, dotted with melted cheese. The additional crispiness formed by allowing the patty to sizzle in place on the grill was visible. 25 | 26 | Don't miss it. 27 | -------------------------------------------------------------------------------- /src/components/Card.astro: -------------------------------------------------------------------------------- 1 | --- 2 | import { Image } from "astro:assets"; 3 | 4 | const { slug, title, body, img, bg, color } = Astro.props; 5 | --- 6 | 7 | 19 |
20 |

21 | {title} 22 |

23 |

24 | {body} 25 |

26 |
27 | 28 | {`Photograph 36 |
37 | 38 | 103 | -------------------------------------------------------------------------------- /src/pages/index.astro: -------------------------------------------------------------------------------- 1 | --- 2 | import { getCollection } from "astro:content"; 3 | 4 | import Layout from "../layouts/Layout.astro"; 5 | import Card from "../components/Card.astro"; 6 | 7 | const burgers = await getCollection("burgers"); 8 | --- 9 | 10 | 11 |
12 |

13 | Smashburgers in Bend 14 |

15 | 16 |
17 |

18 | If you can order it medium-rare, it's not a smashburger. Smashburgers 19 | are smashed to a thinness that they cook through on the griddle. The 20 | smashing forms a seared crispy crust, especially on the thinned edges, 21 | while staying juicy. They are a bit of a trend, but one that appears 22 | here to stay, likely because they are tasty and burgers in general are 23 | the most popular food item in America. Here are the current players in 24 | Bend, Oregon. 25 |

26 | { 27 | burgers.map((post) => { 28 | return ( 29 | 37 | ); 38 | }) 39 | } 40 |
41 |
42 |
43 | 44 | 94 | -------------------------------------------------------------------------------- /src/pages/burger/[slug].astro: -------------------------------------------------------------------------------- 1 | --- 2 | import { getEntry } from "astro:content"; 3 | 4 | import Layout from "../../layouts/Layout.astro"; 5 | import { Image } from "astro:assets"; 6 | 7 | export async function getStaticPaths() { 8 | const posts = await Astro.glob("../../content/burgers/*.md"); 9 | 10 | return posts.map((post) => ({ 11 | params: { 12 | slug: post.frontmatter.slug, 13 | }, 14 | props: { 15 | post, 16 | }, 17 | })); 18 | } 19 | 20 | const { slug } = Astro.params; 21 | const post = await getEntry("burgers", slug); 22 | 23 | const url = new URL(post.data.website); 24 | --- 25 | 26 | 27 |
28 | {`Photograph 36 | 37 | ← Smashburgers in Bend 38 |

{post.data.restaurant}

39 | 40 |
41 | 52 | 53 | 54 |
55 |
56 |
57 | 58 | 108 | -------------------------------------------------------------------------------- /src/layouts/Layout.astro: -------------------------------------------------------------------------------- 1 | --- 2 | import { ViewTransitions } from "astro:transitions"; 3 | import Footer from "../components/Footer.astro"; 4 | 5 | const { title } = Astro.props; 6 | --- 7 | 8 | 9 | 10 | 11 | 12 | 16 | 17 | 18 | 19 | 23 | 24 | {title} 25 | 26 | 27 | 28 | 32 | 33 | 34 | 35 | 36 | 37 |
38 | 39 |
40 |
41 | 42 | 106 | 107 | 108 | --------------------------------------------------------------------------------