help@rskworld.in +91 93305 39277
RSK World
  • Home
  • Development
    • Web Development
    • Mobile Apps
    • Software
    • Games
    • Project
  • Technologies
    • Data Science
    • AI Development
    • Cloud Development
    • Blockchain
    • Cyber Security
    • Dev Tools
    • Testing Tools
  • Blog
  • About
  • Contact

Theme Settings

Color Scheme
Display Options
Font Size
100%
Back to Project
RSK World
news-summary-bot
/
templates
RSK World
news-summary-bot
News Summary Bot - Python + Flask + OpenAI + NewsAPI + AI Summarization + Real-time News + News Aggregation
templates
  • admin
  • demo.html5.8 KB
  • index.html2.9 KB
  • login.html3.8 KB
  • register.html4.7 KB
login.htmldemo.html
templates/login.html
Raw Download
Find: Go to:
<!DOCTYPE html>
<html lang="en">
<!--
    User Login - News Summary Bot
    Developer: Molla Samser
    Design & Testing: Rima Khatun
    Company: RSK World
    Year: 2026
    Website: https://rskworld.in
-->
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Login - News Summary Bot</title>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
    <link href="https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
    <style>
        .login-container {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        }
        
        .login-form {
            background: var(--glass);
            backdrop-filter: blur(10px);
            border: 1px solid var(--glass-border);
            border-radius: 20px;
            padding: 3rem;
            width: 100%;
            max-width: 400px;
            box-shadow: var(--shadow);
        }
        
        .login-header {
            text-align: center;
            margin-bottom: 2rem;
        }
        
        .login-header i {
            font-size: 3rem;
            color: var(--primary);
            margin-bottom: 1rem;
        }
        
        .register-link {
            text-align: center;
            margin-top: 1.5rem;
        }
        
        .register-link a {
            color: var(--primary);
            text-decoration: none;
        }
        
        .register-link a:hover {
            text-decoration: underline;
        }
    </style>
</head>
<body>
    <div class="login-container">
        <div class="login-form">
            <div class="login-header">
                <i class="fas fa-newspaper"></i>
                <h1>Welcome Back</h1>
                <p>Login to your News Summary Bot account</p>
            </div>
            
            {% with messages = get_flashed_messages(with_categories=true) %}
                {% if messages %}
                    {% for category, message in messages %}
                        <div class="alert alert-{{ category }}">
                            {{ message }}
                        </div>
                    {% endfor %}
                {% endif %}
            {% endwith %}
            
            <form method="POST">
                <div class="form-group">
                    <label for="username">Username or Email</label>
                    <input type="text" id="username" name="username" placeholder="Enter username or email" required>
                </div>
                
                <div class="form-group">
                    <label for="password">Password</label>
                    <input type="password" id="password" name="password" placeholder="Enter password" required>
                </div>
                
                <button type="submit" class="btn-premium" style="width: 100%;">
                    <i class="fas fa-sign-in-alt"></i> Login
                </button>
            </form>
            
            <div class="register-link">
                <p>Don't have an account? <a href="{{ url_for('register') }}">Register here</a></p>
                <p><a href="{{ url_for('home') }}">← Back to Home</a></p>
            </div>
        </div>
    </div>
    
    <footer>
        <p>&copy; 2026 <a href="https://rskworld.in">RSK World</a>. All rights reserved.</p>
        <p>Developed by Molla Samser | Design & Testing by Rima Khatun</p>
    </footer>
</body>
</html>
112 lines•3.8 KB
markup
templates/demo.html
Raw Download
Find: Go to:
<!DOCTYPE html>
<html lang="en">
<!--
    News Summary Bot - Demo Interface
    Developer: Molla Samser
    Design & Testing: Rima Khatun
    Company: RSK World
    Year: 2026
    Website: https://rskworld.in
-->

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>News Bot Dashboard - RSK World</title>
    <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
    <link href="https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap" rel="stylesheet">
</head>

<body>
    <nav>
        <div class="logo">
            <a href="/" style="text-decoration: none; color: inherit;"><i class="fas fa-newspaper text-danger"></i> RSK
                NEWS BOT</a>
        </div>
        <div class="search-bar" style="display: flex; align-items: center;">
            <button id="voiceSearchBtn" onclick="toggleVoiceSearch()" class="voice-btn" title="Voice Search"><i
                    class="fas fa-microphone"></i></button>
            <input type="text" id="newsQuery" placeholder="Search news..."
                style="padding: 0.5rem 1rem; border-radius: 20px; border: none; background: var(--glass); color: white; border: 1px solid var(--glass-border);">
            <button onclick="searchNews()" class="btn-premium"
                style="padding: 0.5rem 1.5rem; margin-left: 10px;">Search</button>
        </div>
    </nav>

    <div class="dashboard-container">
        <aside class="sidebar glass-card">
            <h3>Categories</h3>
            <ul class="category-list">
                <li class="category-item active" onclick="loadCategory('general')"><i class="fas fa-globe"></i> General
                </li>
                <li class="category-item" onclick="loadCategory('business')"><i class="fas fa-briefcase"></i> Business
                </li>
                <li class="category-item" onclick="loadCategory('technology')"><i class="fas fa-laptop-code"></i>
                    Technology</li>
                <li class="category-item" onclick="loadCategory('entertainment')"><i class="fas fa-film"></i>
                    Entertainment</li>
                <li class="category-item" onclick="loadCategory('health')"><i class="fas fa-heartbeat"></i> Health</li>
                <li class="category-item" onclick="loadCategory('science')"><i class="fas fa-flask"></i> Science</li>
                <li class="category-item" onclick="loadCategory('sports')"><i class="fas fa-running"></i> Sports</li>
                <li class="category-item" onclick="loadCategory('bookmarks')"
                    style="border-top: 1px solid var(--glass-border); margin-top: 10px; padding-top: 10px;"><i
                        class="fas fa-bookmark"></i> My Favorites</li>
            </ul>

            <div style="margin-top: 2rem;">
                <h3 style="margin-bottom: 1rem;"><span class="live-dot"></span>Trending Now</h3>
                <div id="trending-topics" class="trending-container">
                    <!-- Trends will be injected here -->
                    <span class="trend-tag">Market</span>
                    <span class="trend-tag">AI Tech</span>
                    <span class="trend-tag">Global</span>
                </div>
            </div>
        </aside>

        <main>
            <div id="news-grid" class="news-grid">
                <!-- News items will be injected here -->
                <div class="glass-card" style="grid-column: 1/-1; text-align: center;">
                    <span class="loader"></span>
                    <p>Fetching latest news headlines...</p>
                </div>
            </div>
        </main>
    </div>

    <div id="summaryModal" class="summary-modal">
        <div class="modal-content glass-card">
            <div style="display: flex; justify-content: space-between; align-items: center;">
                <h2 id="modal-title">AI Summary</h2>
                <div style="display: flex; gap: 10px; align-items: center;">
                    <select id="summaryLanguage" onchange="regenerateSummary()"
                        style="background: var(--glass); color: white; border: 1px solid var(--glass-border); border-radius: 5px; padding: 5px;">
                        <option value="English">English</option>
                        <option value="Hindi">Hindi</option>
                        <option value="Spanish">Spanish</option>
                        <option value="French">French</option>
                        <option value="German">German</option>
                    </select>
                    <button onclick="speakSummary()" class="btn-premium" style="padding: 5px 10px; font-size: 0.8rem;"
                        title="Read Aloud"><i class="fas fa-volume-up"></i></button>
                </div>
            </div>
            <hr style="margin: 1rem 0; border: none; border-top: 1px solid var(--glass-border);">
            <div id="summary-text" style="color: #ddd; max-height: 300px; overflow-y: auto; line-height: 1.8;">
                <span class="loader"></span> Generating AI Summary...
            </div>
            <div style="margin-top: 2rem; display: flex; gap: 10px;">
                <button onclick="exportSummaryPDF()" class="btn-premium"><i class="fas fa-file-pdf"></i> Export
                    PDF</button>
                <button onclick="closeModal()" class="btn-premium" style="background: var(--glass);">Close</button>
            </div>
        </div>
    </div>

    <!-- jsPDF Library for Export -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js"></script>
    <script src="{{ url_for('static', filename='js/script.js') }}"></script>
</body>

</html>
113 lines•5.8 KB
markup
🚀 Support RSK World

Subscribe to our YouTube channel for latest tutorials & updates!



Click subscribe & support our work ❤️

About RSK World

Founded by Molla Samser, with Designer & Tester Rima Khatun, RSK World is your one-stop destination for free programming resources, source code, and development tools.

Founder: Molla Samser
Designer & Tester: Rima Khatun

Development

  • Game Development
  • Web Development
  • Mobile Development
  • AI Development
  • Development Tools

Legal

  • Terms & Conditions
  • Privacy Policy
  • Disclaimer

Contact Info

Nutanhat, Mongolkote
Purba Burdwan, West Bengal
India, 713147

+91 93305 39277

hello@rskworld.in
support@rskworld.in

© 2026 RSK World. All rights reserved.

Content used for educational purposes only. View Disclaimer