| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="UTF-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <title>MindFlow - Ultimate Mind Mapping & Knowledge Management</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"> |
| <style> |
| .mindmap-node { |
| transition: all 0.3s ease; |
| } |
| .mindmap-node:hover { |
| transform: scale(1.05); |
| box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); |
| } |
| .sidebar-item { |
| transition: all 0.2s ease; |
| } |
| .sidebar-item:hover { |
| background-color: rgba(59, 130, 246, 0.1); |
| border-left: 3px solid #3b82f6; |
| } |
| .mindmap-container { |
| background-image: radial-gradient(#e5e7eb 1px, transparent 1px); |
| background-size: 20px 20px; |
| } |
| .node-connection { |
| position: absolute; |
| background-color: #9ca3af; |
| transform-origin: left center; |
| z-index: -1; |
| } |
| @keyframes pulse { |
| 0%, 100% { |
| opacity: 1; |
| } |
| 50% { |
| opacity: 0.5; |
| } |
| } |
| .animate-pulse-slow { |
| animation: pulse 3s infinite; |
| } |
| </style> |
| </head> |
| <body class="bg-gray-50 font-sans text-gray-800"> |
| <div class="flex h-screen overflow-hidden"> |
| |
| <div class="w-64 bg-white border-r border-gray-200 flex flex-col"> |
| <div class="p-4 border-b border-gray-200"> |
| <div class="flex items-center space-x-2"> |
| <div class="w-8 h-8 bg-blue-500 rounded-full flex items-center justify-center text-white font-bold">MF</div> |
| <h1 class="text-xl font-bold text-gray-800">MindFlow</h1> |
| </div> |
| </div> |
| |
| <div class="flex-1 overflow-y-auto"> |
| <div class="p-4"> |
| <button class="w-full bg-blue-500 hover:bg-blue-600 text-white py-2 px-4 rounded-md flex items-center justify-center space-x-2 transition"> |
| <i class="fas fa-plus"></i> |
| <span>New Mind Map</span> |
| </button> |
| </div> |
| |
| <div class="px-4 py-2"> |
| <h3 class="text-xs font-semibold text-gray-500 uppercase tracking-wider">Recent Files</h3> |
| <ul class="mt-2 space-y-1"> |
| <li> |
| <a href="#" class="sidebar-item flex items-center px-3 py-2 text-sm rounded-md bg-blue-50 text-blue-700"> |
| <i class="fas fa-project-diagram mr-3 text-blue-500"></i> |
| <span>Product Roadmap</span> |
| </a> |
| </li> |
| <li> |
| <a href="#" class="sidebar-item flex items-center px-3 py-2 text-sm rounded-md"> |
| <i class="fas fa-lightbulb mr-3 text-yellow-500"></i> |
| <span>Creative Ideas</span> |
| </a> |
| </li> |
| <li> |
| <a href="#" class="sidebar-item flex items-center px-3 py-2 text-sm rounded-md"> |
| <i class="fas fa-book mr-3 text-green-500"></i> |
| <span>Knowledge Base</span> |
| </a> |
| </li> |
| <li> |
| <a href="#" class="sidebar-item flex items-center px-3 py-2 text-sm rounded-md"> |
| <i class="fas fa-tasks mr-3 text-purple-500"></i> |
| <span>Project Tasks</span> |
| </a> |
| </li> |
| </ul> |
| </div> |
| |
| <div class="px-4 py-2 mt-4"> |
| <h3 class="text-xs font-semibold text-gray-500 uppercase tracking-wider">Templates</h3> |
| <ul class="mt-2 space-y-1"> |
| <li> |
| <a href="#" class="sidebar-item flex items-center px-3 py-2 text-sm rounded-md"> |
| <i class="fas fa-briefcase mr-3 text-gray-500"></i> |
| <span>Business Plan</span> |
| </a> |
| </li> |
| <li> |
| <a href="#" class="sidebar-item flex items-center px-3 py-2 text-sm rounded-md"> |
| <i class="fas fa-graduation-cap mr-3 text-gray-500"></i> |
| <span>Study Notes</span> |
| </a> |
| </li> |
| <li> |
| <a href="#" class="sidebar-item flex items-center px-3 py-2 text-sm rounded-md"> |
| <i class="fas fa-users mr-3 text-gray-500"></i> |
| <span>Meeting Notes</span> |
| </a> |
| </li> |
| </ul> |
| </div> |
| </div> |
| |
| <div class="p-4 border-t border-gray-200"> |
| <div class="flex items-center space-x-3"> |
| <div class="w-8 h-8 bg-gray-200 rounded-full"></div> |
| <div> |
| <p class="text-sm font-medium">John Doe</p> |
| <p class="text-xs text-gray-500">Free Plan</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| |
| <div class="flex-1 flex flex-col overflow-hidden"> |
| |
| <div class="bg-white border-b border-gray-200 p-4 flex items-center justify-between"> |
| <div class="flex items-center space-x-4"> |
| <h2 class="text-lg font-semibold">Product Roadmap</h2> |
| <div class="flex items-center space-x-2 text-sm"> |
| <span class="text-gray-500">Last saved 5 minutes ago</span> |
| <i class="fas fa-check-circle text-green-500"></i> |
| </div> |
| </div> |
| |
| <div class="flex items-center space-x-3"> |
| <button class="flex items-center space-x-1 text-gray-600 hover:text-gray-900"> |
| <i class="fas fa-users"></i> |
| <span>Share</span> |
| </button> |
| <button class="flex items-center space-x-1 text-gray-600 hover:text-gray-900"> |
| <i class="fas fa-history"></i> |
| <span>History</span> |
| </button> |
| <button class="flex items-center space-x-1 text-gray-600 hover:text-gray-900"> |
| <i class="fas fa-cog"></i> |
| <span>Settings</span> |
| </button> |
| </div> |
| </div> |
| |
| |
| <div class="bg-gray-50 border-b border-gray-200 p-2 flex items-center space-x-2"> |
| <div class="flex items-center space-x-1"> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-text-width"></i> |
| </button> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-image"></i> |
| </button> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-link"></i> |
| </button> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-paperclip"></i> |
| </button> |
| </div> |
| |
| <div class="border-l border-gray-300 h-6 mx-2"></div> |
| |
| <div class="flex items-center space-x-1"> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-shapes"></i> |
| </button> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-palette"></i> |
| </button> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-font"></i> |
| </button> |
| </div> |
| |
| <div class="border-l border-gray-300 h-6 mx-2"></div> |
| |
| <div class="flex items-center space-x-1"> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-expand"></i> |
| </button> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-search"></i> |
| </button> |
| <button class="p-2 rounded hover:bg-gray-200"> |
| <i class="fas fa-layer-group"></i> |
| </button> |
| </div> |
| </div> |
| |
| |
| <div class="flex-1 overflow-auto mindmap-container relative p-8"> |
| |
| <div class="absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2"> |
| <div class="mindmap-node bg-blue-500 text-white p-4 rounded-lg shadow-lg w-48 cursor-move" style="transform: translate(-50%, -50%);"> |
| <div class="font-bold text-center">Product Roadmap</div> |
| </div> |
| </div> |
| |
| |
| <div class="absolute top-1/4 left-1/4"> |
| <div class="mindmap-node bg-green-500 text-white p-3 rounded-lg shadow-lg w-40 cursor-move"> |
| <div class="font-semibold">Q1 Goals</div> |
| <div class="text-xs mt-1">Market Research</div> |
| </div> |
| </div> |
| |
| <div class="absolute top-1/4 right-1/4"> |
| <div class="mindmap-node bg-purple-500 text-white p-3 rounded-lg shadow-lg w-40 cursor-move"> |
| <div class="font-semibold">Q2 Goals</div> |
| <div class="text-xs mt-1">Prototype Development</div> |
| </div> |
| </div> |
| |
| <div class="absolute bottom-1/4 left-1/4"> |
| <div class="mindmap-node bg-yellow-500 text-white p-3 rounded-lg shadow-lg w-40 cursor-move"> |
| <div class="font-semibold">Q3 Goals</div> |
| <div class="text-xs mt-1">Beta Testing</div> |
| </div> |
| </div> |
| |
| <div class="absolute bottom-1/4 right-1/4"> |
| <div class="mindmap-node bg-red-500 text-white p-3 rounded-lg shadow-lg w-40 cursor-move"> |
| <div class="font-semibold">Q4 Goals</div> |
| <div class="text-xs mt-1">Product Launch</div> |
| </div> |
| </div> |
| |
| |
| <div class="fixed bottom-8 right-8"> |
| <button class="w-12 h-12 bg-blue-500 hover:bg-blue-600 text-white rounded-full shadow-lg flex items-center justify-center transition transform hover:scale-110"> |
| <i class="fas fa-plus text-xl"></i> |
| </button> |
| </div> |
| |
| |
| </div> |
| |
| |
| <div class="bg-white border-t border-gray-200 p-2 flex items-center justify-between text-xs text-gray-500"> |
| <div class="flex items-center space-x-4"> |
| <span>Zoom: 100%</span> |
| <span>Nodes: 5</span> |
| </div> |
| <div> |
| <span>MindFlow v1.0.0</span> |
| </div> |
| </div> |
| </div> |
| |
| |
| <div class="w-80 bg-white border-l border-gray-200 flex flex-col"> |
| <div class="p-4 border-b border-gray-200"> |
| <h3 class="font-medium">Node Properties</h3> |
| </div> |
| |
| <div class="flex-1 overflow-y-auto p-4"> |
| <div class="space-y-6"> |
| <div> |
| <h4 class="text-sm font-medium text-gray-700 mb-2">Content</h4> |
| <textarea class="w-full border border-gray-300 rounded-md p-2 text-sm focus:ring-blue-500 focus:border-blue-500" rows="3">Product Roadmap</textarea> |
| </div> |
| |
| <div> |
| <h4 class="text-sm font-medium text-gray-700 mb-2">Node Style</h4> |
| <div class="grid grid-cols-5 gap-2"> |
| <div class="w-8 h-8 bg-blue-500 rounded-md cursor-pointer border-2 border-blue-600"></div> |
| <div class="w-8 h-8 bg-green-500 rounded-md cursor-pointer"></div> |
| <div class="w-8 h-8 bg-purple-500 rounded-md cursor-pointer"></div> |
| <div class="w-8 h-8 bg-yellow-500 rounded-md cursor-pointer"></div> |
| <div class="w-8 h-8 bg-red-500 rounded-md cursor-pointer"></div> |
| </div> |
| </div> |
| |
| <div> |
| <h4 class="text-sm font-medium text-gray-700 mb-2">Text Style</h4> |
| <div class="flex space-x-2"> |
| <button class="p-1 border border-gray-300 rounded"> |
| <i class="fas fa-bold"></i> |
| </button> |
| <button class="p-1 border border-gray-300 rounded"> |
| <i class="fas fa-italic"></i> |
| </button> |
| <button class="p-1 border border-gray-300 rounded"> |
| <i class="fas fa-underline"></i> |
| </button> |
| </div> |
| <div class="mt-2"> |
| <select class="w-full border border-gray-300 rounded-md p-1 text-sm"> |
| <option>Arial</option> |
| <option>Helvetica</option> |
| <option>Times New Roman</option> |
| </select> |
| </div> |
| </div> |
| |
| <div> |
| <h4 class="text-sm font-medium text-gray-700 mb-2">Icons</h4> |
| <div class="grid grid-cols-5 gap-2"> |
| <div class="w-8 h-8 flex items-center justify-center bg-gray-100 rounded-md cursor-pointer"> |
| <i class="fas fa-check text-gray-600"></i> |
| </div> |
| <div class="w-8 h-8 flex items-center justify-center bg-gray-100 rounded-md cursor-pointer"> |
| <i class="fas fa-star text-gray-600"></i> |
| </div> |
| <div class="w-8 h-8 flex items-center justify-center bg-gray-100 rounded-md cursor-pointer"> |
| <i class="fas fa-flag text-gray-600"></i> |
| </div> |
| <div class="w-8 h-8 flex items-center justify-center bg-gray-100 rounded-md cursor-pointer"> |
| <i class="fas fa-heart text-gray-600"></i> |
| </div> |
| <div class="w-8 h-8 flex items-center justify-center bg-gray-100 rounded-md cursor-pointer"> |
| <i class="fas fa-bolt text-gray-600"></i> |
| </div> |
| </div> |
| </div> |
| |
| <div> |
| <h4 class="text-sm font-medium text-gray-700 mb-2">Attachments</h4> |
| <div class="border border-dashed border-gray-300 rounded-md p-4 text-center"> |
| <i class="fas fa-cloud-upload-alt text-gray-400 text-2xl mb-2"></i> |
| <p class="text-xs text-gray-500">Drag & drop files here</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| <div class="p-4 border-t border-gray-200"> |
| <button class="w-full bg-gray-100 hover:bg-gray-200 text-gray-800 py-2 px-4 rounded-md flex items-center justify-center space-x-2 transition"> |
| <i class="fas fa-question-circle"></i> |
| <span>Help & Feedback</span> |
| </button> |
| </div> |
| </div> |
| </div> |
|
|
| <script> |
| |
| document.addEventListener('DOMContentLoaded', function() { |
| |
| const nodes = document.querySelectorAll('.mindmap-node'); |
| nodes.forEach(node => { |
| node.addEventListener('mouseenter', () => { |
| node.classList.add('animate-pulse-slow'); |
| }); |
| node.addEventListener('mouseleave', () => { |
| node.classList.remove('animate-pulse-slow'); |
| }); |
| }); |
| |
| |
| setTimeout(() => { |
| const centralNode = document.querySelector('.mindmap-node.bg-blue-500'); |
| const centralRect = centralNode.getBoundingClientRect(); |
| const centralX = centralRect.left + centralRect.width / 2; |
| const centralY = centralRect.top + centralRect.height / 2; |
| |
| nodes.forEach(node => { |
| if (!node.classList.contains('bg-blue-500')) { |
| const nodeRect = node.getBoundingClientRect(); |
| const nodeX = nodeRect.left + nodeRect.width / 2; |
| const nodeY = nodeRect.top + nodeRect.height / 2; |
| |
| const length = Math.sqrt(Math.pow(nodeX - centralX, 2) + Math.pow(nodeY - centralY, 2)); |
| const angle = Math.atan2(nodeY - centralY, nodeX - centralX) * 180 / Math.PI; |
| |
| const connection = document.createElement('div'); |
| connection.className = 'node-connection'; |
| connection.style.width = `${length}px`; |
| connection.style.height = '2px'; |
| connection.style.left = `${centralX}px`; |
| connection.style.top = `${centralY}px`; |
| connection.style.transform = `rotate(${angle}deg)`; |
| |
| document.querySelector('.mindmap-container').appendChild(connection); |
| } |
| }); |
| }, 500); |
| }); |
| </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=fenglui/mindflow" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body> |
| </html> |