webtricks-tier-pricing-ui

Build interactive tier-based pricing UI with lock/unlock states, progressive disclosure, and cross-slide consistency. Use when building pricing pages, tier selectors, or feature comparison grids. Tags: webtricks, pricing, tiers, SaaS.

7 stars

Best use case

webtricks-tier-pricing-ui is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Build interactive tier-based pricing UI with lock/unlock states, progressive disclosure, and cross-slide consistency. Use when building pricing pages, tier selectors, or feature comparison grids. Tags: webtricks, pricing, tiers, SaaS.

Teams using webtricks-tier-pricing-ui should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/webtricks-tier-pricing-ui/SKILL.md --create-dirs "https://raw.githubusercontent.com/fratilanico/apex-os-bad-boy/main/webtricks-tier-pricing-ui/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/webtricks-tier-pricing-ui/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How webtricks-tier-pricing-ui Compares

Feature / Agentwebtricks-tier-pricing-uiStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Build interactive tier-based pricing UI with lock/unlock states, progressive disclosure, and cross-slide consistency. Use when building pricing pages, tier selectors, or feature comparison grids. Tags: webtricks, pricing, tiers, SaaS.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Tier-Based Pricing UI — WebTricks

Build interactive pricing UIs where deliverables, features, and timelines change based on selected tier. Includes lock/unlock states, tier-aware messaging, and cross-slide consistency.

## When to Apply

- Building pricing pages with multiple tiers
- Creating feature comparison grids
- Building proposal sites where deliverables vary by tier
- Any UI where content visibility depends on a selected plan

## Core Pattern: Tier Selector + Deliverable Grid

### Data Structure

```tsx
type Tier = "foundation" | "production" | "ecosystem";

const DELIVERABLES = [
  {
    icon: Cloud,
    title: "Production Azure VM",
    desc: "Dedicated VM on your tenant. You own the machine.",
    tiers: ["foundation", "production", "ecosystem"] as Tier[],
    phase: "Day 1-2",  // Cross-reference to build timeline
  },
  {
    icon: Shield,
    title: "Security Hardening",
    desc: "SSL/TLS, key rotation, IP whitelisting, audit logging.",
    tiers: ["production", "ecosystem"] as Tier[],  // Not in Foundation
    phase: "Day 5-6",
  },
  // ...
];

const TIER_OPTIONS = [
  { id: "foundation" as Tier, label: "Foundation", price: "$5K" },
  { id: "production" as Tier, label: "Production", price: "$9K" },
  { id: "ecosystem" as Tier, label: "Full Ecosystem", price: "$15K" },
];
```

### Tier Selector Buttons

```tsx
<div className="flex justify-center gap-2 mb-5">
  {TIER_OPTIONS.map((t) => (
    <button
      key={t.id}
      onClick={() => setTier(t.id)}
      className={`px-4 py-2 rounded-lg text-xs font-bold transition-all ${
        tier === t.id
          ? "bg-blue-600 text-white shadow-lg shadow-blue-600/20"
          : "bg-zinc-900 text-zinc-400 hover:text-white border border-zinc-800"
      }`}
    >
      {t.label} · {t.price}
    </button>
  ))}
</div>
```

**CRITICAL:** These MUST be `<button>` elements, not `<span>` or `<div>`. Decorative elements that look like buttons but don't respond to clicks are a major UX failure.

### Lock/Unlock Card Rendering

```tsx
{DELIVERABLES.map((d, i) => {
  const included = d.tiers.includes(tier);
  const lowestTier = d.tiers[0];
  const upgradeTo = lowestTier === "production" ? "Production" : "Ecosystem";

  return (
    <motion.div
      key={d.title}
      animate={{ opacity: included ? 1 : 0.25, scale: included ? 1 : 0.98 }}
      className={`rounded-xl p-5 border transition-colors duration-300 ${
        included
          ? "bg-blue-600/5 border-blue-500/20"
          : "bg-zinc-900/50 border-zinc-800/50"
      }`}
    >
      <div className="flex items-start justify-between mb-3">
        <d.icon className={`w-5 h-5 ${included ? "text-blue-400" : "text-zinc-700"}`} />
        <div className="flex items-center gap-2">
          {/* Phase badge — connects to build timeline */}
          <span className={`text-[9px] font-bold px-2 py-0.5 rounded-full ${
            included ? "text-zinc-500 bg-zinc-800/80" : "text-zinc-700 bg-zinc-800/40"
          }`}>{d.phase}</span>
          {included ? (
            <CheckCircle2 className="w-4 h-4 text-blue-500" />
          ) : (
            <Lock className="w-3.5 h-3.5 text-zinc-700" />
          )}
        </div>
      </div>
      <h3 className={`text-sm font-black mb-1.5 ${included ? "text-white" : "text-zinc-600"}`}>
        {d.title}
      </h3>
      <p className={`text-xs leading-relaxed ${included ? "text-zinc-400" : "text-zinc-700"}`}>
        {d.desc}
      </p>
      {/* Tier-aware upgrade prompt */}
      {!included && (
        <div className="mt-2 text-[10px] font-bold text-zinc-600">
          Upgrade to {upgradeTo} to unlock
        </div>
      )}
    </motion.div>
  );
})}
```

### Counter

```tsx
const includedCount = DELIVERABLES.filter((d) => d.tiers.includes(tier)).length;
// Display: "7 of 15 deliverables included"
```

## Rules

### 1. Tier-Aware Upgrade Text
Don't hardcode "Upgrade to Production to unlock" everywhere. Calculate the correct next tier:
- Foundation viewing Production item → "Upgrade to Production"
- Foundation viewing Ecosystem item → "Upgrade to Ecosystem"
- Production viewing Ecosystem item → "Upgrade to Ecosystem"

### 2. Progressive Visual Feedback
- Foundation: ~40% of cards active → feels like a starter pack
- Production: ~70% active → feels like the sweet spot
- Ecosystem: 100% active → feels complete
- The visual progression should make Production feel like the obvious choice

### 3. Cross-Slide Consistency
If you have a Build Plan slide AND a What You Get slide AND a Pricing slide, the tiers must:
- Show the SAME tier names everywhere
- Use the SAME colors for each tier
- Show consistent deliverables (don't list 7 items on pricing but 15 on deliverables)
- Link build phases to deliverables via phase badges

### 4. Pricing Columns Pattern
```tsx
<div className="grid md:grid-cols-3 gap-4">
  {/* Non-recommended tier */}
  <div className="bg-zinc-900 border border-zinc-800 rounded-2xl p-5">
    <ul>
      {items.map(f => (
        <li className="flex gap-2 text-xs text-zinc-400">
          <CheckCircle2 className="w-3.5 h-3.5 text-zinc-600" />{f}
        </li>
      ))}
    </ul>
  </div>

  {/* Recommended tier — blue accent + badge */}
  <div className="bg-blue-600/5 border border-blue-500/20 ring-1 ring-blue-500/10 rounded-2xl p-5 relative">
    <div className="absolute top-0 right-0 bg-blue-600 text-white px-2.5 py-0.5 rounded-bl-lg rounded-tr-xl text-[9px] font-black uppercase">
      Recommended
    </div>
    {/* Blue checkmarks */}
  </div>
</div>
```

### 5. Support Tier Strategy
Never show only the highest support price. Show tiers:
- **Free:** 30 days included post-build
- **Standard ($500/mo):** Maintenance, troubleshooting, monthly check-in
- **Premium ($1,500/mo):** New skills, governance, SLA, dedicated channel

### 6. Avoid Comparison Traps
Never compare your price directly to a cheaper competitor:
- ❌ "ChatGPT Plus 5 seats = $100/mo" vs "Your agent = $200/mo" (competitor wins on price)
- ✅ "What you get for ~$250/mo: full autonomous agent, API access, your infrastructure"

## Checklist

- [ ] Tier buttons are real `<button>` elements
- [ ] Lock/unlock visuals are clear (opacity + icon + upgrade text)
- [ ] Upgrade text is tier-aware (not hardcoded)
- [ ] Counter shows "X of Y included"
- [ ] Phase badges link deliverables to build timeline
- [ ] Recommended tier has visual emphasis (blue, badge)
- [ ] Support pricing shows tiers, not just the top price
- [ ] No direct competitor price comparisons that backfire

Related Skills

webtricks-browser-qa-audit

7
from fratilanico/apex-os-bad-boy

Audit live websites using Playwright MCP for browser-based QA. Covers accessibility snapshots, screenshot verification, interactive element testing, and tier differentiation audits. Use after deploying web changes to verify they work. Tags: webtricks, QA, testing, playwright, audit.

webtricks-animated-pipeline

7
from fratilanico/apex-os-bad-boy

Build animated data flow pipelines with SVG circuits, traveling dots, and ambient animations using Framer Motion + SVG. Use when visualizing architecture, workflows, API pipelines, or any step-by-step data flow. Tags: webtricks, animation, pipeline, SVG, architecture.

writing-plans

7
from fratilanico/apex-os-bad-boy

Use when you have a spec or requirements for a multi-step task, before touching code

web-design-guidelines

7
from fratilanico/apex-os-bad-boy

Review UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".

verification-before-completion

7
from fratilanico/apex-os-bad-boy

Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always

vercel-react-native-skills

7
from fratilanico/apex-os-bad-boy

React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs.

vercel-react-best-practices

7
from fratilanico/apex-os-bad-boy

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

vercel-composition-patterns

7
from fratilanico/apex-os-bad-boy

React composition patterns that scale. Use when refactoring components with boolean prop proliferation, building flexible component libraries, or designing reusable APIs. Triggers on tasks involving compound components, render props, context providers, or component architecture. Includes React 19 API changes.

ui-ux-pro-max

7
from fratilanico/apex-os-bad-boy

UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 9 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind, shadcn/ui). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient. Integrations: shadcn/ui MCP for component search and examples.

tool-definition-patterns

7
from fratilanico/apex-os-bad-boy

Standards for defining AI agent tools based on Cline's system prompt patterns. Covers parameter typing, documentation, edit formats, safety mechanisms, and operational best practices.

test-driven-development

7
from fratilanico/apex-os-bad-boy

Use when implementing any feature or bugfix, before writing implementation code

systematic-debugging

7
from fratilanico/apex-os-bad-boy

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes