moreiraj93 commited on
Commit
5bc3834
·
verified ·
1 Parent(s): fb763f8

AI Showcase Website Blueprint

Browse files

Purpose: Build a modern, 3D-accented website to showcase and sell high‑quality AI images and videos. Features include galleries for images/videos, upload pipelines (image→image, image→video, text→image), a prompt processor and prompt-package product, a prompt marketplace, a product storefront (pricing $300–$6,300 for assets), cart + checkout, an admin dashboard, and ad‑style sidebar artwork. The color palette should prominently include red, green, and blue and the site should feel sleek, modern and slightly 3D.

1 — Goals & success metrics

Showcase the quality of your AI outputs and convert visitors into buyers.

Provide on-site tools so visitors can experiment (image→image, image→video, text→image, prompt processor).

Monetize via one‑time asset sales ($300–$6,300), prompt packs ($10.99), and optional licensing/ads.

Keep purchase flow tight: view → add to cart → checkout → deliver.

Maintain brand quality, fast media delivery, secure payments, easy admin upload + moderation.

Key metrics to track: conversion rate, average order value, number of prompt pack purchases, repeat buyers, page load time, gallery upload success rate.

2 — Target audience

Marketers and agencies buying ad‑grade images/videos.

Content creators and social advertisers needing quick, scalable creative.

Designers who want high-quality base assets.

3 — Information architecture (site map)

Home (hero, top selling assets, CTA to gallery, value props)

Gallery (browse images + videos, filters, search, collections)

Processors (subpages/tabs):

Image → Image (upload source image, choose style/preset, run)

Image → Video (upload image sequence or single image + animation presets)

Text → Image (text prompt input, presets, variations)

Prompt Processor (refine and test prompts, variables, batch runs)

Store / Marketplace (products, prompt packs, licensing details)

Product page (detailed media preview, price, license options, add to cart)

Upload / My Uploads (user dashboard: uploaded assets, drafts, purchases)

Checkout (cart, payment, licensing, download links)

Sell Your Art (page for other artists to submit/sell — optional)

About / Tech (explain your AI, ethics, how it’s “perfect”)

Admin (private: approval queue, orders, analytics, content moderation)

Legal (TOS, Privacy, Refunds, IP & Licenses)

Footer (contact, social, newsletter)

4 — Page-by-page functional blueprint
Home

Full-bleed hero with a looping promotional video (autoplay muted) + tagline.

Quick CTA buttons: Explore Gallery, Try Processors, Buy Prompt Pack.

Horizontal ad‑style sidebar component showing rotating art thumbnails (clickable).

Showcase carousel of "Top sellers" and "Latest uploads" with 3D card tilt effect.

Gallery

Grid of media cards (masonry or uniform grid) with lazy loading and infinite scroll / pagination.

Filters: Media type, Orientation, Color, Price range, Tags, Popularity, License type.

Quick preview modal on click (large image / video player, metadata, price, add to cart).

Upload button (for authenticated creators) wired to the Upload flow.

Bulk actions (for admin): feature/remove, flag, assign collection.

Product Page

High-resolution media viewer with zoom, fullscreen, and quick play for video.

Price selector (if multiple license tiers exist: personal, commercial, exclusive).

Purchase CTA and sample legal license text snippet.

Related media carousel and recommended bundles (e.g., the same style video + 3 stills).

Processors

Image→Image: Upload/drag-drop source photo, pick style preset (or custom), slider for strength, run button, result gallery of variations.

Image→Video: Upload image(s) or single image + animation presets (parallax, camera move, particle overlay). Output formats and frame rates selection.

Text→Image: Prompt textarea, prompt templates/presets, negative prompts, seed control, variation count, run.

All processors should support job queueing with progress UI and notifications (email or in‑app).

Prompt Processor & Prompt Pack Store

Visual prompt editor: named prompts, variables/slots, randomized variables, preview thumbnail generator.

Pack product page: description, price ($10.99), what's included (100 prompts), sample prompts, add to cart.

Allow one‑click apply of saved prompts into the Text→Image tool.

Upload / Dashboard

Upload wizard: metadata (title, tags, price, license, orientation, categories), preview, watermark toggle for marketplace display.

Orders and downloads: list of purchases with invoice links and download tokens.

Checkout & Payments

Cart page with editable quantities (if selling multiples/licensing), promo code input.

Stripe integration (Stripe Checkout + webhooks) for card & Apple/Google Pay.

After successful purchase, generate secure expiring download links or S3 signed URLs and an invoice.

Admin

Approval queue for uploaded content, flagging system, order management, user management, analytics view.

5 — Design system & UI guidelines
Colors

Three primary accent colors: Red (#E53935), Green (#00C853), and Blue (#1976D2) — use them as accents (buttons, highlights, badges). Keep main backgrounds neutral (very dark slate or near-white depending on dark/light theme).

Use gradients blending the three for hero areas (e.g., subtle diagonal gradient that transitions between blue→green→red).

Typography

Headline: bold, geometric sans (e.g., Inter / Poppins / Montserrat).

Body: a readable sans (Inter/Roboto). Large line-height for captions under images.

Visual Language

3D feel via soft shadows, card tilt on hover, subtle parallax backgrounds, and rotation for featured cards using transform: perspective().

Use subtle glassmorphism for overlays (blur + semi-transparent) to allow media to shine.

Buttons: rounded 2xl, subtle shadow, micro-interactions (press, hover glow using accent color).

Components

3D Media Card: image/video thumbnail, title, price, short tags, hover actions (preview, add to cart, favorite).

Preview Modal: large canvas, metadata sidebar, buy CTA, social share buttons.

Processor Console: prompt history, presets, run button, result thumbnails.

Ad Sidebar: vertically stacked cards with auto-scroll and manual controls.

6 — Data model (suggested)

User { id, name, email, role, stripeCustomerId, createdAt }

Asset { id, ownerId, title, description, type(image|video), src, thumbnail, tags[], price, licenseType, featured, createdAt, metadata{width,height,duration} }

Prompt { id, ownerId, title, promptText, variables[], tags[], examples[] }

Order { id, userId, items[{assetId, price, license}], total, status, stripePaymentId, createdAt }

PromptPack { id, title, price, promptIds[], description }

Job { id, userId, type, input, status(queued|running|done|error), resultLocation, createdAt }

7 — Tech stack recommendations

Frontend

Framework: Next.js (React) — for SSR/SEO and API routes.

Styling: Tailwind CSS + custom 3D utility classes.

3D / interactions: Three.js or Framer Motion + React Spring for cards and micro-3D.

Backend

Server: Node.js + Express or serverless functions (Vercel/Netlify/Cloudflare Workers).

DB: PostgreSQL (for transactional data) or MongoDB (if you prefer schemaless asset metadata).

Storage: AWS S3 (or DigitalOcean Spaces) + CloudFront for CDN.

Queue: BullMQ / Redis (for job queueing of AI processing) or managed worker queues.

AI / Inference

Option A — Self-hosted: use GPU servers (NVIDIA A100/RTX series) with containerized inference (Docker + Triton/torchserve) to run models like Stable Diffusion, ControlNet, or custom diffusion/video models.

Option B — API-first: use services like Replicate/RunPod/Third-party hosted inference to avoid infra overhead.

For video: use frame interpolation tools (RIFE) and video synthesis pipelines; consider using FFmpeg for encoding and packaging.

Payments & Billing

Stripe (Checkout + webhooks) for payments, subscriptions, and invoices.

Tax handling: Stripe Tax or manual tax integrations.

Monitoring & Analytics

Google Analytics / Plausible / Posthog for behavior analytics.

Sentry for error monitoring.

Deployment

Frontend on Vercel (Next.js) or Netlify; Backend on Vercel Serverless functions or a managed Node host. AI inference on dedicated GPU servers (AWS EC2 / GCP / Paperspace / Lambda GPU solutions).

8 — AI processing pipeline (high-level)

Receive job (user submits prompt or upload).

Validate & queue (rate limits, user quota, content filters).

Run inference (model + presets) on a GPU worker; for image→video chain: generate frames, compose, apply motion effects.

Postprocess (denoise, color grade, add watermark if preview mode, compress to target sizes via FFmpeg / imagemagick).

Store output (S3 + CDN) and update job status.

Notify user (in-app notification and optional email). Provide download link with limited lifetime for purchased assets.

Scaling note: separate GPU workers for heavy inference; use autoscaling groups or managed providers for burst capacity.

9 — Licensing & pricing strategy

Base price range: $300 — $6,300 per asset. Provide clear license tiers:

Files changed (6) hide show
  1. components/footer.js +2 -1
  2. components/navbar.js +3 -5
  3. index.html +56 -50
  4. prompt-packs.html +124 -0
  5. script.js +53 -18
  6. style.css +1 -16
components/footer.js CHANGED
@@ -80,10 +80,11 @@ class CustomFooter extends HTMLElement {
80
  <li><a href="/gallery.html">Gallery</a></li>
81
  <li><a href="/processors.html">AI Processors</a></li>
82
  <li><a href="/marketplace.html">Marketplace</a></li>
 
83
  <li><a href="/about.html">About Us</a></li>
84
  </ul>
85
  </div>
86
- <div class="footer-column">
87
  <h3>Resources</h3>
88
  <ul>
89
  <li><a href="/blog.html">Blog</a></li>
 
80
  <li><a href="/gallery.html">Gallery</a></li>
81
  <li><a href="/processors.html">AI Processors</a></li>
82
  <li><a href="/marketplace.html">Marketplace</a></li>
83
+ <li><a href="/prompt-packs.html">Prompt Packs</a></li>
84
  <li><a href="/about.html">About Us</a></li>
85
  </ul>
86
  </div>
87
+ <div class="footer-column">
88
  <h3>Resources</h3>
89
  <ul>
90
  <li><a href="/blog.html">Blog</a></li>
components/navbar.js CHANGED
@@ -69,10 +69,7 @@ class CustomNavbar extends HTMLElement {
69
  align-items: center;
70
  justify-content: center;
71
  }
72
- .hidden {
73
- display: none;
74
- }
75
- @media (max-width: 768px) {
76
  nav {
77
  flex-direction: column;
78
  padding: 1rem;
@@ -90,13 +87,14 @@ class CustomNavbar extends HTMLElement {
90
  <li><a href="/gallery.html"><i data-feather="image"></i> Gallery</a></li>
91
  <li><a href="/processors.html"><i data-feather="cpu"></i> Processors</a></li>
92
  <li><a href="/marketplace.html"><i data-feather="shopping-bag"></i> Marketplace</a></li>
 
93
  <li><a href="/cart.html" class="cart-btn">
94
  <i data-feather="shopping-cart"></i>
95
  <span id="cart-count" class="cart-count hidden"></span>
96
  </a></li>
97
  <li><a href="/login.html"><i data-feather="user"></i> Login</a></li>
98
  </ul>
99
- </nav>
100
  `;
101
 
102
  // Watch for cart updates
 
69
  align-items: center;
70
  justify-content: center;
71
  }
72
+ @media (max-width: 768px) {
 
 
 
73
  nav {
74
  flex-direction: column;
75
  padding: 1rem;
 
87
  <li><a href="/gallery.html"><i data-feather="image"></i> Gallery</a></li>
88
  <li><a href="/processors.html"><i data-feather="cpu"></i> Processors</a></li>
89
  <li><a href="/marketplace.html"><i data-feather="shopping-bag"></i> Marketplace</a></li>
90
+ <li><a href="/prompt-packs.html"><i data-feather="package"></i> Prompt Packs</a></li>
91
  <li><a href="/cart.html" class="cart-btn">
92
  <i data-feather="shopping-cart"></i>
93
  <span id="cart-count" class="cart-count hidden"></span>
94
  </a></li>
95
  <li><a href="/login.html"><i data-feather="user"></i> Login</a></li>
96
  </ul>
97
+ </nav>
98
  `;
99
 
100
  // Watch for cart updates
index.html CHANGED
@@ -4,8 +4,7 @@
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>AI Visionary Vault | Premium AI-Generated Assets</title>
7
- <link rel="icon" type="image/x-icon" href="/static/favicon.ico">
8
- <link rel="stylesheet" href="style.css">
9
  <script src="https://cdn.tailwindcss.com"></script>
10
  <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
11
  <script src="https://unpkg.com/feather-icons"></script>
@@ -39,38 +38,40 @@
39
  <section class="py-20 px-4 max-w-7xl mx-auto">
40
  <h2 class="text-3xl font-bold mb-8 text-center">Top Selling Assets</h2>
41
  <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
42
- <div class="bg-gray-800 rounded-xl overflow-hidden shadow-xl hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2 hover:rotate-1 card-tilt">
43
- <img src="http://static.photos/technology/1024x576/42" alt="AI Generated Art" class="w-full h-64 object-cover">
44
- <div class="p-6">
45
- <h3 class="text-xl font-bold mb-2">Cyberpunk Cityscape</h3>
46
- <div class="flex justify-between items-center">
47
- <span class="text-rose-400 font-bold">$450</span>
48
- <button onclick="window.cart.addItem({id: 1, title: 'Cyberpunk Cityscape', price: 450})" class="text-red-400 hover:text-red-300">
49
  <i data-feather="shopping-bag"></i>
50
  </button>
51
  </div>
52
  </div>
53
- <div class="bg-gray-800 rounded-xl overflow-hidden shadow-xl hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2 hover:rotate-1 card-tilt">
54
- <img src="http://static.photos/green/1024x576/43" alt="AI Generated Art" class="w-full h-64 object-cover">
55
- <div class="p-6">
56
- <h3 class="text-xl font-bold mb-2">Ethereal Forest</h3>
57
- <div class="flex justify-between items-center">
58
- <span class="text-green-400 font-bold">$850</span>
59
- <button onclick="window.cart.addItem({id: 2, title: 'Ethereal Forest', price: 850})" class="text-green-400 hover:text-green-300">
60
- <i data-feather="shopping-bag"></i>
61
- </button>
62
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
63
  </div>
64
- <div class="bg-gray-800 rounded-xl overflow-hidden shadow-xl hover:shadow-2xl transition-all duration-300 transform hover:-translate-y-2 hover:rotate-1 card-tilt">
65
- <img src="http://static.photos/blue/1024x576/44" alt="AI Generated Art" class="w-full h-64 object-cover">
66
- <div class="p-6">
67
- <h3 class="text-xl font-bold mb-2">Ocean Dreamscape</h3>
68
- <div class="flex justify-between items-center">
69
- <span class="text-blue-400 font-bold">$1,200</span>
70
- <button onclick="window.cart.addItem({id: 3, title: 'Ocean Dreamscape', price: 1200})" class="text-blue-400 hover:text-blue-300">
71
- <i data-feather="shopping-bag"></i>
72
- </button>
73
- </div>
74
  </div>
75
  </div>
76
  </section>
@@ -79,27 +80,35 @@
79
  <div class="max-w-7xl mx-auto">
80
  <h2 class="text-3xl font-bold mb-8 text-center">AI Processing Power</h2>
81
  <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
82
- <div class="bg-gray-800 p-8 rounded-xl border border-gray-700 hover:border-rose-500 transition-colors card-tilt">
83
  <i data-feather="image" class="w-12 h-12 mb-4 text-rose-500"></i>
84
- <h3 class="text-xl font-bold mb-2">Image to Image</h3>
85
- <p class="mb-4 opacity-80">Transform your photos with AI-powered style transfer</p>
86
- <a href="/processors.html#image-to-image" class="text-rose-400 hover:text-rose-300 flex items-center">
 
 
 
 
 
 
 
 
87
  Try now <i data-feather="arrow-right" class="ml-2"></i>
88
  </a>
89
  </div>
90
- <div class="bg-gray-800 p-8 rounded-xl border border-gray-700 hover:border-green-500 transition-colors card-tilt">
91
- <i data-feather="video" class="w-12 h-12 mb-4 text-green-500"></i>
92
- <h3 class="text-xl font-bold mb-2">Image to Video</h3>
93
- <p class="mb-4 opacity-80">Bring your images to life with AI animation</p>
94
- <a href="/processors.html#image-to-video" class="text-green-400 hover:text-green-300 flex items-center">
95
  Try now <i data-feather="arrow-right" class="ml-2"></i>
96
  </a>
97
  </div>
98
- <div class="bg-gray-800 p-8 rounded-xl border border-gray-700 hover:border-blue-500 transition-colors card-tilt">
99
- <i data-feather="type" class="w-12 h-12 mb-4 text-blue-500"></i>
100
- <h3 class="text-xl font-bold mb-2">Text to Image</h3>
101
- <p class="mb-4 opacity-80">Generate stunning visuals from text descriptions</p>
102
- <a href="/processors.html#text-to-image" class="text-blue-400 hover:text-blue-300 flex items-center">
103
  Try now <i data-feather="arrow-right" class="ml-2"></i>
104
  </a>
105
  </div>
@@ -108,12 +117,13 @@
108
  </main>
109
 
110
  <custom-footer></custom-footer>
 
111
  <!-- Component Scripts -->
112
  <script src="components/navbar.js"></script>
113
  <script src="components/footer.js"></script>
114
  <script src="components/ad-sidebar.js"></script>
115
- <ad-sidebar></ad-sidebar>
116
- <script src="script.js"></script>
117
  <script>
118
  feather.replace();
119
  VANTA.GLOBE({
@@ -130,10 +140,6 @@
130
  size: 0.8
131
  });
132
  </script>
133
- <script>
134
- // Initialize cart count
135
- window.cart = new ShoppingCart();
136
- window.cart.updateCartCount();
137
- </script>
138
  </body>
139
  </html>
 
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>AI Visionary Vault | Premium AI-Generated Assets</title>
7
+ <link rel="stylesheet" href="style.css">
 
8
  <script src="https://cdn.tailwindcss.com"></script>
9
  <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
10
  <script src="https://unpkg.com/feather-icons"></script>
 
38
  <section class="py-20 px-4 max-w-7xl mx-auto">
39
  <h2 class="text-3xl font-bold mb-8 text-center">Top Selling Assets</h2>
40
  <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
41
+ <div class="card-tilt bg-gray-800 rounded-xl overflow-hidden shadow-xl hover:shadow-2xl transition-all duration-300">
42
+ <img src="http://static.photos/technology/1024x576/42" alt="Cyberpunk Cityscape" class="w-full h-64 object-cover">
43
+ <div class="p-6">
44
+ <h3 class="text-xl font-bold mb-2">Cyberpunk Cityscape</h3>
45
+ <div class="flex justify-between items-center">
46
+ <span class="text-rose-400 font-bold">$450</span>
47
+ <button class="text-red-400 hover:text-red-300" onclick="window.cart.addItem({id: 1, title: 'Cyberpunk Cityscape', price: 450})">
48
  <i data-feather="shopping-bag"></i>
49
  </button>
50
  </div>
51
  </div>
52
+ </div>
53
+ <div class="card-tilt bg-gray-800 rounded-xl overflow-hidden shadow-xl hover:shadow-2xl transition-all duration-300">
54
+ <img src="http://static.photos/nature/1024x576/43" alt="Ethereal Landscape" class="w-full h-64 object-cover">
55
+ <div class="p-6">
56
+ <h3 class="text-xl font-bold mb-2">Ethereal Landscape</h3>
57
+ <div class="flex justify-between items-center">
58
+ <span class="text-green-400 font-bold">$890</span>
59
+ <button class="text-green-400 hover:text-green-300" onclick="window.cart.addItem({id: 2, title: 'Ethereal Landscape', price: 890})">
60
+ <i data-feather="shopping-bag"></i>
61
+ </button>
62
+ </div>
63
+ </div>
64
+ </div>
65
+ <div class="card-tilt bg-gray-800 rounded-xl overflow-hidden shadow-xl hover:shadow-2xl transition-all duration-300">
66
+ <img src="http://static.photos/abstract/1024x576/44" alt="Fractal Dreams" class="w-full h-64 object-cover">
67
+ <div class="p-6">
68
+ <h3 class="text-xl font-bold mb-2">Fractal Dreams</h3>
69
+ <div class="flex justify-between items-center">
70
+ <span class="text-blue-400 font-bold">$1,200</span>
71
+ <button class="text-blue-400 hover:text-blue-300" onclick="window.cart.addItem({id: 3, title: 'Fractal Dreams', price: 1200})">
72
+ <i data-feather="shopping-bag"></i>
73
+ </button>
74
  </div>
 
 
 
 
 
 
 
 
 
 
75
  </div>
76
  </div>
77
  </section>
 
80
  <div class="max-w-7xl mx-auto">
81
  <h2 class="text-3xl font-bold mb-8 text-center">AI Processing Power</h2>
82
  <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
83
+ <div class="card-tilt bg-gray-800 p-8 rounded-xl border border-gray-700 hover:border-rose-500 transition-all">
84
  <i data-feather="image" class="w-12 h-12 mb-4 text-rose-500"></i>
85
+ <h3 class="text-xl font-bold mb-2">Image to Image</h3>
86
+ <p class="mb-4 opacity-80">Transform your photos with AI-powered style transfer</p>
87
+ <a href="/processors.html#image-to-image" class="text-rose-400 hover:text-rose-300 flex items-center">
88
+ Try now <i data-feather="arrow-right" class="ml-2"></i>
89
+ </a>
90
+ </div>
91
+ <div class="card-tilt bg-gray-800 p-8 rounded-xl border border-gray-700 hover:border-green-500 transition-all">
92
+ <i data-feather="video" class="w-12 h-12 mb-4 text-green-500"></i>
93
+ <h3 class="text-xl font-bold mb-2">Image to Video</h3>
94
+ <p class="mb-4 opacity-80">Animate still images with motion and effects</p>
95
+ <a href="/processors.html#image-to-video" class="text-green-400 hover:text-green-300 flex items-center">
96
  Try now <i data-feather="arrow-right" class="ml-2"></i>
97
  </a>
98
  </div>
99
+ <div class="card-tilt bg-gray-800 p-8 rounded-xl border border-gray-700 hover:border-blue-500 transition-all">
100
+ <i data-feather="type" class="w-12 h-12 mb-4 text-blue-500"></i>
101
+ <h3 class="text-xl font-bold mb-2">Text to Image</h3>
102
+ <p class="mb-4 opacity-80">Generate stunning visuals from text descriptions</p>
103
+ <a href="/processors.html#text-to-image" class="text-blue-400 hover:text-blue-300 flex items-center">
104
  Try now <i data-feather="arrow-right" class="ml-2"></i>
105
  </a>
106
  </div>
107
+ <div class="card-tilt bg-gray-800 p-8 rounded-xl border border-gray-700 hover:border-rose-500 transition-all">
108
+ <i data-feather="code" class="w-12 h-12 mb-4 text-rose-500"></i>
109
+ <h3 class="text-xl font-bold mb-2">Prompt Processor</h3>
110
+ <p class="mb-4 opacity-80">Refine and optimize your AI prompts</p>
111
+ <a href="/processors.html#prompt-processor" class="text-rose-400 hover:text-rose-300 flex items-center">
112
  Try now <i data-feather="arrow-right" class="ml-2"></i>
113
  </a>
114
  </div>
 
117
  </main>
118
 
119
  <custom-footer></custom-footer>
120
+
121
  <!-- Component Scripts -->
122
  <script src="components/navbar.js"></script>
123
  <script src="components/footer.js"></script>
124
  <script src="components/ad-sidebar.js"></script>
125
+
126
+ <script src="script.js"></script>
127
  <script>
128
  feather.replace();
129
  VANTA.GLOBE({
 
140
  size: 0.8
141
  });
142
  </script>
143
+ <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
 
 
 
 
144
  </body>
145
  </html>
prompt-packs.html ADDED
@@ -0,0 +1,124 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en" class="dark">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Prompt Packs | AI Visionary Vault</title>
7
+ <link rel="stylesheet" href="style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
10
+ <script src="https://unpkg.com/feather-icons"></script>
11
+ </head>
12
+ <body class="bg-gray-900 text-gray-100 min-h-screen flex flex-col">
13
+ <custom-navbar></custom-navbar>
14
+
15
+ <main class="flex-grow pt-20">
16
+ <!-- Hero Section -->
17
+ <section class="py-16 px-4 bg-gradient-to-r from-blue-900 via-green-900 to-red-900">
18
+ <div class="max-w-7xl mx-auto text-center">
19
+ <h1 class="text-4xl md:text-6xl font-bold mb-6">
20
+ Premium Prompt Packs
21
+ </h1>
22
+ <p class="text-xl md:text-2xl mb-8 opacity-90">
23
+ Unlock creative potential with expertly crafted AI prompts
24
+ </p>
25
+ </div>
26
+ </section>
27
+
28
+ <!-- Prompt Packs Grid -->
29
+ <section class="py-20 px-4 max-w-7xl mx-auto">
30
+ <h2 class="text-3xl font-bold mb-12 text-center">Featured Collections</h2>
31
+ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
32
+ <!-- Prompt Pack 1 -->
33
+ <div class="card-tilt bg-gray-800 rounded-2xl overflow-hidden shadow-2xl hover:shadow-3xl transition-all duration-500">
34
+ <img src="http://static.photos/abstract/640x360/101" alt="Abstract Dreams Pack" class="w-full h-48 object-cover">
35
+ <div class="p-6">
36
+ <div class="flex justify-between items-start mb-4">
37
+ <h3 class="text-xl font-bold">Abstract Dreams</h3>
38
+ <span class="bg-red-500 text-white px-3 py-1 rounded-full text-sm">100 Prompts</span>
39
+ </div>
40
+ <p class="mb-4 opacity-80">Create mesmerizing abstract compositions and surreal landscapes</p>
41
+ <div class="flex justify-between items-center">
42
+ <span class="text-2xl font-bold text-red-400">$10.99</span>
43
+ <button onclick="window.cart.addItem({id: 'pack-1', title: 'Abstract Dreams Prompt Pack', price: 10.99})" class="px-6 py-3 bg-red-600 hover:bg-red-700 text-white rounded-full font-bold transition-all transform hover:-translate-y-1">
44
+ Add to Cart
45
+ </button>
46
+ </div>
47
+ </div>
48
+ </div>
49
+
50
+ <!-- Prompt Pack 2 -->
51
+ <div class="card-tilt bg-gray-800 rounded-2xl overflow-hidden shadow-2xl hover:shadow-3xl transition-all duration-500">
52
+ <img src="http://static.photos/cityscape/640x360/102" alt="Urban Futures Pack" class="w-full h-48 object-cover">
53
+ <div class="p-6">
54
+ <div class="flex justify-between items-start mb-4">
55
+ <h3 class="text-xl font-bold">Urban Futures</h3>
56
+ <span class="bg-green-500 text-white px-3 py-1 rounded-full text-sm">85 Prompts</span>
57
+ </div>
58
+ <p class="mb-4 opacity-80">Cyberpunk cities, futuristic architecture, and neon-lit streets</p>
59
+ <div class="flex justify-between items-center">
60
+ <span class="text-2xl font-bold text-green-400">$10.99</span>
61
+ <button onclick="window.cart.addItem({id: 'pack-2', title: 'Urban Futures Prompt Pack', price: 10.99})" class="px-6 py-3 bg-green-600 hover:bg-green-700 text-white rounded-full font-bold transition-all transform hover:-translate-y-1">
62
+ Add to Cart
63
+ </button>
64
+ </div>
65
+ </div>
66
+ </div>
67
+
68
+ <!-- Prompt Pack 3 -->
69
+ <div class="card-tilt bg-gray-800 rounded-2xl overflow-hidden shadow-2xl hover:shadow-3xl transition-all duration-500">
70
+ <img src="http://static.photos/nature/640x360/103" alt="Natural Wonders Pack" class="w-full h-48 object-cover">
71
+ <div class="p-6">
72
+ <div class="flex justify-between items-start mb-4">
73
+ <h3 class="text-xl font-bold">Natural Wonders</h3>
74
+ <span class="bg-blue-500 text-white px-3 py-1 rounded-full text-sm">120 Prompts</span>
75
+ </div>
76
+ <p class="mb-4 opacity-80">Stunning landscapes, wildlife, and nature photography prompts</p>
77
+ <div class="flex justify-between items-center">
78
+ <span class="text-2xl font-bold text-blue-400">$10.99</span>
79
+ <button onclick="window.cart.addItem({id: 'pack-3', title: 'Natural Wonders Prompt Pack', price: 10.99})" class="px-6 py-3 bg-blue-600 hover:bg-blue-700 text-white rounded-full font-bold transition-all transform hover:-translate-y-1">
80
+ Add to Cart
81
+ </button>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ </section>
86
+
87
+ <!-- Value Proposition -->
88
+ <section class="py-20 px-4 bg-gradient-to-br from-gray-800 to-gray-900">
89
+ <div class="max-w-4xl mx-auto text-center">
90
+ <h2 class="text-3xl font-bold mb-8">Why Choose Our Prompt Packs?</h2>
91
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
92
+ <div class="text-center">
93
+ <i data-feather="zap" class="w-12 h-12 mx-auto mb-4 text-rose-500"></i>
94
+ <h3 class="text-xl font-bold mb-2">Expertly Crafted</h3>
95
+ <p>Each prompt is tested and optimized for best results</p>
96
+ </div>
97
+ <div class="text-center">
98
+ <i data-feather="layers" class="w-12 h-12 mx-auto mb-4 text-green-500"></i>
99
+ <h3 class="text-xl font-bold mb-2">Variable Support</h3>
100
+ <p>Customize prompts with replaceable variables for endless variations</p>
101
+ </div>
102
+ <div class="text-center">
103
+ <i data-feather="trending-up" class="w-12 h-12 mx-auto mb-4 text-blue-500"></i>
104
+ <h3 class="text-xl font-bold mb-2">Consistent Quality</h3>
105
+ <p>Maintain style consistency across all your generated assets</p>
106
+ </div>
107
+ </div>
108
+ </section>
109
+ </main>
110
+
111
+ <custom-footer></custom-footer>
112
+ <ad-sidebar></ad-sidebar>
113
+
114
+ <!-- Component Scripts -->
115
+ <script src="components/navbar.js"></script>
116
+ <script src="components/footer.js"></script>
117
+ <script src="components/ad-sidebar.js"></script>
118
+
119
+ <script src="script.js"></script>
120
+ <script>
121
+ feather.replace();
122
+ </script>
123
+ </body>
124
+ </html>
script.js CHANGED
@@ -46,7 +46,6 @@ class ShoppingCart {
46
  this.items.push(item);
47
  this.saveToLocalStorage();
48
  this.updateCartCount();
49
- this.showAddToCartToast(item.title);
50
  }
51
 
52
  removeItem(index) {
@@ -61,26 +60,62 @@ class ShoppingCart {
61
 
62
  updateCartCount() {
63
  const count = this.items.length;
64
- const cartCountElements = document.querySelectorAll('#cart-count');
65
- cartCountElements.forEach(element => {
66
- element.textContent = count;
67
- count > 0 ? element.classList.remove('hidden') : element.classList.add('hidden');
68
- });
69
- }
70
-
71
- showAddToCartToast(itemTitle) {
72
- // Create toast notification
73
- const toast = document.createElement('div');
74
- toast.className = 'fixed top-20 right-4 bg-green-500 text-white px-4 py-2 rounded-lg shadow-lg z-50';
75
- toast.textContent = `Added "${itemTitle}" to cart`;
76
- document.body.appendChild(toast);
77
 
78
- setTimeout(() => {
79
- toast.remove();
80
- }, 3000);
 
81
  }
82
  }
83
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
  // Initialize cart on page load
85
  window.cart = new ShoppingCart();
86
- window.cart.updateCartCount();
 
46
  this.items.push(item);
47
  this.saveToLocalStorage();
48
  this.updateCartCount();
 
49
  }
50
 
51
  removeItem(index) {
 
60
 
61
  updateCartCount() {
62
  const count = this.items.length;
63
+ // Update navbar cart count
64
+ const cartCountElement = document.getElementById('cart-count');
65
+ if (cartCountElement) {
66
+ cartCountElement.textContent = count;
67
+ count > 0 ? cartCountElement.classList.remove('hidden') : cartCountElement.classList.add('hidden');
68
+ }
 
 
 
 
 
 
 
69
 
70
+ // Dispatch event for other components to listen to
71
+ document.dispatchEvent(new CustomEvent('cartUpdated', {
72
+ detail: { items: this.items, count: count }
73
+ }));
74
  }
75
  }
76
 
77
+ // Enhanced card tilt effect with color accents
78
+ document.addEventListener('DOMContentLoaded', function() {
79
+ // Lazy loading for images
80
+ const lazyImages = document.querySelectorAll('img[data-src]');
81
+
82
+ const lazyLoad = (target) => {
83
+ const io = new IntersectionObserver((entries, observer) => {
84
+ entries.forEach(entry => {
85
+ if (entry.isIntersecting) {
86
+ const img = entry.target;
87
+ img.src = img.dataset.src;
88
+ observer.unobserve(img);
89
+ }
90
+ });
91
+ });
92
+ io.observe(target);
93
+ };
94
+
95
+ lazyImages.forEach(lazyLoad);
96
+
97
+ // Add enhanced tilt effect to cards with color matching
98
+ document.querySelectorAll('.card-tilt').forEach(card => {
99
+ const accentColor = getComputedStyle(card).borderColor || '#f43f5e';
100
+
101
+ card.addEventListener('mousemove', (e) => {
102
+ const x = e.clientX - card.getBoundingClientRect().left;
103
+ const y = e.clientY - card.getBoundingClientRect().top;
104
+ const midX = card.clientWidth / 2;
105
+ const midY = card.clientHeight / 2;
106
+ const angleX = (midY - y) / 15;
107
+ const angleY = (x - midX) / 15;
108
+
109
+ card.style.transform = `perspective(1000px) rotateX(${angleX}deg) rotateY(${angleY}deg) scale3d(1.02, 1.02, 1.02)`;
110
+ card.style.boxShadow = `0 25px 50px -12px rgba(0, 0, 0, 0.5), 0 0 0 1px ${accentColor}`;
111
+ });
112
+
113
+ card.addEventListener('mouseleave', () => {
114
+ card.style.transform = 'perspective(1000px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)';
115
+ card.style.boxShadow = '0 10px 25px -3px rgba(0, 0, 0, 0.1)';
116
+ });
117
+ });
118
+ });
119
  // Initialize cart on page load
120
  window.cart = new ShoppingCart();
121
+ window.cart.updateCartCount();
style.css CHANGED
@@ -22,6 +22,7 @@ html {
22
  background: #ff4777;
23
  border-radius: 4px;
24
  }
 
25
  /* Card tilt effect */
26
  .card-tilt {
27
  transform-style: preserve-3d;
@@ -32,22 +33,6 @@ html {
32
  transform: perspective(1000px) rotateX(5deg) rotateY(5deg) translateY(-5px);
33
  }
34
 
35
- /* Enhanced color palette for red, green, blue accents */
36
- .text-rose-400 { color: #E53935; }
37
- .text-green-400 { color: #00C853; }
38
- .text-blue-400 { color: #1976D2; }
39
-
40
- .bg-rose-500 { background-color: #E53935; }
41
- .bg-green-500 { background-color: #00C853; }
42
- .bg-blue-500 { background-color: #1976D2; }
43
-
44
- .hover\:text-rose-300:hover { color: #ef5350; }
45
- .hover\:text-green-300:hover { color: #69f0ae; }
46
- .hover\:text-blue-300:hover { color: #42a5f5; }
47
-
48
- .border-rose-500 { border-color: #E53935; }
49
- .border-green-500 { border-color: #00C853; }
50
- .border-blue-500 { border-color: #1976D2; }
51
  /* Glass morphism */
52
  .glass {
53
  backdrop-filter: blur(10px);
 
22
  background: #ff4777;
23
  border-radius: 4px;
24
  }
25
+
26
  /* Card tilt effect */
27
  .card-tilt {
28
  transform-style: preserve-3d;
 
33
  transform: perspective(1000px) rotateX(5deg) rotateY(5deg) translateY(-5px);
34
  }
35
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
36
  /* Glass morphism */
37
  .glass {
38
  backdrop-filter: blur(10px);