Production-tested components from whykusanagi.xyz for galleries,
social links, countdowns, and more.
Gallery System
A complete gallery system with responsive grid layout, category filtering,
and lightbox integration. Perfect for portfolios, image galleries, and showcases.
Filter Bar
Gallery Grid
Mountain Vista
Landscape • Nature
Color Flow
Abstract • Digital
Portrait Study
Portrait • Photography
Forest Path
Landscape • Nature
Fluid Motion
Abstract • Art
Expression
Portrait • Studio
Gallery Variants
.gallery-container.compact - Smaller grid items .gallery-container.large - Larger grid items .gallery-item.square - 1:1 aspect ratio .gallery-item.portrait - 3:4 aspect ratio .gallery-item.landscape - 16:9 aspect ratio
Fullscreen image viewer with keyboard navigation (Arrow keys, Escape),
touch gestures for mobile, and image counter. Automatically integrates
with the gallery system.
Features
Click any gallery image to open lightbox
Arrow keys for navigation
Escape key to close
Swipe gestures on mobile
Click outside image to close
Image counter and captions
Try clicking any image in the gallery above to see the lightbox in action.
<!-- Lightbox is auto-created by gallery.js -->
<!-- Manual API access: -->
<script type="module">
import { initGallery } from '@whykusanagi/corrupted-theme/gallery';
const gallery = initGallery('#my-gallery', {
enableLightbox: true,
enableKeyboard: true,
onLightboxOpen: (image, index) => console.log('Opened:', image),
onLightboxClose: () => console.log('Closed')
});
// Manual control
gallery.openLightbox(0); // Open first image
gallery.closeLightbox(); // Close lightbox
</script>
NSFW Content Blur
Content warning system with blur overlay that reveals on click.
Perfect for galleries with age-restricted content. Automatically
removes blur when opened in lightbox.
Demo (Click to Reveal)
Hidden Content
Click the overlay to reveal
Custom Warning Text
Uses data-warning attribute
Normal Image
No NSFW class applied
<!-- Add nsfw-content class to blur -->
<div class="gallery-item nsfw-content" data-warning="18+ Click to View">
<img src="sensitive-image.jpg" alt="Description">
</div>
<!-- Custom warning text -->
<div class="gallery-item nsfw-content" data-warning="Sensitive Content">
<img src="image.jpg" alt="Description">
</div>
<!-- JavaScript API -->
<script type="module">
import { initGallery } from '@whykusanagi/corrupted-theme/gallery';
const gallery = initGallery('#gallery', {
enableNsfw: true,
nsfwWarning: '18+ Click to View',
onNsfwReveal: (element) => console.log('Revealed:', element)
});
</script>
Social Links List
Link-in-bio style social links layout with profile avatar, name, bio,
and styled link buttons. Perfect for profile pages, link aggregation,
and social showcases.
Demo
@whykusanagi
Digital artist & developer creating corrupted aesthetics.
Building tools for the creative community.
Social Links List
Link-in-bio style social links layout with profile avatar, name, bio, and styled link buttons. Perfect for profile pages, link aggregation, and social showcases.
Demo
@whykusanagi
Digital artist & developer creating corrupted aesthetics. Building tools for the creative community.
Avatar Sizes
.profile-avatar.sm
.profile-avatar
.profile-avatar.lg