From 2e5f253580e6e3dbaf79cb5702566c84bd31d448 Mon Sep 17 00:00:00 2001 From: chris Date: Sun, 7 Jun 2026 00:47:26 -0400 Subject: [PATCH] Polish: meta/OG tags, JSON-LD, 404 pages, typo fix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Unique title + meta description on every main-site page - OpenGraph + Twitter card tags sitewide (hero image on homepage, logo elsewhere) - LocalBusiness JSON-LD on homepage for Google rich results - Custom 404 page on main-site (branded, links home + contact) - Custom not-found page on estore - Fix typo: "Delivery avalable" → "Delivery available" Co-Authored-By: Claude Sonnet 4.6 --- estore/src/app/not-found.tsx | 22 ++++++++++++++ main-site/404.html | 33 +++++++++++++++++++++ main-site/about/index.html | 11 ++++++- main-site/color/index.html | 11 ++++++- main-site/contact/index.html | 12 ++++++-- main-site/faq/index.html | 12 ++++++-- main-site/gallery/index.html | 12 ++++++-- main-site/index.html | 57 ++++++++++++++++++++++++++++++++++-- main-site/server.js | 5 ++++ 9 files changed, 164 insertions(+), 11 deletions(-) create mode 100644 estore/src/app/not-found.tsx create mode 100644 main-site/404.html diff --git a/estore/src/app/not-found.tsx b/estore/src/app/not-found.tsx new file mode 100644 index 0000000..dab666b --- /dev/null +++ b/estore/src/app/not-found.tsx @@ -0,0 +1,22 @@ +import type { Metadata } from 'next' +import Link from 'next/link' + +export const metadata: Metadata = { title: 'Page Not Found' } + +export default function NotFound() { + return ( +
+
+

🎈

+

Page not found

+

+ Looks like this balloon floated away. +

+
+ Back to shop + Contact us +
+
+
+ ) +} diff --git a/main-site/404.html b/main-site/404.html new file mode 100644 index 0000000..d519490 --- /dev/null +++ b/main-site/404.html @@ -0,0 +1,33 @@ + + + + + + Page Not Found — Beach Party Balloons + + + + + + + + + +
+
+

🎈

+

Oops — page not found

+

+ Looks like this balloon floated away. Let's get you back on track. +

+ +
+
+ + + + + diff --git a/main-site/about/index.html b/main-site/about/index.html index 16b3793..1f33f7c 100644 --- a/main-site/about/index.html +++ b/main-site/about/index.html @@ -10,7 +10,7 @@ - Beach Party Balloons + About Us — Beach Party Balloons @@ -42,6 +42,15 @@ margin-bottom: 3rem; } + + + + + + + + + diff --git a/main-site/color/index.html b/main-site/color/index.html index d10955c..2c2228e 100644 --- a/main-site/color/index.html +++ b/main-site/color/index.html @@ -3,7 +3,7 @@ - Beach Party Balloons Color Palette Picker + Color Palette Picker — Beach Party Balloons @@ -21,6 +21,15 @@ + + + + + + + + + diff --git a/main-site/contact/index.html b/main-site/contact/index.html index 3e08a84..7f05726 100644 --- a/main-site/contact/index.html +++ b/main-site/contact/index.html @@ -9,14 +9,22 @@ - - Beach Party Balloons + Contact Us — Beach Party Balloons + + + + + + + + + diff --git a/main-site/faq/index.html b/main-site/faq/index.html index d59eea4..2ff609c 100644 --- a/main-site/faq/index.html +++ b/main-site/faq/index.html @@ -9,8 +9,7 @@ - - Beach Party Balloons + FAQ — Beach Party Balloons @@ -58,6 +57,15 @@ color: #2c3e50; } + + + + + + + + + diff --git a/main-site/gallery/index.html b/main-site/gallery/index.html index b1b6bf2..d99c5c7 100644 --- a/main-site/gallery/index.html +++ b/main-site/gallery/index.html @@ -9,8 +9,7 @@ - - Beach Party Balloons - Gallery + Gallery — Beach Party Balloons @@ -18,6 +17,15 @@ + + + + + + + + + diff --git a/main-site/index.html b/main-site/index.html index d703b2d..5f098f2 100644 --- a/main-site/index.html +++ b/main-site/index.html @@ -9,8 +9,7 @@ - - Beach Party Balloons + Beach Party Balloons — Milford, CT @@ -19,6 +18,58 @@ + + + + + + + + + + @@ -58,7 +109,7 @@
Image 1
-

Delivery avalable!

+

Delivery available!

Have your balloons delivered! Our delivery staff will make sure your order arrives safe and sound!

diff --git a/main-site/server.js b/main-site/server.js index f07b4b4..d20cf67 100644 --- a/main-site/server.js +++ b/main-site/server.js @@ -231,6 +231,11 @@ app.use('/build', express.static(path.join(__dirname, 'public/build'), staticCac // Serve static files from the root directory (handles all other GET requests) app.use(express.static(path.join(__dirname), staticCacheOptions)); +// 404 — must come after static middleware +app.use((req, res) => { + res.status(404).sendFile(path.join(__dirname, '404.html')); +}); + app.listen(port, () => { console.log(`Server listening at http://localhost:${port}`); if (process.env.NODE_ENV !== 'production') {