
Security News
Knip Hits 500 Releases with v5.62.0, Improving TypeScript Config Detection and Plugin Integrations
Knip hits 500 releases with v5.62.0, refining TypeScript config detection and updating plugins as monthly npm downloads approach 12M.
vault66-crt-effect
Advanced tools
Give your React app that vintage TV feel with authentic CRT effects - flickering scanlines, sweeping light bars, glowing edges, and all the retro charm you need.
Originally crafted for Vault 66, a Fallout-themed e-commerce project, this library is now a standalone package so you can effortlessly add authentic retro CRT effects to your own apps.
Try the CRT effect live in this interactive CodeSandbox demo
Experiment with scanlines, sweep, glow, flicker, and orientation in real time.
npm install vault66-crt-effect
# or
yarn add vault66-crt-effect
import React from 'react';
import CRTEffect from 'vault66-crt-effect';
import "vault66-crt-effect/dist/vault66-crt-effect.css";
function App() {
return (
<CRTEffect
enabled={true}
sweepDuration={10}
sweepThickness={10}
scanlineOpacity={0.3}
theme="blue"
enableScanlines={true}
enableSweep={true}
enableGlow={true}
glowColor="rgba(0, 132, 255, 0.3)"
enableEdgeGlow={true}
edgeGlowColor="rgba(30, 128, 92, 0.9)"
edgeGlowSize={100}
enableFlicker={true}
>
<div style={{ padding: '20px', fontSize: '24px' }}>
Hello CRT Effect!
</div>
</CRTEffect>
);
}
export default App;
Prop | Type | Default | Purpose |
---|---|---|---|
enabled | boolean | true | Enables or disables the entire CRT effect |
sweepDuration | number | 10 | Duration in seconds for the vertical sweep line animation |
sweepThickness | number | 10 | Height (thickness in pixels) of the sweep line |
sweepStyle | "classic" | "soft" | "classic" | Style of the vertical sweep line: "classic" is a sharp black line, "soft" is a blurred shadow effect |
scanlineOpacity | number (0 to 1) | 0.2 | Opacity of the scanlines |
scanlineColor | string | "rgba(91, 179, 135, 0.2)" | Custom RGBA/RGB scanline color (used only if theme is "custom" ) |
enableScanlines | boolean | true | Shows or hides the scanlines overlay |
scanlineOrientation | "horizontal" | "vertical" | "horizontal" | Orientation of the scanlines: "horizontal" renders lines from top to bottom, "vertical" renders lines from left to right |
enableSweep | boolean | true | Shows or hides the vertical sweep line animation |
theme | "green" | "amber" | "blue" | "custom" | "green" | Predefined scanline color themes (overrides scanlineColor unless custom is used) |
enableGlow | boolean | false | Enables outer glow effect around the container |
glowColor | string | "rgba(0, 255, 128, 0.3)" | Color of the outer glow |
enableEdgeGlow | boolean | false | Enables inset glow effect around edges |
edgeGlowColor | string | "rgba(0, 255, 128, 0.2)" | Color of the inset edge glow |
edgeGlowSize | number | 30 | Size in pixels of the inset edge glow (box-shadow inset size) |
enableFlicker | boolean | false | Enables subtle flicker animation for CRT realism |
flickerIntensity | "low" | "medium" | "high" | "medium" | Controls flicker animation speed and intensity |
glitchMode | boolean | false | Enables shaking/interference glitch animation |
glitchIntensity | "low" | "medium" | "high" | "medium" | Controls glitch animation speed and intensity |
children | React.ReactNode | — | Content to render inside the CRT effect container |
theme
prop to quickly switch between predefined scanline color palettes: "green"
, "amber"
, or "blue"
theme="custom"
and provide your own scanlineColor
as any valid CSS color stringscanlineOpacity
and scanlineOrientation
enableScanlines
sweepDuration
(in seconds) and sweepThickness
(in pixels)sweepStyle
("classic"
or "soft"
)enableGlow
, glowColor
, enableEdgeGlow
, edgeGlowColor
, and edgeGlowSize
enableFlicker
, and adjust its speed and intensity with flickerIntensity
("low"
, "medium"
, or "high"
)glitchMode
, and control glitch speed and intensity with glitchIntensity
("low"
, "medium"
, or "high"
)enabled
propIf your system has “Reduce Motion” enabled, the CRT effect will automatically disable animations like sweep, flicker, and glitch to avoid causing discomfort. Static effects like scanlines and glow will remain visible. No extra setup needed.
This project is licensed under the MIT License - see the LICENSE file for details.
FAQs
A customizable CRT visual effect component for React
The npm package vault66-crt-effect receives a total of 50 weekly downloads. As such, vault66-crt-effect popularity was classified as not popular.
We found that vault66-crt-effect demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Knip hits 500 releases with v5.62.0, refining TypeScript config detection and updating plugins as monthly npm downloads approach 12M.
Security News
The EU Cyber Resilience Act is prompting compliance requests that open source maintainers may not be obligated or equipped to handle.
Security News
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.