Replaces hello@auraajenticai.cloud with ceo@auraajenticai.cloud across every
display/mailto surface (nav CTA, contact page, direct-contact card, JSON-LD),
and adds +8801911877091 as a real WhatsApp contact channel (click-to-chat
link on the Contact page and the home page's Direct card, plus telephone in
the Organization schema). The contact form itself is unaffected — it already
posts to a separate address via formsubmit.co, not through this email.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Both were already running for our own brand and sold through the client
portal, but neither appeared on the public site — so the two services with
the clearest proof behind them were invisible to anyone reading it.
The bundle is deliberately positioned as one accountable team for the whole
chain (storefront, bot, courier, posts, ads) rather than five vendors,
because that is exactly how we run Glamour's Touch.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The bot has been running on our own shop for weeks but was missing from
the services list entirely. The demo link opens a real WhatsApp chat with
it, pre-filled with a product question, so a visitor sees the actual
answer — photo, real price, real discount — in about ten seconds.
Also corrects the Glamour's Touch case study, which listed a Next.js and
Stripe stack it has never used; it is React + Vite + Supabase, sells cash
on delivery, and now runs the bot and the daily auto-posts.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
One MCP connector for every BD courier (Steadfast + Pathao) — add to Claude,
book & track parcels from a conversation. Links to the live showcase + repo.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Replace non-existent n8n webhook with Formsubmit AJAX endpoint.
Zero backend required — first submission triggers Gmail verification,
after that all inquiries arrive as formatted table emails.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
snehalata.com domain not yet registered — use production Vercel URL
until custom domain is configured.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add Snehalata (AI clothing ecosystem) to ownProducts in data.jsx
- Redesign FlagshipProduct section: single-product -> scalable multi-product grid
- New OwnProductCard component: color-coded per product, features, stack, CTAs
- Section header updated to be generic (not GlamourTouch-specific)
- Bottom nudge: 'Want Aura to build your product? From $499'
- Both snehalata.com and glamourstouch.com now showcased side by side
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
GlamourTouch is a real live product — remove fake browser chrome,
fake product category boxes, and made-up stats. Replace with clean
brand identity panel: real gradient name, live pulse badge, and
direct glamourstouch.com link. Updated description to 'Not a demo.
A real business.'
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- New 'In-House Product' section on homepage between Projects & AgentShowcase
- Full FlagshipProduct component with browser-chrome mockup, live store badge,
gradient brand display, feature list, stack pills, and CTAs
- Bottom nudge bar: "Want a store like this? Starter from $499"
- Updated web-app-dev demo URL to glamourstouch.com (real live store)
- Added ownProducts data to PORTFOLIO_DATA
- Added products meta tag for SEO
- Responsive: single-column on mobile (< 860px)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Public API returns {id, demo, repo} but merge was reading
{serviceId, demoUrl, gitRepo} — so dashboard links never applied.
Homepage service cards will now show Demo/Repo from Control Center.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Was hardcoded "Six services" — now reads from live services array.
Dashboard থেকে service add/remove করলে homepage headline auto-update হবে।
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fetch published posts from /api/public/blog (10-min sessionStorage cache)
- Fall back to PORTFOLIO_DATA.blogArticles if API is unavailable or empty
- Preserves all existing display logic unchanged
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- index.html: JSON-LD Organization + Services ItemList schema, Plausible
Analytics, canonical link
- app.jsx: dynamic document.title + meta description/OG per hash route;
service detail routing (services/:id → ServiceDetailPage)
- pages.jsx: ServiceDetailPage with hero, metric, use cases (3 per
service), process timeline, highlights, and CTA; registered on window
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Testimonials section on home page (4 client quotes with service tags)
- Pricing page (#/pricing) — 3 tiers: Starter $499 / Growth $1499 / Enterprise custom
- Blog page (#/blog) — 4 articles with full content and category tags
- Nav: Services | Pricing | Blog | Timeline | Contact (conversion-focused)
- Contact form now POSTs to dashboard API (real email via Resend)
- PricingPage + BlogPage exposed as window globals
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Live Demo button appears when svc.demo exists,
View Repo button appears when svc.repo exists.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Kept HEAD version: active link highlighting + #/ hash routes
Discarded origin: simpler version without active states
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- mergeServices() maps API data (demoUrl, gitRepo, isActive) onto local static data
- sessionStorage cache (5 min TTL) like nav links
- GitHub button becomes a link when gitRepo is set
- Falls back to PORTFOLIO_DATA.services if API is unavailable
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Merge mobile-responsive hamburger nav with dynamic API links
- Add ChatboxWidget from dashboard public API
- Nav fetches links from /api/public/links with sessionStorage cache
- Chatbox checks business hours, proxies to AI via dashboard
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add ChatboxWidget component (src/chatbox.jsx) with business hours check
- Update nav.jsx to fetch links dynamically from /api/public/links
- Wire ChatboxWidget into app.jsx
- Add chatbox.jsx script tag to index.html
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>