Async-Redis

 view release on metacpan or  search on metacpan

examples/pagi-chat/public/index.html  view on Meta::CPAN

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>PAGI Chat - Multi-User Chat Demo</title>
    <link rel="stylesheet" href="/css/style.css">
</head>
<body>
    <!-- Login Screen -->
    <div id="login-screen" class="screen">
        <div class="login-container">
            <div class="login-header">
                <h1>PAGI Chat</h1>
                <p class="subtitle">Multi-User Chat Demo</p>
            </div>
            <form id="login-form">
                <div class="form-group">
                    <label for="username">Choose a username</label>
                    <input type="text" id="username" name="username"
                           placeholder="Enter your name..."
                           maxlength="20"
                           autocomplete="off"
                           required>
                </div>
                <button type="submit" class="btn btn-primary">Join Chat</button>
            </form>
            <div class="pagi-info">
                <p>Powered by <strong>PAGI</strong> + <strong>Async::Redis</strong></p>
                <p class="small">Multi-Worker Redis-Backed Chat</p>
            </div>
        </div>
    </div>

    <!-- Main Chat Screen -->
    <div id="chat-screen" class="screen hidden">
        <div class="chat-layout">
            <!-- Sidebar -->
            <aside class="sidebar">
                <div class="sidebar-header">
                    <h2>PAGI Chat</h2>
                    <button id="theme-toggle" class="btn-icon" title="Toggle theme">
                        <span class="icon-sun">&#9728;</span>
                        <span class="icon-moon hidden">&#9790;</span>
                    </button>
                </div>

                <!-- Connection Status -->
                <div id="connection-status" class="connection-status">
                    <span class="status-dot"></span>
                    <span class="status-text">Connecting...</span>
                </div>

                <!-- User Info -->
                <div class="user-info">
                    <span class="user-avatar" id="user-avatar">?</span>
                    <span class="user-name" id="display-name">Loading...</span>
                </div>

                <!-- Rooms List -->
                <div class="sidebar-section">
                    <div class="section-header">
                        <h3>Rooms</h3>
                        <button id="create-room-btn" class="btn-icon" title="Create room">+</button>



( run in 0.596 second using v1.01-cache-2.11-cpan-39bf76dae61 )