Files
pbakaus_impeccable/tests/fixtures/antipatterns/jsx-should-flag.jsx
T
Paul BakausandClaude Opus 4.6 3c9cc86061 Merge CLI into main repo, switch everything to Apache 2.0
Merges the impeccable-detect CLI repo (pbakaus/impeccable-cli@831a6cc)
into this repo. The BSL-1.1 license that motivated the split is gone;
everything is now Apache 2.0.

- Add bin/, src/, detection tests and fixtures from CLI repo
- Merge package.json: name → "impeccable", add bin/exports/files fields
- Internal refs now read from local src/ instead of node_modules/
- Update SPDX headers, NOTICE.md, CLAUDE.md, FAQ, npm README
- Add prepack/postpack scripts for CLI-focused README on npm
- Remove terminal license labels (no longer needed)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 16:50:33 -07:00

57 lines
1.4 KiB
React

// A typical Next.js/React component with anti-patterns
import React from 'react';
import { motion } from 'framer-motion';
export function FeatureCard({ title, description, icon }) {
return (
<div className="border-l-4 border-blue-500 rounded-lg bg-white p-6 shadow-md">
<div className="flex items-center gap-4">
<div className="text-purple-500 text-3xl">{icon}</div>
<h3 className="text-xl font-bold">{title}</h3>
</div>
<p className="text-gray-400 mt-2">{description}</p>
</div>
);
}
export function HeroSection() {
return (
<section className="bg-black py-20 text-center">
<h1
className="text-5xl font-bold bg-gradient-to-r from-purple-400 to-cyan-400 bg-clip-text text-transparent"
>
Welcome to the Future
</h1>
<p className="mt-4 text-gray-400">Build something amazing today</p>
</section>
);
}
export function StatsCard({ value, label }) {
return (
<div
style={{
borderLeft: '4px solid #3b82f6',
borderRadius: '12px',
padding: '16px',
background: '#fff',
}}
>
<span style={{ fontSize: '32px', fontFamily: "'Inter', sans-serif" }}>{value}</span>
<p>{label}</p>
</div>
);
}
export function AnimatedPanel({ children }) {
return (
<motion.div
className="animate-bounce"
style={{ transition: 'width 0.3s ease' }}
>
{children}
</motion.div>
);
}