diff --git a/apps/marketing/app/globals.css b/apps/marketing/app/globals.css index ef15519..3216705 100644 --- a/apps/marketing/app/globals.css +++ b/apps/marketing/app/globals.css @@ -110,6 +110,42 @@ a { content: ""; } +.hero-labels { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 0.75rem; + margin-bottom: 1.2rem; +} + +.hero-labels .eyebrow { + margin: 0; +} + +.project-status { + display: inline-flex; + align-items: center; + gap: 0.4rem; + padding: 0.3rem 0.65rem; + border: 1px solid rgba(233, 120, 85, 0.42); + border-radius: 999px; + color: #7a321f; + background: rgba(233, 120, 85, 0.14); + font-size: 0.68rem; + font-weight: 800; + letter-spacing: 0.08em; + line-height: 1; + text-transform: uppercase; +} + +.project-status::before { + width: 0.42rem; + height: 0.42rem; + border-radius: 50%; + background: var(--coral); + content: ""; +} + h1, h2, h3, diff --git a/apps/marketing/app/layout.tsx b/apps/marketing/app/layout.tsx index a7757a5..2436808 100644 --- a/apps/marketing/app/layout.tsx +++ b/apps/marketing/app/layout.tsx @@ -2,10 +2,45 @@ import type { Metadata } from "next"; import "./globals.css"; +const siteUrl = "https://techaaroorian.github.io/slotsyncro/"; +const socialImageUrl = + "https://techaaroorian.github.io/slotsyncro/opengraph-image.png"; +const title = "SlotSyncro — Scheduling that finds common ground"; +const description = + "A publicly developed scheduling portfolio project for direct bookings, group polls, and timezone-aware decisions."; + export const metadata: Metadata = { - title: "SlotSyncro — Scheduling that finds common ground", - description: - "A publicly developed scheduling portfolio project for direct bookings, group polls, and timezone-aware decisions.", + metadataBase: new URL(siteUrl), + title, + description, + applicationName: "SlotSyncro", + authors: [{ name: "Janarthanan Soundhararajan" }], + creator: "Janarthanan Soundhararajan", + alternates: { + canonical: siteUrl, + }, + openGraph: { + title, + description, + url: siteUrl, + siteName: "SlotSyncro", + locale: "en_US", + type: "website", + images: [ + { + url: socialImageUrl, + width: 1200, + height: 627, + alt: "SlotSyncro scheduling project with a group availability poll preview", + }, + ], + }, + twitter: { + card: "summary_large_image", + title, + description, + images: [socialImageUrl], + }, }; export default function RootLayout({ diff --git a/apps/marketing/app/page.tsx b/apps/marketing/app/page.tsx index 1c98681..e72e1ee 100644 --- a/apps/marketing/app/page.tsx +++ b/apps/marketing/app/page.tsx @@ -42,7 +42,10 @@ export default function MarketingHomePage() {
-

Public portfolio project

+
+

Public portfolio project

+ In progress +

Find the time that works.

SlotSyncro brings direct bookings and group availability polls into diff --git a/apps/marketing/public/opengraph-image.png b/apps/marketing/public/opengraph-image.png new file mode 100644 index 0000000..c4cb943 Binary files /dev/null and b/apps/marketing/public/opengraph-image.png differ