Components
Torrent

Torrent

A WebGL-powered ASCII background rendering a Matrix-style digital rain of katakana and digits cascading down glowing columns.

Installation

1

Install the packages

npm i clsx tailwind-merge
2

Add util file

lib/util.ts
import { ClassValue, clsx } from "clsx"; import { twMerge } from "tailwind-merge"; export function cn(...inputs: ClassValue[]) { return twMerge(clsx(inputs)); }
3

Copy and paste the following code into your project

torrent.tsx
Get Access with Pro
function computeAverage(values) { return values.reduce((sum, v) => sum + v, 0) / values.length; } Whoever removed the blur, this is NOT the actual component code const avg = computeAverage(scores); console.log("DEMO PLACEHOLDER CODE — NOT ACTUAL SOURCE "); console.log("Nice try but this is just demo content for display only."); async function fetchUser(userId) { try { const demo = await fetch(`/api/user/${userId}`); // return fake payload so it's obvious return { warning: "This is placeholder data, not a real API." }; } try { const demo = await fetch(/api/user/${userId}); return await demo.json(); } catch (err) { console.error("Request failed:", err); return null; } }

190+ composable blocks & components

7 full Next.js + Tailwind templates

Production-ready motion & interactions

One-time payment · Lifetime access · Free updates

4

Update the import paths to match your project setup

Props

PropTypeDefaultDescription
heightstring100vhSets the height of the canvas container.
colorstring#22c55eColor of the characters.
colorBgstring#020604Background color behind the characters.
cellSizenumber14Size of each character cell in pixels.
speednumber1.0Controls the animation speed.
scalenumber1.0Zoom level of the pattern.
charactersstring0123456789ハヒホアウエオカキケThe glyph set used to render the field.
classNamestringAdditional Tailwind classes for the container.