feat(plans): publish honest Free and Pro
CI and Deploy / test (pull_request) Successful in 5m6s
CI and Deploy / deploy (pull_request) Has been skipped

This commit is contained in:
cesnimda
2026-08-15 18:04:18 +02:00
parent a7c25499bb
commit a25c31b93a
26 changed files with 403 additions and 93 deletions
+45
View File
@@ -0,0 +1,45 @@
export type PublicPlanId = "free" | "pro";
export type PublicPlanDefinition = {
id: PublicPlanId;
name: string;
summary: string;
features: readonly string[];
cta: string;
};
// Public copy mirrors the server-owned AccountPlans policy. It describes capabilities only:
// billing supplies commercial terms at checkout when that deployment is configured.
export const PUBLIC_PLANS: readonly PublicPlanDefinition[] = [
{
id: "free",
name: "Free",
summary: "Core job-search organisation without AI generation.",
features: [
"Track applications in table and Kanban views",
"Keep notes, correspondence and documents with each job",
"Edit your Career Profile and CVs manually",
"Use the deterministic CV-to-job match score",
"Export and retain your own data",
],
cta: "Create a Free account",
},
{
id: "pro",
name: "Pro",
summary: "AI assistance and Pro CV themes, with you in control.",
features: [
"Everything in Free",
"AI-assisted CV and cover-letter drafting",
"AI job analysis and application strategy",
"AI interview and follow-up preparation",
"AI-assisted Career Profile import and rewriting",
"Pro CV themes",
],
cta: "Sign in to view Pro",
},
] as const;
export function publicPlan(id: PublicPlanId) {
return PUBLIC_PLANS.find((plan) => plan.id === id)!;
}