folder-wizard-pro / index.html
rafatoel's picture
i have my custom folder structure for my project
ee18700 verified
Raw History Blame Contribute Delete
7.03 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Folder Wizard Pro</title>
<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>
<style>
.folder-structure {
font-family: 'Courier New', monospace;
}
.folder-icon {
color: #3b82f6;
}
.file-icon {
color: #10b981;
}
.folder:hover {
background-color: #f3f4f6;
cursor: pointer;
}
.animate-folder {
transition: all 0.2s ease;
}
.animate-folder:hover {
transform: translateX(4px);
}
</style>
</head>
<body class="bg-gray-50 min-h-screen">
<div class="container mx-auto py-12 px-4">
<div class="text-center mb-12">
<h1 class="text-4xl font-bold text-gray-800 mb-4">Folder Wizard Pro 🧙</h1>
<p class="text-xl text-gray-600 max-w-2xl mx-auto">Visualize and manage your custom folder structure with magical ease</p>
</div>
<div class="bg-white rounded-xl shadow-lg p-6 max-w-4xl mx-auto">
<div class="flex justify-between items-center mb-6">
<h2 class="text-2xl font-semibold text-gray-800">Your Project Structure</h2>
<button class="bg-blue-500 hover:bg-blue-600 text-white px-4 py-2 rounded-lg flex items-center gap-2 transition-colors">
<i data-feather="plus"></i> Add Folder
</button>
</div>
<div class="folder-structure bg-gray-50 p-4 rounded-lg border border-gray-200">
<div class="folder flex items-center mb-2 animate-folder">
<i data-feather="folder" class="folder-icon mr-2"></i>
<span class="font-medium">/project-root</span>
</div>
<div class="ml-6">
<div class="folder flex items-center mb-2 animate-folder">
<i data-feather="folder" class="folder-icon mr-2"></i>
<span class="font-medium">/src</span>
</div>
<div class="ml-6">
<div class="folder flex items-center mb-2 animate-folder">
<i data-feather="folder" class="folder-icon mr-2"></i>
<span class="font-medium">/components</span>
</div>
<div class="file flex items-center mb-2">
<i data-feather="file" class="file-icon mr-2"></i>
<span>Button.jsx</span>
</div>
<div class="file flex items-center mb-2">
<i data-feather="file" class="file-icon mr-2"></i>
<span>Card.jsx</span>
</div>
</div>
<div class="folder flex items-center mb-2 animate-folder">
<i data-feather="folder" class="folder-icon mr-2"></i>
<span class="font-medium">/styles</span>
</div>
<div class="file flex items-center mb-2">
<i data-feather="file" class="file-icon mr-2"></i>
<span>main.css</span>
</div>
</div>
<div class="folder flex items-center mt-4 mb-2 animate-folder">
<i data-feather="folder" class="folder-icon mr-2"></i>
<span class="font-medium">/public</span>
</div>
<div class="ml-6">
<div class="file flex items-center mb-2">
<i data-feather="file" class="file-icon mr-2"></i>
<span>index.html</span>
</div>
<div class="file flex items-center mb-2">
<i data-feather="file" class="file-icon mr-2"></i>
<span>favicon.ico</span>
</div>
</div>
<div class="file flex items-center mt-4">
<i data-feather="file" class="file-icon mr-2"></i>
<span>package.json</span>
</div>
<div class="file flex items-center">
<i data-feather="file" class="file-icon mr-2"></i>
<span>README.md</span>
</div>
</div>
</div>
<div class="mt-12 bg-white rounded-xl shadow-lg p-6 max-w-4xl mx-auto">
<h2 class="text-2xl font-semibold text-gray-800 mb-4">Customize Your Structure</h2>
<div class="grid md:grid-cols-2 gap-6">
<div>
<label class="block text-gray-700 mb-2">Folder Name</label>
<input type="text" class="w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition">
</div>
<div>
<label class="block text-gray-700 mb-2">Parent Directory</label>
<select class="w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition">
<option>/project-root</option>
<option>/src</option>
<option>/public</option>
</select>
</div>
<button class="md:col-span-2 bg-green-500 hover:bg-green-600 text-white px-6 py-3 rounded-lg flex items-center justify-center gap-2 transition-colors">
<i data-feather="check"></i> Create Folder
</button>
</div>
</div>
</div>
<script>
feather.replace();
// Simple animation for folder elements
document.querySelectorAll('.folder').forEach(folder => {
folder.addEventListener('click', function() {
const nextElement = this.nextElementSibling;
if (nextElement && nextElement.classList.contains('ml-6')) {
nextElement.classList.toggle('hidden');
const icon = this.querySelector('i');
if (nextElement.classList.contains('hidden')) {
icon.setAttribute('data-feather', 'folder');
} else {
icon.setAttribute('data-feather', 'folder-plus');
}
feather.replace();
}
});
});
</script>
</body>
</html>