BlockDex

Components

Registries

Free blocks

Method

BlockDex

Components

Registries

Free blocks

Method

Open API

BlockDex

Components

Registries

Free blocks

Method

Open API

Components/shadcn-glass-ui/rainbow-progress-glass

Rainbow Progress Glass

shadcn-glass-ui/rainbow-progress-glass
FreeComponent

Rainbow Progress Glass component with glass effects

Install it

npx shadcn@latest add https://raw.githubusercontent.com/artyhoo/shadcn-glass-ui-library/main/public/r/rainbow-progress-glass.json

Source

components/glass/specialized/rainbow-progress-glass.tsxraw.githubusercontent.com/artyhoo/shadcn-glass-ui-library/main/public/r/rainbow-progress-glass.json
1// ========================================
2// RAINBOW PROGRESS GLASS COMPONENT
3// Animated rainbow gradient progress bar
4// ========================================
5
6import { forwardRef, type CSSProperties } from 'react';
7import { cn } from '@/lib/utils';
8import '@/glass-theme.css';
9
10export type RainbowProgressSize = 'sm' | 'md' | 'lg' | 'xl';
11
12export interface RainbowProgressGlassProps extends React.HTMLAttributes<HTMLDivElement> {
13 readonly value: number;
14 readonly size?: RainbowProgressSize;
15 readonly showGlow?: boolean;
16}
17
18const sizeClasses: Record<RainbowProgressSize, string> = {
19 sm: 'h-2.5 md:h-2',
20 md: 'h-3.5 md:h-3',
21 lg: 'h-[1.125rem] md:h-4',
22 xl: 'h-6 md:h-5',
23};
24
25export const RainbowProgressGlass = forwardRef<HTMLDivElement, RainbowProgressGlassProps>(
26 ({ value, size = 'lg', showGlow = true, className, ...props }, ref) => {
27 const clampedValue = Math.min(100, Math.max(0, value));
28
29 const trackStyles: CSSProperties = {
30 background: 'var(--progress-bg)',
31 };
32
33 const fillStyles: CSSProperties = {
34 width: `${clampedValue}%`,
35 background: 'var(--rainbow-gradient)',
36 boxShadow: showGlow ? 'var(--rainbow-glow)' : 'none',
37 animation: showGlow ? 'var(--rainbow-animation)' : 'none',
38 };
39
40 return (
41 <div
42 ref={ref}
43 className={cn('rounded-full overflow-hidden', sizeClasses[size], className)}
44 style={trackStyles}
45 role="progressbar"
46 aria-valuenow={clampedValue}
47 aria-valuemin={0}
48 aria-valuemax={100}
49 aria-label={`Rainbow progress: ${clampedValue}%`}
50 {...props}
51 >
52 <div className="h-full rounded-full transition-all duration-1000" style={fillStyles} />
53 </div>
54 );
55 }
56);
57
58RainbowProgressGlass.displayName = 'RainbowProgressGlass';

Facts

Registry
shadcn-glass-ui
Type
registry:component
Access
Free
Files written
0
Licence
Apache-2.0
First indexed
2026-08-02
Last confirmed
today

Go to the source

yhooi2.github.io artyhoo/shadcn-glass-ui-library on GitHub Raw registry item This item as JSON

More from shadcn-glass-ui

All 76 items
Same registry, same kind — the ones you would have found next
ComponentRegistryKindAccessInstallsCommand
Alert Glassalert-glassshadcn-glass-uiComponentsFreeno deps
Animated Background Glassanimated-background-glassshadcn-glass-uiComponentsFreeno deps
Avatar Glassavatar-glassshadcn-glass-uiComponentsFreeno deps
Badge Glassbadge-glassshadcn-glass-uiComponentsFreeno deps
Base Progress Glassbase-progress-glassshadcn-glass-uiComponentsFreeno deps
Button Glassbutton-glassshadcn-glass-uiComponentsFreeno deps
Card Glasscard-glassshadcn-glass-uiComponentsFreeno deps
Checkbox Glasscheckbox-glassshadcn-glass-uiComponentsFreeno deps
BlockDex

Built by

Kynth Studio

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex

BlockDex

Built by

Kynth Studio

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex

BlockDex

Built by

Kynth Studio

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex