discover / index.html
nirjharrr's picture
make me an interactive page which combines multiple sources for a news and provides like perplixity discover feed qalso make sure its working and deply ready - Initial Deployment
b3d5b6a verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>News Nexus - Discover & Explore</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<script>
tailwind.config = {
theme: {
extend: {
colors: {
primary: '#3B82F6',
secondary: '#10B981',
dark: '#1F2937',
light: '#F3F4F6',
}
}
}
}
</script>
<style>
.news-card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
}
.skeleton {
animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
</style>
</head>
<body class="bg-gray-50 min-h-screen">
<!-- Header -->
<header class="bg-white shadow-sm sticky top-0 z-10">
<div class="container mx-auto px-4 py-3 flex items-center justify-between">
<div class="flex items-center space-x-2">
<i class="fas fa-newspaper text-primary text-2xl"></i>
<h1 class="text-xl font-bold text-dark">News Nexus</h1>
</div>
<div class="relative w-full max-w-md mx-4">
<input type="text" placeholder="Search news, topics, sources..."
class="w-full px-4 py-2 rounded-full border border-gray-300 focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent">
<button class="absolute right-3 top-2 text-gray-400 hover:text-primary">
<i class="fas fa-search"></i>
</button>
</div>
<div class="flex items-center space-x-4">
<button class="p-2 rounded-full hover:bg-gray-100">
<i class="fas fa-bookmark text-gray-600"></i>
</button>
<button class="p-2 rounded-full hover:bg-gray-100">
<i class="fas fa-cog text-gray-600"></i>
</button>
<div class="w-8 h-8 rounded-full bg-primary flex items-center justify-center text-white font-semibold">
U
</div>
</div>
</div>
</header>
<!-- Main Content -->
<main class="container mx-auto px-4 py-6">
<!-- Categories -->
<div class="mb-6 overflow-x-auto">
<div class="flex space-x-2 pb-2">
<button class="category-btn px-4 py-2 rounded-full bg-primary text-white font-medium">For You</button>
<button class="category-btn px-4 py-2 rounded-full bg-gray-200 hover:bg-gray-300 font-medium">World</button>
<button class="category-btn px-4 py-2 rounded-full bg-gray-200 hover:bg-gray-300 font-medium">Technology</button>
<button class="category-btn px-4 py-2 rounded-full bg-gray-200 hover:bg-gray-300 font-medium">Business</button>
<button class="category-btn px-4 py-2 rounded-full bg-gray-200 hover:bg-gray-300 font-medium">Science</button>
<button class="category-btn px-4 py-2 rounded-full bg-gray-200 hover:bg-gray-300 font-medium">Health</button>
<button class="category-btn px-4 py-2 rounded-full bg-gray-200 hover:bg-gray-300 font-medium">Entertainment</button>
<button class="category-btn px-4 py-2 rounded-full bg-gray-200 hover:bg-gray-300 font-medium">Sports</button>
</div>
</div>
<!-- Discovery Feed Section -->
<section class="mb-8">
<div class="flex items-center justify-between mb-4">
<h2 class="text-2xl font-bold text-dark">Discover Feed</h2>
<button class="text-primary font-medium flex items-center">
<span>See all</span>
<i class="fas fa-chevron-right ml-1 text-sm"></i>
</button>
</div>
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
<!-- Discovery Card 1 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="relative">
<img src="https://source.unsplash.com/random/600x400/?technology" alt="Tech news" class="w-full h-48 object-cover">
<div class="absolute top-2 right-2 bg-white/80 backdrop-blur-sm rounded-full p-2">
<i class="fas fa-bookmark text-gray-500 hover:text-primary cursor-pointer"></i>
</div>
</div>
<div class="p-5">
<div class="flex items-center space-x-2 mb-2">
<span class="text-xs font-medium px-2 py-1 bg-blue-100 text-primary rounded-full">Technology</span>
<span class="text-xs text-gray-500">5 min read</span>
</div>
<h3 class="font-bold text-lg mb-2">The Future of AI: What to Expect in 2024</h3>
<p class="text-gray-600 mb-4">Experts predict major breakthroughs in generative AI and its applications across industries.</p>
<div class="flex items-center justify-between">
<div class="flex items-center space-x-2">
<div class="w-6 h-6 rounded-full bg-gray-300"></div>
<span class="text-sm text-gray-700">Tech Insights</span>
</div>
<span class="text-xs text-gray-500">2 hours ago</span>
</div>
</div>
</div>
<!-- Discovery Card 2 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="relative">
<img src="https://source.unsplash.com/random/600x400/?business" alt="Business news" class="w-full h-48 object-cover">
<div class="absolute top-2 right-2 bg-white/80 backdrop-blur-sm rounded-full p-2">
<i class="fas fa-bookmark text-gray-500 hover:text-primary cursor-pointer"></i>
</div>
</div>
<div class="p-5">
<div class="flex items-center space-x-2 mb-2">
<span class="text-xs font-medium px-2 py-1 bg-green-100 text-secondary rounded-full">Business</span>
<span class="text-xs text-gray-500">7 min read</span>
</div>
<h3 class="font-bold text-lg mb-2">Global Markets React to New Economic Policies</h3>
<p class="text-gray-600 mb-4">Central banks worldwide implement coordinated measures to stabilize inflation rates.</p>
<div class="flex items-center justify-between">
<div class="flex items-center space-x-2">
<div class="w-6 h-6 rounded-full bg-gray-300"></div>
<span class="text-sm text-gray-700">Financial Times</span>
</div>
<span class="text-xs text-gray-500">4 hours ago</span>
</div>
</div>
</div>
<!-- Discovery Card 3 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="relative">
<img src="https://source.unsplash.com/random/600x400/?science" alt="Science news" class="w-full h-48 object-cover">
<div class="absolute top-2 right-2 bg-white/80 backdrop-blur-sm rounded-full p-2">
<i class="fas fa-bookmark text-gray-500 hover:text-primary cursor-pointer"></i>
</div>
</div>
<div class="p-5">
<div class="flex items-center space-x-2 mb-2">
<span class="text-xs font-medium px-2 py-1 bg-purple-100 text-purple-600 rounded-full">Science</span>
<span class="text-xs text-gray-500">10 min read</span>
</div>
<h3 class="font-bold text-lg mb-2">Breakthrough in Quantum Computing Announced</h3>
<p class="text-gray-600 mb-4">Researchers achieve quantum supremacy with new 128-qubit processor, opening doors to new possibilities.</p>
<div class="flex items-center justify-between">
<div class="flex items-center space-x-2">
<div class="w-6 h-6 rounded-full bg-gray-300"></div>
<span class="text-sm text-gray-700">Science Daily</span>
</div>
<span class="text-xs text-gray-500">6 hours ago</span>
</div>
</div>
</div>
</div>
</section>
<!-- Trending Now Section -->
<section class="mb-8">
<div class="flex items-center justify-between mb-4">
<h2 class="text-2xl font-bold text-dark">Trending Now</h2>
<button class="text-primary font-medium flex items-center">
<span>View more</span>
<i class="fas fa-chevron-right ml-1 text-sm"></i>
</button>
</div>
<div class="grid grid-cols-1 md:grid-cols-3 gap-6">
<!-- Trending Card 1 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300 md:col-span-2">
<div class="md:flex">
<div class="md:flex-shrink-0 md:w-1/2">
<img src="https://source.unsplash.com/random/800x600/?politics" alt="Political news" class="w-full h-full object-cover">
</div>
<div class="p-6 md:w-1/2">
<div class="flex items-center space-x-2 mb-3">
<span class="text-xs font-medium px-2 py-1 bg-red-100 text-red-600 rounded-full">Politics</span>
<span class="text-xs text-gray-500">12 min read</span>
</div>
<h3 class="font-bold text-xl mb-3">Global Summit Addresses Climate Change Crisis</h3>
<p class="text-gray-600 mb-4">World leaders gather to negotiate new climate agreements as scientists warn of irreversible damage.</p>
<div class="flex items-center justify-between">
<div class="flex items-center space-x-2">
<div class="w-6 h-6 rounded-full bg-gray-300"></div>
<span class="text-sm text-gray-700">Global News</span>
</div>
<span class="text-xs text-gray-500">3 hours ago</span>
</div>
</div>
</div>
</div>
<!-- Trending Card 2 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="p-5 h-full flex flex-col">
<div class="flex items-center space-x-2 mb-3">
<span class="text-xs font-medium px-2 py-1 bg-yellow-100 text-yellow-600 rounded-full">Entertainment</span>
<span class="text-xs text-gray-500">8 min read</span>
</div>
<h3 class="font-bold text-xl mb-3">Major Streaming Platform Announces Price Hike</h3>
<p class="text-gray-600 mb-4 flex-grow">Subscribers react as monthly fees increase by 20%, with new ad-supported tier introduced.</p>
<div class="flex items-center justify-between">
<div class="flex items-center space-x-2">
<div class="w-6 h-6 rounded-full bg-gray-300"></div>
<span class="text-sm text-gray-700">Entertainment Weekly</span>
</div>
<span class="text-xs text-gray-500">5 hours ago</span>
</div>
</div>
</div>
</div>
</section>
<!-- News Sources Grid -->
<section>
<div class="flex items-center justify-between mb-4">
<h2 class="text-2xl font-bold text-dark">From Your Sources</h2>
<div class="flex items-center space-x-4">
<button class="text-primary font-medium flex items-center">
<span>Manage sources</span>
</button>
<button class="text-primary font-medium flex items-center">
<span>See all</span>
<i class="fas fa-chevron-right ml-1 text-sm"></i>
</button>
</div>
</div>
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6">
<!-- Source Card 1 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="p-5">
<div class="flex items-center space-x-3 mb-4">
<div class="w-10 h-10 rounded-full bg-blue-100 flex items-center justify-center">
<i class="fas fa-globe text-blue-500"></i>
</div>
<h3 class="font-bold">BBC News</h3>
</div>
<p class="text-gray-600 mb-4">Latest updates from around the world with trusted reporting.</p>
<button class="w-full py-2 bg-gray-100 hover:bg-gray-200 rounded-lg text-sm font-medium transition-colors">
View latest
</button>
</div>
</div>
<!-- Source Card 2 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="p-5">
<div class="flex items-center space-x-3 mb-4">
<div class="w-10 h-10 rounded-full bg-green-100 flex items-center justify-center">
<i class="fas fa-chart-line text-green-500"></i>
</div>
<h3 class="font-bold">Bloomberg</h3>
</div>
<p class="text-gray-600 mb-4">Financial news, stock markets, and business insights.</p>
<button class="w-full py-2 bg-gray-100 hover:bg-gray-200 rounded-lg text-sm font-medium transition-colors">
View latest
</button>
</div>
</div>
<!-- Source Card 3 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="p-5">
<div class="flex items-center space-x-3 mb-4">
<div class="w-10 h-10 rounded-full bg-red-100 flex items-center justify-center">
<i class="fas fa-flask text-red-500"></i>
</div>
<h3 class="font-bold">Nature</h3>
</div>
<p class="text-gray-600 mb-4">Leading scientific research and discoveries.</p>
<button class="w-full py-2 bg-gray-100 hover:bg-gray-200 rounded-lg text-sm font-medium transition-colors">
View latest
</button>
</div>
</div>
<!-- Source Card 4 -->
<div class="bg-white rounded-xl shadow-md overflow-hidden news-card transition-all duration-300">
<div class="p-5">
<div class="flex items-center space-x-3 mb-4">
<div class="w-10 h-10 rounded-full bg-purple-100 flex items-center justify-center">
<i class="fas fa-microchip text-purple-500"></i>
</div>
<h3 class="font-bold">TechCrunch</h3>
</div>
<p class="text-gray-600 mb-4">Breaking tech news and startup coverage.</p>
<button class="w-full py-2 bg-gray-100 hover:bg-gray-200 rounded-lg text-sm font-medium transition-colors">
View latest
</button>
</div>
</div>
</div>
</section>
</main>
<!-- Footer -->
<footer class="bg-dark text-white py-8">
<div class="container mx-auto px-4">
<div class="grid grid-cols-1 md:grid-cols-4 gap-8">
<div>
<h3 class="text-lg font-semibold mb-4">News Nexus</h3>
<p class="text-gray-400">Your personalized news discovery platform, bringing together the best sources in one place.</p>
</div>
<div>
<h4 class="font-medium mb-4">Categories</h4>
<ul class="space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white">World</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Technology</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Business</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Science</a></li>
</ul>
</div>
<div>
<h4 class="font-medium mb-4">Company</h4>
<ul class="space-y-2">
<li><a href="#" class="text-gray-400 hover:text-white">About</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Careers</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Privacy</a></li>
<li><a href="#" class="text-gray-400 hover:text-white">Terms</a></li>
</ul>
</div>
<div>
<h4 class="font-medium mb-4">Connect</h4>
<div class="flex space-x-4">
<a href="#" class="text-gray-400 hover:text-white"><i class="fab fa-twitter"></i></a>
<a href="#" class="text-gray-400 hover:text-white"><i class="fab fa-facebook"></i></a>
<a href="#" class="text-gray-400 hover:text-white"><i class="fab fa-linkedin"></i></a>
<a href="#" class="text-gray-400 hover:text-white"><i class="fab fa-instagram"></i></a>
</div>
<div class="mt-4">
<p class="text-gray-400">Subscribe to our newsletter</p>
<div class="flex mt-2">
<input type="email" placeholder="Your email" class="px-3 py-2 rounded-l text-gray-800 w-full">
<button class="bg-primary px-4 py-2 rounded-r"><i class="fas fa-paper-plane"></i></button>
</div>
</div>
</div>
</div>
<div class="border-t border-gray-700 mt-8 pt-6 text-center text-gray-400">
<p>© 2023 News Nexus. All rights reserved.</p>
</div>
</div>
</footer>
<!-- Bottom Navigation (Mobile) -->
<div class="md:hidden fixed bottom-0 left-0 right-0 bg-white shadow-lg">
<div class="flex justify-around items-center py-3">
<a href="#" class="flex flex-col items-center text-primary">
<i class="fas fa-home text-lg"></i>
<span class="text-xs mt-1">Home</span>
</a>
<a href="#" class="flex flex-col items-center text-gray-500">
<i class="fas fa-compass text-lg"></i>
<span class="text-xs mt-1">Discover</span>
</a>
<a href="#" class="flex flex-col items-center text-gray-500">
<i class="fas fa-bookmark text-lg"></i>
<span class="text-xs mt-1">Saved</span>
</a>
<a href="#" class="flex flex-col items-center text-gray-500">
<i class="fas fa-user text-lg"></i>
<span class="text-xs mt-1">Profile</span>
</a>
</div>
</div>
<script>
// Category selection
const categoryBtns = document.querySelectorAll('.category-btn');
categoryBtns.forEach(btn => {
btn.addEventListener('click', () => {
categoryBtns.forEach(b => b.classList.remove('bg-primary', 'text-white'));
categoryBtns.forEach(b => b.classList.add('bg-gray-200', 'hover:bg-gray-300'));
btn.classList.remove('bg-gray-200', 'hover:bg-gray-300');
btn.classList.add('bg-primary', 'text-white');
});
});
// Bookmark functionality
const bookmarkIcons = document.querySelectorAll('.fa-bookmark');
bookmarkIcons.forEach(icon => {
icon.addEventListener('click', (e) => {
e.stopPropagation();
if (icon.classList.contains('text-gray-500')) {
icon.classList.remove('text-gray-500');
icon.classList.add('text-primary');
} else {
icon.classList.remove('text-primary');
icon.classList.add('text-gray-500');
}
});
});
// Simulate loading
document.addEventListener('DOMContentLoaded', () => {
setTimeout(() => {
// This would be replaced with actual API calls in a real implementation
console.log('Content loaded');
}, 1000);
});
// News card click handler
const newsCards = document.querySelectorAll('.news-card');
newsCards.forEach(card => {
card.addEventListener('click', () => {
// In a real app, this would navigate to the full article
console.log('Navigating to article');
});
});
</script>
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=nirjharrr/discover" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>