socialsphere / index.html
walolorj's picture
make it a social media app
8dbb3cf verified
Raw
History Blame Contribute Delete
11.1 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SocialSphere</title>
<link rel="stylesheet" href="style.css">
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://unpkg.com/feather-icons"></script>
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
</head>
<body class="bg-gray-50 text-gray-900">
<custom-navbar></custom-navbar>
<custom-stories></custom-stories>
<main class="container mx-auto px-4 py-8">
<div class="grid grid-cols-1 lg:grid-cols-4 gap-6">
<!-- Left Sidebar -->
<div class="lg:col-span-1">
<div class="bg-white rounded-xl shadow p-6 mb-6">
<div class="flex items-center mb-6">
<img src="http://static.photos/people/200x200/1" alt="Profile" class="w-16 h-16 rounded-full">
<div class="ml-4">
<h2 class="font-bold text-lg">Alex Morgan</h2>
<p class="text-gray-500">@alexmorgan</p>
</div>
</div>
<div class="space-y-4">
<div class="flex justify-between">
<span>Posts</span>
<span class="font-bold">128</span>
</div>
<div class="flex justify-between">
<span>Followers</span>
<span class="font-bold">2.4K</span>
</div>
<div class="flex justify-between">
<span>Following</span>
<span class="font-bold">356</span>
</div>
</div>
</div>
<div class="bg-white rounded-xl shadow p-6">
<h3 class="font-bold text-lg mb-4">Trending Topics</h3>
<ul class="space-y-3">
<li class="flex items-center">
<span class="bg-blue-100 text-blue-800 text-xs font-semibold px-2.5 py-0.5 rounded">#TechNews</span>
<span class="ml-2 text-sm text-gray-500">12.4K posts</span>
</li>
<li class="flex items-center">
<span class="bg-green-100 text-green-800 text-xs font-semibold px-2.5 py-0.5 rounded">#Design</span>
<span class="ml-2 text-sm text-gray-500">8.2K posts</span>
</li>
<li class="flex items-center">
<span class="bg-purple-100 text-purple-800 text-xs font-semibold px-2.5 py-0.5 rounded">#AI</span>
<span class="ml-2 text-sm text-gray-500">15.7K posts</span>
</li>
</ul>
</div>
</div>
<!-- Feed -->
<div class="lg:col-span-2">
<div class="bg-white rounded-xl shadow mb-6">
<div class="p-4 border-b">
<h2 class="font-bold text-xl">Your Feed</h2>
</div>
<!-- Stories -->
<div class="p-4 border-b">
<div class="flex space-x-4 overflow-x-auto pb-2">
<div class="flex flex-col items-center space-y-1 flex-shrink-0">
<div class="relative">
<div class="w-16 h-16 rounded-full bg-gradient-to-tr from-yellow-400 to-pink-500 p-0.5">
<div class="bg-white rounded-full p-0.5">
<img src="http://static.photos/people/200x200/1" class="w-full h-full rounded-full object-cover">
</div>
</div>
<div class="absolute bottom-0 right-0 bg-blue-500 rounded-full w-5 h-5 flex items-center justify-center border-2 border-white">
<i data-feather="plus" class="w-3 h-3 text-white"></i>
</div>
</div>
<span class="text-xs">Your Story</span>
</div>
${[1,2,3,4,5].map(i => `
<div class="flex flex-col items-center space-y-1 flex-shrink-0">
<div class="w-16 h-16 rounded-full bg-gradient-to-tr from-purple-500 to-pink-500 p-0.5">
<img src="http://static.photos/people/200x200/${i+10}" class="w-full h-full rounded-full object-cover">
</div>
<span class="text-xs">user${i}</span>
</div>
`).join('')}
</div>
</div>
<!-- Post creation form -->
<div class="p-4 border-b">
<div class="flex items-center mb-4">
<img src="http://static.photos/people/200x200/1" class="w-10 h-10 rounded-full">
<input type="text" id="post-content" class="ml-2 flex-1 px-4 py-2 bg-gray-100 rounded-full focus:outline-none" placeholder="What's on your mind?">
</div>
<div class="flex justify-between border-t pt-3">
<button type="button" onclick="document.getElementById('post-image').click()" class="flex items-center text-gray-500 hover:text-blue-500 px-3 py-1 rounded-lg hover:bg-gray-100">
<i data-feather="image" class="w-5 h-5 mr-1"></i>
<span>Photo</span>
<input type="file" id="post-image" accept="image/*" class="hidden">
</button>
<button type="button" class="flex items-center text-gray-500 hover:text-blue-500 px-3 py-1 rounded-lg hover:bg-gray-100">
<i data-feather="video" class="w-5 h-5 mr-1"></i>
<span>Video</span>
</button>
<button type="button" class="flex items-center text-gray-500 hover:text-blue-500 px-3 py-1 rounded-lg hover:bg-gray-100">
<i data-feather="map-pin" class="w-5 h-5 mr-1"></i>
<span>Location</span>
</button>
<button type="submit" form="post-form" class="px-4 py-1 bg-blue-500 text-white rounded-full hover:bg-blue-600 transition">Post</button>
</div>
<form id="post-form" class="hidden"></form>
</div>
<div id="feed-container" class="divide-y">
<!-- Posts will be dynamically loaded here -->
</div>
<div class="p-4 flex justify-center">
<button id="load-more" class="flex items-center px-4 py-2 bg-gray-100 text-gray-700 rounded-full hover:bg-gray-200 transition">
<i data-feather="refresh-cw" class="w-4 h-4 mr-2"></i>
<span>Load More</span>
</button>
</div>
</div>
</div>
<!-- Right Sidebar -->
<div class="lg:col-span-1 space-y-6">
<div class="bg-white rounded-xl shadow p-6">
<div class="flex justify-between items-center mb-4">
<h3 class="font-bold text-lg">Suggested For You</h3>
<a href="#" class="text-sm text-blue-500">See All</a>
</div>
<div class="space-y-4">
${[1,2,3].map(i => `
<div class="flex items-center">
<img src="http://static.photos/people/200x200/${i+20}" alt="User" class="w-10 h-10 rounded-full">
<div class="ml-3 flex-1">
<p class="font-medium">User ${i}</p>
<p class="text-sm text-gray-500">Followed by ${i*2} friends</p>
</div>
<button class="text-xs font-medium text-blue-500 hover:text-blue-700">
Follow
</button>
</div>
`).join('')}
</div>
</div>
<div class="bg-white rounded-xl shadow p-6">
<h3 class="font-bold text-lg mb-4">Birthdays</h3>
<div class="flex items-center">
<div class="w-10 h-10 bg-blue-100 rounded-full flex items-center justify-center text-blue-500">
<i data-feather="gift"></i>
</div>
<p class="ml-3 text-sm"><span class="font-medium">John Doe</span> and <span class="font-medium">2 others</span> have birthdays today</p>
</div>
</div>
<div class="bg-white rounded-xl shadow p-6">
<h3 class="font-bold text-lg mb-4">Sponsored</h3>
<div class="space-y-4">
<div class="relative">
<img src="http://static.photos/advertising/640x360/1" class="w-full rounded-lg">
<div class="absolute top-2 right-2 bg-black bg-opacity-50 text-white text-xs px-2 py-1 rounded">Sponsored</div>
</div>
<p class="text-sm">Try our new product and get 50% off your first purchase!</p>
</div>
</div>
<div class="bg-white rounded-xl shadow p-6">
<h3 class="font-bold text-lg mb-4">Online Friends</h3>
<div class="space-y-3">
${[1,2,3,4].map(i => `
<div class="flex items-center">
<div class="relative">
<img src="http://static.photos/people/200x200/${i+30}" class="w-10 h-10 rounded-full">
<div class="absolute bottom-0 right-0 w-3 h-3 bg-green-500 rounded-full border-2 border-white"></div>
</div>
<span class="ml-3">Friend ${i}</span>
</div>
`).join('')}
</div>
</div>
</div>
</div>
</main>
<custom-footer></custom-footer>
<script src="components/navbar.js"></script>
<script src="components/stories.js"></script>
<script src="components/footer.js"></script>
<script src="script.js"></script>
<script>
feather.replace();
</script>
<script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
</body>
</html>