kill-ai-slop
Kill AI Slop is a multilingual field guide and agent skill that catalogues 33 common AI-generated design tells with interactive before-after demos, and provides a tool to scan and fix web projects.
It delivers a native-feeling variable backdrop blur entirely from public Expo APIs, works in Expo Go on iOS, and avoids any native module requirements or database lock-in, making it easy to adopt.
Beautiful, copy-pasteable components for Expo and React Native.
Components live in your app after installation. There is no runtime
beautiful-expo package and no design-system lock-in.
A JavaScript-only progressive backdrop blur built from public Expo APIs. It includes:
ProgressiveBlur for custom top or bottom effectsProgressiveBlurHeader with safe-area and scroll-reveal supportProgressiveBlurFooter for standard or floating bottom barsInstall it directly from the GitHub registry:
npx shadcn@latest add davidmokos/beautiful-expo/progressive-blur
The command copies src/components/ui/progressive-blur.tsx into your project
and installs its Expo-compatible JavaScript dependencies. It does not require
Tailwind, NativeWind, Swift, or a development build. Expo Go is supported on
iOS.
Render scrolling content first and the blur after it. Native BlurView needs
to be mounted after dynamic content to sample that content correctly.
This is the recommended setup for a transparent header that reveals its blur as content scrolls underneath:
import { Text, View } from 'react-native';
import Animated from 'react-native-reanimated';
import {
ProgressiveBlurHeader,
useProgressiveBlurHeaderHeight,
useProgressiveBlurScroll,
} from '@/components/ui/progressive-blur';
export default function Screen() {
const headerInset = useProgressiveBlurHeaderHeight();
const { scrollY, onScroll } = useProgressiveBlurScroll();
return (
{/* Page content */}
Account
);
}
Without scrollY, the header blur stays visible at all times.
floating uses the compact bottom-safe-area placement from the verified
Revolut-style example:
import {
ProgressiveBlurFooter,
useProgressiveBlurFooterHeight,
} from '@/components/ui/progressive-blur';
const footerInset = useProgressiveBlurFooterHeight(58, true);
{/* Page content */}
{/* Tab bar content */}
;
Omit floating for a footer that sits directly above the bottom safe area.
The header and footer share the values verified in the example app:
| Prop | Default | Purpose | |
Beautiful, copy-pasteable Expo components
Similar projects matched by category, topics, and programming language.
Kill AI Slop is a multilingual field guide and agent skill that catalogues 33 common AI-generated design tells with interactive before-after demos, and provides a tool to scan and fix web projects.

React is a JavaScript library for building user interfaces with declarative, component-based, and cross-platform design.
Cindy is an open-source AI agent that runs locally on your machine, integrates multiple AI harnesses and models, and provides memory, skills, and automation to perform real work in your projects and apps.