diff --git a/apps/web/app/api/[...route]/route.ts b/apps/web/app/api/[...route]/route.ts index 401725a..7fd6f7e 100644 --- a/apps/web/app/api/[...route]/route.ts +++ b/apps/web/app/api/[...route]/route.ts @@ -19,6 +19,7 @@ import { PRICING_PLANS, PricingPlanInterval, PricingPlanTier, + TRIAL_PERIOD_DAYS, } from "@/lib/pricing.constants"; const UnauthorizedError = (c: Context) => { @@ -164,7 +165,7 @@ const api = new Hono() success_url: `${BASE_URL}/account?success=true`, cancel_url: `${BASE_URL}/account?canceled=true`, subscription_data: { - trial_period_days: 14, + trial_period_days: TRIAL_PERIOD_DAYS, metadata: { plan_id: selectedPlan.id, }, diff --git a/apps/web/app/contact/page.tsx b/apps/web/app/contact/page.tsx new file mode 100644 index 0000000..c619a86 --- /dev/null +++ b/apps/web/app/contact/page.tsx @@ -0,0 +1,28 @@ +import Footer from "@/components/Footer"; +import Navigation from "@/components/marketing/Navigation"; + +export default function ContactPage() { + return ( +
+ +
+

Contact

+

+ If you have any questions, feedback, or issues, please feel free to + contact us by email. +

+

+ Email: support@zenblog.com +

+

+ Twitter: @zenbloghq +

+

+ Please make sure to include all relevant information so we can get + back to you. +

+
+
+ ); +} diff --git a/apps/web/src/components/Footer.tsx b/apps/web/src/components/Footer.tsx index 119bc3f..03b59a5 100644 --- a/apps/web/src/components/Footer.tsx +++ b/apps/web/src/components/Footer.tsx @@ -19,6 +19,14 @@ const Footer = (props: Props) => { label: "Privacy", href: "/privacy", }, + { + label: "Contact", + href: "/contact", + }, + { + label: "Pricing", + href: "/pricing", + }, ]; return ( diff --git a/apps/web/src/lib/pricing.constants.ts b/apps/web/src/lib/pricing.constants.ts index 399cbd3..13bf5d9 100644 --- a/apps/web/src/lib/pricing.constants.ts +++ b/apps/web/src/lib/pricing.constants.ts @@ -1,5 +1,7 @@ import { z } from "zod"; +export const TRIAL_PERIOD_DAYS = 30; + export const PricingPlanTier = z.enum(["hobby", "pro"]); export type PricingPlanTierType = z.infer; export const isPricingPlanTier = ( @@ -33,7 +35,7 @@ export const PRICING_PLANS: PricingPlan[] = [ title: "Zenblog Hobby Plan", description: "For personal blogs and small projects", monthlyPrice: 9, - yearlyPrice: 72, + yearlyPrice: 72, // will be divided by 12 in pricing page features: [ "1 blog", "Unlimited posts",