harmony / index.html
Phethap's picture
create a seamless social media application that the algorithm links people through music and their hobbies. build application to display music played from users music digital platform to display on the social media application. eg, spotify. user interface should have a simple and minimal icons like that of ios. - Initial Deployment
f1ef0c8 verified
<!DOCTYPE html>
<html lang="en" class="h-full">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Harmony | Music Social Network</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: '#8B5CF6',
'primary-dark': '#7C3AED',
dark: '#1E293B',
'dark-light': '#334155',
}
}
}
}
</script>
<style>
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
body {
font-family: 'Inter', sans-serif;
-webkit-tap-highlight-color: transparent;
}
.song-artwork {
transition: all 0.3s ease;
}
.song-artwork:hover {
transform: scale(1.05);
}
.tab-active {
position: relative;
}
.tab-active:after {
content: '';
position: absolute;
bottom: -12px;
left: 50%;
transform: translateX(-50%);
width: 6px;
height: 6px;
border-radius: 50%;
background-color: #8B5CF6;
}
.blur-bg {
backdrop-filter: blur(20px);
}
.now-playing-card {
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
</style>
</head>
<body class="bg-gray-50 text-gray-900 h-full">
<div class="flex h-full max-w-2xl mx-auto">
<!-- Main App Container -->
<div class="flex flex-col w-full bg-white shadow-xl">
<!-- Header -->
<header class="flex items-center justify-between p-5 border-b border-gray-200">
<h1 class="text-2xl font-bold text-primary">Harmony</h1>
<div class="flex space-x-4">
<button class="text-gray-500 hover:text-gray-700">
<i class="fas fa-search text-xl"></i>
</button>
<button class="text-gray-500 hover:text-gray-700">
<i class="fas fa-bell text-xl"></i>
</button>
</div>
</header>
<!-- Main Content -->
<main class="flex-1 overflow-y-auto">
<!-- Stories/Now Playing Section -->
<div class="px-5 pt-5">
<div class="bg-gradient-to-r from-purple-400 via-pink-500 to-blue-500 rounded-xl p-4 shadow-lg">
<div class="flex items-center justify-between mb-4">
<div>
<h3 class="text-white font-bold text-lg">Now Playing</h3>
<p class="text-purple-100 text-sm">From your Spotify</p>
</div>
<button class="bg-white bg-opacity-20 rounded-full p-2">
<i class="fas fa-ellipsis-h text-white"></i>
</button>
</div>
<div class="flex items-center space-x-3">
<div class="song-artwork w-16 h-16 rounded-lg overflow-hidden">
<img src="https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228" class="w-full h-full object-cover" alt="Song cover">
</div>
<div class="flex-1">
<h4 class="text-white font-semibold">Blinding Lights</h4>
<p class="text-purple-100 text-sm">The Weeknd</p>
</div>
<button class="bg-primary text-white rounded-full w-10 h-10 flex items-center justify-center">
<i class="fas fa-play"></i>
</button>
</div>
</div>
</div>
<!-- Hobbies Matching Section -->
<div class="px-5 mt-8">
<div class="flex items-center justify-between mb-4">
<h2 class="text-lg font-bold">Match by Hobbies</h2>
<a href="#" class="text-primary text-sm font-medium">See all</a>
</div>
<div class="grid grid-cols-3 gap-3">
<div class="bg-gray-100 rounded-xl p-3 text-center">
<div class="bg-primary bg-opacity-10 rounded-full w-12 h-12 flex items-center justify-center mx-auto mb-2">
<i class="fas fa-headphones text-primary text-xl"></i>
</div>
<span class="text-xs font-medium">Music Production</span>
</div>
<div class="bg-gray-100 rounded-xl p-3 text-center">
<div class="bg-primary bg-opacity-10 rounded-full w-12 h-12 flex items-center justify-center mx-auto mb-2">
<i class="fas fa-basketball-ball text-primary text-xl"></i>
</div>
<span class="text-xs font-medium">Basketball</span>
</div>
<div class="bg-gray-100 rounded-xl p-3 text-center">
<div class="bg-primary bg-opacity-10 rounded-full w-12 h-12 flex items-center justify-center mx-auto mb-2">
<i class="fas fa-paint-brush text-primary text-xl"></i>
</div>
<span class="text-xs font-medium">Art</span>
</div>
</div>
</div>
<!-- Trending Now Section -->
<div class="px-5 mt-8">
<div class="flex items-center justify-between mb-4">
<h2 class="text-lg font-bold">Trending Now</h2>
<a href="#" class="text-primary text-sm font-medium">See all</a>
</div>
<div class="space-y-3">
<div class="flex items-center space-x-3 p-2 rounded-lg hover:bg-gray-50">
<div class="w-12 h-12 rounded-lg overflow-hidden">
<img src="https://i.scdn.co/image/ab67706f00000003a80e6ac5be4b887b2ec48eca" class="w-full h-full object-cover" alt="Playlist cover">
</div>
<div class="flex-1">
<h4 class="font-medium">Today's Top Hits</h4>
<p class="text-gray-500 text-xs">2,450,845 listeners</p>
</div>
<div class="w-8 h-8 rounded-full bg-gray-100 flex items-center justify-center">
<i class="fas fa-heart text-gray-400 text-sm"></i>
</div>
</div>
<div class="flex items-center space-x-3 p-2 rounded-lg hover:bg-gray-50">
<div class="w-12 h-12 rounded-lg overflow-hidden">
<img src="https://i.scdn.co/image/ab67616d00001e02b3ad9e2fc3a30e4b1b91b8e7" class="w-full h-full object-cover" alt="Song cover">
</div>
<div class="flex-1">
<h4 class="font-medium">Stay</h4>
<p class="text-gray-500 text-xs">The Kid LAROI, Justin Bieber</p>
</div>
<div class="w-8 h-8 rounded-full bg-gray-100 flex items-center justify-center">
<i class="fas fa-heart text-gray-400 text-sm"></i>
</div>
</div>
</div>
</div>
<!-- Matched Profiles Section -->
<div class="px-5 mt-8">
<div class="flex items-center justify-between mb-4">
<h2 class="text-lg font-bold">People You Might Like</h2>
<a href="#" class="text-primary text-sm font-medium">See all</a>
</div>
<div class="grid grid-cols-2 gap-3">
<div class="bg-gray-50 rounded-xl p-4">
<div class="flex flex-col items-center text-center">
<div class="w-16 h-16 rounded-full overflow-hidden mb-3">
<img src="https://randomuser.me/api/portraits/women/44.jpg" class="w-full h-full object-cover" alt="Profile">
</div>
<h4 class="font-medium">Sarah J.</h4>
<p class="text-xs text-gray-500 mb-2">89% match</p>
<div class="flex space-x-1 mb-3">
<span class="bg-primary bg-opacity-10 text-primary text-xs px-2 py-1 rounded-full">Indie</span>
<span class="bg-primary bg-opacity-10 text-primary text-xs px-2 py-1 rounded-full">Guitar</span>
</div>
<button class="bg-primary text-white text-sm rounded-full px-4 py-1 w-full">
Connect
</button>
</div>
</div>
<div class="bg-gray-50 rounded-xl p-4">
<div class="flex flex-col items-center text-center">
<div class="w-16 h-16 rounded-full overflow-hidden mb-3">
<img src="https://randomuser.me/api/portraits/men/32.jpg" class="w-full h-full object-cover" alt="Profile">
</div>
<h4 class="font-medium">Alex K.</h4>
<p class="text-xs text-gray-500 mb-2">92% match</p>
<div class="flex space-x-1 mb-3">
<span class="bg-primary bg-opacity-10 text-primary text-xs px-2 py-1 rounded-full">Hip Hop</span>
<span class="bg-primary bg-opacity-10 text-primary text-xs px-2 py-1 rounded-full">Basketball</span>
</div>
<button class="bg-primary text-white text-sm rounded-full px-4 py-1 w-full">
Connect
</button>
</div>
</div>
</div>
</div>
</main>
<!-- Bottom Navigation -->
<nav class="border-t border-gray-200 px-6 pt-3 pb-5 blur-bg">
<div class="flex justify-between">
<a href="#" class="flex flex-col items-center text-primary tab-active">
<i class="fas fa-home text-xl mb-1"></i>
<span class="text-xs">Home</span>
</a>
<a href="#" class="flex flex-col items-center text-gray-500">
<i class="fas fa-microphone-alt text-xl mb-1"></i>
<span class="text-xs">Discover</span>
</a>
<a href="#" class="flex flex-col items-center text-gray-500">
<i class="fas fa-user-friends text-xl mb-1"></i>
<span class="text-xs">Connections</span>
</a>
<a href="#" class="flex flex-col items-center text-gray-500">
<i class="fas fa-inbox text-xl mb-1"></i>
<span class="text-xs">Messages</span>
</a>
<a href="#" class="flex flex-col items-center text-gray-500">
<i class="fas fa-user text-xl mb-1"></i>
<span class="text-xs">Profile</span>
</a>
</div>
</nav>
</div>
</div>
<script>
// Mock music player functionality
document.querySelectorAll('.song-artwork, .fa-play').forEach(el => {
el.addEventListener('click', function() {
alert('Now playing: Blinding Lights by The Weeknd');
});
});
// Connect button functionality
document.querySelectorAll('button').forEach(btn => {
if(btn.textContent === 'Connect') {
btn.addEventListener('click', function() {
alert('Connection request sent!');
});
}
});
// Like functionality
document.querySelectorAll('.fa-heart').forEach(icon => {
icon.addEventListener('click', function() {
this.classList.toggle('text-red-500');
this.classList.toggle('text-gray-400');
this.classList.toggle('fas');
this.classList.toggle('far');
});
});
</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=Phethap/harmony" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>