Add plan keys and update signup URLs for Mail plans

keypair34 committed May 13, 2026 at 22:11 UTC 6f7767407a51d04c82dfec4524abddd95496fec5
1 file changed +23 -11
app/mail/page.tsx
+23 -11
@@ -1,6 +1,12 @@
1 import type { Metadata } from "next";
2 import Link from "next/link";
3 -import { FaApple, FaCheckCircle, FaGlobe, FaInbox, FaShieldAlt } from "react-icons/fa";
3 +import {
4 + FaApple,
5 + FaCheckCircle,
6 + FaGlobe,
7 + FaInbox,
8 + FaShieldAlt,
9 +} from "react-icons/fa";
10 import { StructuredData } from "@/components/structured-data";
11 import { absoluteUrl, genPageMetadata } from "../seo";
12
@@ -43,6 +49,7 @@ const offerings = [
49
50 const plans = [
51 {
52 + key: "starter",
53 name: "Starter",
54 price: "$15",
55 period: "/mo",
@@ -57,6 +64,7 @@ const plans = [
64 highlighted: false,
65 },
66 {
67 + key: "business",
68 name: "Business",
69 price: "$49",
70 period: "/mo",
@@ -71,6 +79,7 @@ const plans = [
79 highlighted: true,
80 },
81 {
82 + key: "premium",
83 name: "Premium",
84 price: "$99",
85 period: "/mo",
@@ -151,21 +160,21 @@ export default function MailPage() {
160 name: "smbCloud Mail Starter",
161 price: "15",
162 priceCurrency: "USD",
154 - url: BUSINESS_SIGNUP_URL,
163 + url: `${BUSINESS_SIGNUP_URL}&plan=starter`,
164 },
165 {
166 "@type": "Offer",
167 name: "smbCloud Mail Business",
168 price: "49",
169 priceCurrency: "USD",
161 - url: BUSINESS_SIGNUP_URL,
170 + url: `${BUSINESS_SIGNUP_URL}&plan=business`,
171 },
172 {
173 "@type": "Offer",
174 name: "smbCloud Mail Premium",
175 price: "99",
176 priceCurrency: "USD",
168 - url: BUSINESS_SIGNUP_URL,
177 + url: `${BUSINESS_SIGNUP_URL}&plan=premium`,
178 },
179 ],
180 },
@@ -196,9 +205,10 @@ export default function MailPage() {
205 <p className="mt-6 max-w-2xl text-lg leading-8 text-slate-600 dark:text-slate-400">
206 smbCloud Mail gives you two ways in. Start with a free hosted
207 inbox on <span className="font-semibold">@smbcloud.xyz</span>,
199 - or set up <span className="font-semibold">smbCloud Mail Business</span>
200 - {' '}with your own domain. Either way, you use MailX to read,
201 - reply, and keep moving.
208 + or set up{" "}
209 + <span className="font-semibold">smbCloud Mail Business</span>{" "}
210 + with your own domain. Either way, you use MailX to read, reply,
211 + and keep moving.
212 </p>
213
214 <div className="mt-8 flex flex-col gap-4 sm:flex-row">
@@ -217,8 +227,8 @@ export default function MailPage() {
227 </div>
228
229 <p className="mt-4 text-sm text-slate-500 dark:text-slate-500">
220 - Free personal inboxes live on @smbcloud.xyz. Business inboxes use
221 - your own domain.
230 + Free personal inboxes live on @smbcloud.xyz. Business inboxes
231 + use your own domain.
232 </p>
233 </div>
234
@@ -245,7 +255,9 @@ export default function MailPage() {
255 </li>
256 <li className="flex gap-3">
257 <FaGlobe className="mt-1 h-4 w-4 shrink-0 text-orange-500" />
248 - <span>Android, Linux, and Windows through the Tauri client family</span>
258 + <span>
259 + Android, Linux, and Windows through the Tauri client family
260 + </span>
261 </li>
262 </ul>
263
@@ -413,7 +425,7 @@ export default function MailPage() {
425 </ul>
426
427 <a
416 - href={BUSINESS_SIGNUP_URL}
428 + href={`${BUSINESS_SIGNUP_URL}&plan=${plan.key}`}
429 className={`mt-8 inline-flex w-full items-center justify-center rounded-lg px-5 py-3 text-sm font-semibold transition-colors ${
430 plan.highlighted
431 ? "bg-orange-500 text-white hover:bg-orange-400"