sheetsync-hub / index.html
AncViz's picture
Website to host hundreds of Music Score PDFs, and search and preview PDFs efficiently. Should be able to download PDFs, and provide a portal for adding new PDFs to the site.
0febd74 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SheetSync Hub - Your Digital Music Library</title>
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
<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>
<script>
tailwind.config = {
theme: {
extend: {
colors: {
primary: '#3B82F6',
secondary: '#8B5CF6',
accent: '#10B981'
}
}
</script>
</head>
<body class="bg-gray-50 font-sans">
<!-- Navigation -->
<nav class="bg-white shadow-lg sticky top-0 z-50">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="flex justify-between items-center py-4">
<div class="flex items-center">
<i data-feather="music" class="text-primary mr-2"></i>
<span class="text-xl font-bold text-gray-800">SheetSync Hub</span>
</div>
<!-- Desktop Menu -->
<div class="hidden md:flex items-center space-x-8">
<a href="#featured" class="text-gray-600 hover:text-primary transition-colors">Featured</a>
<a href="#browse" class="text-gray-600 hover:text-primary transition-colors">Browse</a>
<a href="#upload" class="bg-primary text-white px-4 py-2 rounded-lg hover:bg-blue-600 transition-colors">Upload</a>
<a href="#about" class="text-gray-600 hover:text-primary transition-colors">About</a>
<button class="bg-secondary text-white px-4 py-2 rounded-lg hover:bg-purple-600 transition-colors">Login</button>
</div>
<!-- Mobile Menu Button -->
<button class="md:hidden text-gray-600">
<i data-feather="menu"></i>
</button>
</div>
</div>
</nav>
<!-- Hero Section -->
<section class="bg-gradient-to-br from-primary/10 to-secondary/10 py-20">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="text-center">
<h1 class="text-4xl md:text-6xl font-bold text-gray-800 mb-6">
Your Digital Music<br>Score Library
</h1>
<p class="text-gray-600 max-w-2xl mx-auto mb-8">
Discover, preview, and download thousands of music scores. From classical masterpieces to contemporary compositions.</p>
<div class="flex flex-col sm:flex-row justify-center gap-4">
<button class="bg-primary text-white px-8 py-4 rounded-xl hover:bg-blue-600 transition-colors font-medium">Explore Collection</button>
</div>
</div>
</section>
<!-- Search Section -->
<section id="search" class="py-16 bg-white">
<div class="max-w-4xl mx-auto px-4">
<div class="bg-gray-50 rounded-2xl p-8 shadow-inner">
<div class="flex flex-col md:flex-row items-center justify-between gap-6">
<div class="flex-1">
<div class="relative">
<i data-feather="search" class="absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400">
</div>
</div>
<input type="text" placeholder="Search by composer, title, instrument, or genre..." class="w-full pl-12 pr-4 py-4 rounded-xl border border-gray-200 focus:border-primary focus:ring-2 focus:ring-primary/20 transition-all pl-12" id="search-input">
<button class="absolute right-2 top-1/2 transform -translate-y-1/2">
<i data-feather="filter" class="text-gray-500"></i>
</button>
</div>
</div>
</div>
</section>
<!-- Featured Scores -->
<section id="featured" class="py-16">
<div class="max-w-7xl mx-auto px-4">
<div class="flex items-center justify-between mb-12">
<h2 class="text-3xl font-bold text-gray-800">Featured Scores</h2>
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow overflow-hidden">
<div class="relative">
<img src="http://static.photos/music/320x240/1" alt="Beethoven Symphony No. 5" class="w-full h-48 object-cover">
<div class="absolute top-4 right-4 bg-primary text-white px-3 py-1 rounded-full text-sm">Popular</div>
</div>
<div class="p-6">
<h3 class="text-xl font-semibold text-gray-800 mb-2">Beethoven - Symphony No. 5</h3>
<p class="text-gray-600 text-sm mb-4">Full Orchestra • Classical</p>
<div class="flex justify-between items-center">
<span class="text-gray-500 text-sm">Difficulty: Intermediate</span>
<div class="flex gap-2">
<button class="flex items-center gap-1 text-primary hover:text-blue-600 transition-colors">
<i data-feather="eye"></i>
Preview
</button>
<button class="bg-secondary text-white px-4 py-2 rounded-lg hover:bg-purple-600 transition-colors text-sm">Download</button>
</div>
</div>
</div>
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow overflow-hidden">
<div class="relative">
<img src="http://static.photos/music/320x240/2" alt="Mozart Requiem" class="w-full h-48 object-cover">
<div class="absolute top-4 right-4 bg-accent text-white px-3 py-1 rounded-full text-sm">New</div>
</div>
<div class="p-6">
<h3 class="text-xl font-semibold text-gray-800 mb-2">Mozart - Requiem</h3>
<p class="text-gray-600 text-sm mb-4">Choir & Orchestra • Classical</p>
<div class="flex justify-between items-center">
<span class="text-gray-500 text-sm">Difficulty: Advanced</span>
<div class="flex gap-2">
<button class="flex items-center gap-1 text-primary hover:text-blue-600 transition-colors text-sm">Preview</button>
<button class="bg-primary text-white px-4 py-2 rounded-lg hover:bg-blue-600 transition-colors">
<i data-feather="download"></i>
Download
</button>
</div>
</div>
</div>
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow overflow-hidden">
<div class="relative">
<img src="http://static.photos/music/320x240/3" alt="Chopin Nocturne" class="w-full h-48 object-cover">
<div class="absolute top-4 right-4 bg-accent text-white px-3 py-1 rounded-full text-sm">Recent</div>
</div>
<div class="p-6">
<h3 class="text-xl font-semibold text-gray-800 mb-2">Chopin - Nocturne Op. 9 No. 2</h3>
<p class="text-gray-600 text-sm mb-4">Solo Piano • Romantic</p>
<div class="flex justify-between items-center">
<span class="text-gray-500 text-sm">Difficulty: Beginner</span>
<div class="flex gap-2">
<button class="flex items-center gap-1 text-primary hover:text-blue-600 transition-colors text-sm">Preview</button>
<button class="bg-primary text-white px-4 py-2 rounded-lg hover:bg-blue-600 transition-colors">Download</button>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Browse Section -->
<section id="browse" class="py-16 bg-gray-50">
<div class="max-w-7xl mx-auto px-4">
<div class="flex flex-col lg:flex-row justify-between items-start gap-12">
<div class="flex-1">
<h2 class="text-3xl font-bold text-gray-800 mb-12">Browse Categories</h2>
<div class="grid grid-cols-2 md:grid-cols-4 gap-6">
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow p-6">
<div class="flex items-center gap-3 mb-4">
<i data-feather="layers" class="text-secondary"></i>
<div>
<h3 class="text-lg font-semibold text-gray-800 mb-2">Classical Period</h3>
<p class="text-gray-600">Mozart, Haydn, Beethoven</p>
</div>
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow overflow-hidden">
<div class="relative">
<img src="http://static.photos/music/200x200/4" alt="Classical" class="w-full h-32 object-cover rounded-lg">
</div>
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow p-6">
<div class="flex items-center gap-3">
<i data-feather="users" class="text-primary"></i>
</div>
</div>
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow p-6">
<div class="flex items-center gap-3 mb-4">
<div>
<h3 class="text-lg font-semibold text-gray-800 mb-2">Chamber Music</h3>
<p class="text-gray-600">Small ensembles</p>
</div>
<div class="bg-white rounded-2xl shadow-lg hover:shadow-xl transition-shadow p-6">
<div class="flex items-center gap-3">
<i data-feather="git-hub" class="text-secondary"></i>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Upload Section -->
<section id="upload" class="py-16 bg-white">
<div class="max-w-4xl mx-auto px-4">
<div class="text-center mb-12">
<h2 class="text-3xl font-bold text-gray-800 mb-6">Upload New Scores</h2>
<div class="bg-gray-50 rounded-2xl p-8 shadow-inner">
<h3 class="text-2xl font-bold text-gray-800 mb-6">Share Your Music</h2>
<p class="text-gray-600 max-w-2xl mx-auto mb-8">
Contribute to our growing library by uploading your own scores or sharing public domain works.</p>
<div class="max-w-md mx-auto">
<div class="border-2 border-dashed border-gray-300 rounded-2xl p-12 text-center">
<i data-feather="upload-cloud" class="text-primary mx-auto mb-4" style="width: 64px; height: 64px;">
</div>
<p class="text-gray-500 text-sm mb-4">
Drag & drop PDF files here or
</p>
<button class="bg-primary text-white px-6 py-3 rounded-xl hover:bg-blue-600 transition-colors">Select Files</button>
</div>
</div>
</div>
</div>
</section>
<!-- About Section -->
<section id="about" class="py-16 bg-gray-50">
<div class="max-w-4xl mx-auto px-4">
<button class="bg-secondary text-white px-6 py-3 rounded-xl hover:bg-purple-600 transition-colors">Start Uploading</button>
</div>
</section>
<!-- Footer -->
<footer class="bg-white border-t border-gray-200 py-12">
<div class="max-w-7xl mx-auto px-4">
<div class="grid grid-cols-1 md:grid-cols-4 gap-8">
<div class="md:col-span-1">
<div class="flex items-center mb-4">
<i data-feather="music" class="text-primary mr-2"></i>
<span class="text-xl font-bold text-gray-800">SheetSync Hub</span>
</div>
<p class="text-gray-600">Your comprehensive digital music score library</p>
</div>
<div class="md:col-span-1">
<h4 class="font-semibold text-gray-800 mb-4">Resources</h4>
<a href="#" class="block text-gray-600 hover:text-primary transition-colors">Help Center</a>
</div>
<div class="md:col-span-1">
<h4 class="font-semibold text-gray-800 mb-2">Community Guidelines</a>
<a href="#" class="block text-gray-600 hover:text-primary transition-colors">Terms of Service</a>
<a href="#" class="block text-gray-600 hover:text-primary transition-colors">Privacy Policy</a>
</div>
<div class="md:col-span-1">
<h4 class="font-semibold text-gray-800 mb-2">Contact Us</a>
</div>
<div class="md:col-span-1">
<h4 class="font-semibold text-gray-800 mb-2">About SheetSync</h4>
<a href="#" class="block text-gray-600 hover:text-primary transition-colors">The Team</a>
</div>
</div>
<div class="border-t border-gray-200 mt-12 pt-8">
<p class="text-gray-500 text-sm">© 2024 SheetSync Hub. All rights reserved.</p>
</footer>
<script>
feather.replace();
// Search functionality
document.getElementById('search-input').addEventListener('input', function(e) {
const searchTerm = e.target.value.toLowerCase();
// Implement search logic here
console.log('Searching for:', searchTerm);
});
// Mobile menu toggle
document.querySelector('[data-feather="menu"]').addEventListener('click', function() {
const menu = document.querySelector('.mobile-menu');
menu.classList.toggle('hidden');
});
</script>
</body>
</html>