Winekitty is a wine cellar app. Upload your wine list or label and our AI model will figure out the rest. No sign ups or social. Just wine.
What's New
<div class="flex flex-col min-h-screen"> <div class="flex-1 flex gap-8"> <div class="wine-cellar flex-1"> <div class="flex justify-between items-center mb-6"> <div class="flex items-center gap-4"> <h1 id="cellar-title" class="text-2xl font-bold" onclick="editTitle()">My Wine Cellar</h1> </div> <div class="flex gap-2"> <button onclick="showBulkUpload()" class="px-4 py-2 text-sm font-medium text-white bg-indigo-600 hover:bg-indigo-700 rounded-md" > Wine List or Label Upload </button> <button onclick="shareWineCellar()" class="px-4 py-2 text-sm font-medium text-gray-700 bg-gray-100 hover:bg-gray-200 rounded-md" > Share </button> </div> </div> <div class="mt-8 bg-white shadow rounded-lg p-4"> <div class="border-b pb-2 mb-4"> <h3 class="text-xl font-semibold">Standard Storage</h3> </div> <div class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 sm:gap-4 mt-4"> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> </div> </div> <div class="mt-8 bg-white shadow rounded-lg p-4"> <div class="border-b pb-2 mb-4"> <h3 class="text-xl font-semibold">Secondary Storage</h3> </div> <div class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 sm:gap-4 mt-4"> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> </div> </div> <div class="mt-8 bg-white shadow rounded-lg p-4"> <div class="border-b pb-2 mb-4"> <h3 class="text-xl font-semibold">Bulk Storage</h3> </div> <div class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 sm:gap-4 mt-4"> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> <div class="aspect-square border rounded-lg shadow-sm flex items-center justify-center bg-white hover:bg-gray-50 border-gray-300" data-position=""> <button class="text-2xl text-gray-400 hover:text-gray-600" onclick="showBulkUpload()" > + </button> </div> </div> </div> </div> <div class="w-64 bg-white p-6 shadow-sm rounded-lg h-fit"> <h2 class="text-lg font-semibold mb-4">Collection Stats</h2> <div class="space-y-2"> <div class="flex justify-between items-center"> <span class="text-gray-600">Total Bottles</span> <span class="font-medium">0</span> </div> <div class="flex justify-between items-center"> <span class="text-gray-600">Red</span> <span class="font-medium">0</span> </div> <div class="flex justify-between items-center"> <span class="text-gray-600">White</span> <span class="font-medium">0</span> </div> <div class="flex justify-between items-center"> <span class="text-gray-600">Champagne</span> <span class="font-medium">0</span> </div> <div class="flex justify-between items-center"> <span class="text-gray-600">Sparkling</span> <span class="font-medium">0</span> </div> <div class="flex justify-between items-center"> <span class="text-gray-600">Rosé</span> <span class="font-medium">0</span> </div> </div> </div> </div> <div class="mt-8 pb-6 flex justify-between"> <p class="text-sm text-gray-600"><a href="mailto:hi@winekitty.com">hi@winekitty.com</a></p> <button onclick="resetConfig()" class="px-4 py-2 text-sm font-medium text-gray-700 bg-gray-100 hover:bg-gray-200 rounded-md" > Reset Wine Cellar </button> </div> </div>