Files
jobtrackingapp/job-tracker-ui/src/planCatalog.ts
T
cesnimda a25c31b93a
CI and Deploy / test (pull_request) Successful in 5m6s
CI and Deploy / deploy (pull_request) Has been skipped
feat(plans): publish honest Free and Pro
2026-08-15 18:04:18 +02:00

46 lines
1.4 KiB
TypeScript

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)!;
}