Skip to content

astrutt/wp-irc-plugin

Repository files navigation

2600net Web IRC Client (WP Plugin)

A high-performance, lightweight, and feature-rich Web IRC client built as a WordPress plugin. Designed specifically for the 2600net IRC network (irc.2600.net), it leverages modern WebSockets (WSS) and CSS variables for a seamless, themeable experience. For more information, visit scuttled.net.

Features

🖥️ Interface & UX

  • Tabbed Buffer Management: Separate tabs for network messages, channels, and private queries.
  • Smart Routing: Auto-switches tabs for active conversations and /join commands.
  • Dynamic Sidebar: Automatically hides the user list on the network tab and private queries to maximize chat real estate.
  • Tab Completion: Fast nickname and command completion via the Tab key.
  • Persistent Input History: Cycle through previous messages/commands using Up/Down arrows.
  • Nick Prompt: Displays your current active identity in the input bar with dynamic color syncing.
  • Live Counters: Real-time Op and Total User counts at the top of the sidebar.
  • Graceful Connections: Automatically handles "Nickname in use" errors during login by appending random digits to ensure connection success.

🎨 Customization (User Preferences)

  • Themes: Instant switching between True Dark, Light, and Solarized Dark.
  • Colored Nicknames: Name-hashing engine assigns unique, theme-aware HSL colors to users.
  • Inline Media Previews: Optional thumbnails for image links (.jpg, .png, .gif, .webp).
  • Message Filters: Clean up chat buffers by optionally hiding Join/Part/Quit messages and Nick changes.
  • Auto-Join: Define a comma-separated list of favorite channels to join on connect.
  • Auto-Reconnect: Configurable connection drop handling with a customizable fallback delay timer.
  • Remember Me: Persistent local storage for Nickname and Channel selections (securely purges preferences when unchecked).

🛠️ Advanced IRC Support

  • Full Command Set: Support for /join, /part, /msg, /nick, /topic, /whois, /me, /clear, /quote, /hop, and /dehop.
  • CTCP & SysInfo: Automated background replies, active querying (/ping <nick>, /version <nick>, /ctcp), and a /sysinfo command for hardware/OS detection.
  • Smart WHOIS: Single-click nickname WHOIS with formatted, human-readable responses.

Installation & Deployment

Deployment is handled via the automated install-irc-plugin.sh script.

  1. Edit the script for your websocket url: nano install-irc-plugin.sh
  2. Ensure the script has execution permissions: chmod +x install-irc-plugin.sh
  3. Run the script, optionally providing your WordPress plugin path: ./install-irc-plugin.sh /var/www/your-site/wp-content/plugins
  4. Activate the 2600net Web IRC Client in the WordPress Admin Dashboard.
  5. Add the shortcode [web_irc] to any page or post.
  6. Add apache proxying for WebIRCGateway WebSocket: Example to Proxy WebSocket traffic directly to the local daemon ProxyPass /webirc/websocket/ wss://127.0.0.1:8443/webirc/websocket/ ProxyPassReverse /webirc/websocket/ wss://127.0.0.1:8443/webirc/websocket/

Requirements

  • Gateway: A WebSocket-to-IRC gateway (e.g.,webircgateway).
  • Environment: LAMP/LEMP stack with WordPress 5.0+.

Credits & Authors

  • 2600net
  • r0d3nt
  • Gemini Pro

Releases

No releases published

Packages

 
 
 

Contributors

Languages