🎨 MuizenMesh Webring Widget Demo

Explore different themes and configurations for the React/TypeScript widget. This interactive demo shows all available options for integrating the MuizenMesh Webring into your projects.

📁 Demo Files: View on GitHub | Open Interactive Demo | HTML/CSS Themes Demo

🚀 Quick Start

Copy the widget files to your React project:

npm install react next

# Copy these files to your project:
# - widgets/WebringWidget.tsx
# - widgets/WebringWidget.module.css  
# - widgets/types.ts

🎨 Available Themes

🎯 Default Theme

Clean blue design with classic styling

<WebringWidget title="Community Links" />

🎨 Minimal Theme

Subtle gray styling for minimal designs

<WebringWidget 
  theme="minimal" 
  size="small" 
  showDescription={false}
/>

🌊 Ocean Theme

Blue ocean-inspired colors

<WebringWidget 
  title="MuizenMesh Community"
  theme="ocean" 
  size="large"
/>

🌅 Sunset Theme

Warm orange and yellow colors

<WebringWidget 
  title="Community Sites"
  theme="sunset" 
  showImage={false}
/>

🌙 Dark Theme

Dark background with cyan accents

<WebringWidget 
  title="MuizenMesh Webring"
  theme="dark"
/>

🌸 Tokyo Theme

Japanese-inspired pink and purple colors

<WebringWidget 
  title="Tokyo Webring"
  theme="tokyo"
  size="medium"
/>

🧛 Dracula Theme

Dark purple theme inspired by Dracula colors

<WebringWidget 
  title="Dark Community"
  theme="dracula"
  showImage={false}
/>

🕺 Disco Theme

Retro neon colors with cyan and magenta

<WebringWidget 
  title="Retro Webring"
  theme="disco"
  size="large"
/>

🎲 Random Theme

Randomly selects from all available themes

<WebringWidget 
  title="Surprise Me!"
  theme="random"
/>

📏 Size Variants

  • Small: Compact version perfect for sidebars
  • Medium: Standard size (default)
  • Large: Larger with more padding

🔧 Props

All props are optional with sensible defaults:

interface WebringWidgetProps {
  title?: string;           // Custom title (default: "Webring")
  webringUrl?: string;      // Webring URL (default: "https://meshring.netlify.app")
  theme?: 'default' | 'minimal' | 'ocean' | 'sunset' | 'dark' | 'tokyo' | 'dracula' | 'disco' | 'random';
  size?: 'small' | 'medium' | 'large';
  showImage?: boolean;      // Show surfer logo (default: true)
  showDescription?: boolean; // Show description text (default: true)
  className?: string;       // Additional CSS class
}

📚 Documentation

For complete documentation, installation instructions, and more examples:

🎮 Try the Interactive Demo

See all themes and configurations in action with hover effects and responsive design.

Open Interactive Demo →