diff --git a/frontend-nextjs/app/components/LandingPage/EndingSection.tsx b/frontend-nextjs/app/components/LandingPage/EndingSection.tsx deleted file mode 100644 index 58f8553..0000000 --- a/frontend-nextjs/app/components/LandingPage/EndingSection.tsx +++ /dev/null @@ -1,71 +0,0 @@ -"use client"; - -import Illustration from "@/public/hero_section.svg"; -import { Button } from "@/components/ui/button"; -import { CalendarCheck, Star } from "lucide-react"; -import { FaDiscord } from "react-icons/fa"; -import Link from "next/link"; -import { - businessDemoLink, - discordInviteLink, - githubPublicLink, -} from "@/lib/data"; -import PreorderButton from "../PreorderButton"; - -export default function EndingSection() { - return ( -
-
-

- Bringing creative, personalized stories to toys, plushies and a whole lot - more. -

- -

- Get your Elato today! -

-
- -
-
- - - - -
-
- - - - - - -
-
-
- ); -} diff --git a/frontend-nextjs/app/components/LandingPage/ProductsSection.tsx b/frontend-nextjs/app/components/LandingPage/ProductsSection.tsx index bbb40aa..1598346 100644 --- a/frontend-nextjs/app/components/LandingPage/ProductsSection.tsx +++ b/frontend-nextjs/app/components/LandingPage/ProductsSection.tsx @@ -23,7 +23,7 @@ const products: Product[] = [ name: "Elato AI Device", description: "Transform any toy into an AI companion with any voice and personality with our advanced conversational AI", price: 55, - url: "/products", + url: "https://elatoai.com/products", imageUrl: "/products/device1.jpeg", features: [ "Works with any toy or plushie", @@ -36,8 +36,8 @@ const products: Product[] = [ id: "2", name: "Elato AI Dev Kit", description: "Create custom AI experiences with our developer-friendly kit, complete with sensors and tutorials", - price: 45, - url: "/products/ai-devkit", + price: 65, + url: "https://elatoai.com/products/ai-devkit", imageUrl: "/products/devkit1.png", features: [ "Flash our open source code to your device", diff --git a/frontend-nextjs/app/components/Nav/NavbarDropdownMenu.tsx b/frontend-nextjs/app/components/Nav/NavbarDropdownMenu.tsx index ab41986..35c9c00 100644 --- a/frontend-nextjs/app/components/Nav/NavbarDropdownMenu.tsx +++ b/frontend-nextjs/app/components/Nav/NavbarDropdownMenu.tsx @@ -169,7 +169,7 @@ export function NavbarDropdownMenu({ user, stars }: NavbarMenuButtonProps) {
@@ -187,7 +187,7 @@ export function NavbarDropdownMenu({ user, stars }: NavbarMenuButtonProps) {
diff --git a/frontend-nextjs/app/components/PreorderButton.tsx b/frontend-nextjs/app/components/PreorderButton.tsx deleted file mode 100644 index f996bf2..0000000 --- a/frontend-nextjs/app/components/PreorderButton.tsx +++ /dev/null @@ -1,45 +0,0 @@ -"use client"; - -import { Button } from "@/components/ui/button"; -import Link from "next/link"; -import { ShoppingCart } from "lucide-react"; -import { cn } from "@/lib/utils"; - -interface PreorderButtonProps { - size: "sm" | "lg"; - buttonText: string; - className?: string; - iconOnMobile?: boolean; -} - -const PreorderButton = ({ - size, - buttonText, - className, - iconOnMobile, -}: PreorderButtonProps) => { - const textSize = size == "sm" ? "text-sm" : "text-base"; - return ( - - - - ); -}; - -export default PreorderButton; diff --git a/frontend-nextjs/app/components/ProductsAndSub.tsx b/frontend-nextjs/app/components/ProductsAndSub.tsx deleted file mode 100644 index d257177..0000000 --- a/frontend-nextjs/app/components/ProductsAndSub.tsx +++ /dev/null @@ -1,233 +0,0 @@ -import { Badge } from "@/components/ui/badge"; -import { Button } from "@/components/ui/button"; -import { - Card, - CardContent, - CardFooter, - CardHeader, - CardTitle, -} from "@/components/ui/card"; -import { Bird, CheckCircle, Truck } from "lucide-react"; -import Image from "next/image"; -import Link from "next/link"; - -interface Product { - title: string; - description: string; - imageSrc: string; - features: string[]; - components: string[]; - price: number; - paymentLink: string; - originalPrice: number; - shadow: string; -} - -const DeliveryString = "Delivery starting November 2024"; -const SubscriptionString = - "Preorder now to get access to Elato Voice Premium FREE for 2 months. $5/month after."; - -const products: Product[] = [ - { - title: "Elato Toy", - description: - "The Elato toy brings together AI and creative storytelling to create dynamic, personalized stories for children.", - imageSrc: "/images/front_view.png", - features: [ - "Dimensions: 4.5cm x 3.8cm x 1.9cm", - "Unlimited access to Elato characters till we deliver your device", - "On-the-go empathic companion for anyone", - "Access any AI character from the Elato universe", - "Compact and easy to use", - "Customizable to fit any object", - "Over 4 days standby and 6 hours of continuous voice interaction", - "Understand your conversational insights", - ], - components: ["The Elato toy", "USB Type-C cable"], - originalPrice: 89, - price: 57.99, - // paymentLink: "https://buy.stripe.com/5kAg0q8dg9SUcCceUU", - paymentLink: "/products", - shadow: "0 4px 6px rgba(255, 215, 0, 0.2), 0 8px 24px rgba(218, 165, 32, 0.5) !important;", - }, - { - title: "Elato AI DIY Dev Kit", - description: - "The Elato AI Dev Kit is a fully programmable set of components for developers to create their own AI characters and integrate them into their projects.", - imageSrc: "/images/devkit.png", - features: [ - "All hardware components included in your Elato kit. No soldering required.", - "Unlimited access to Elato characters on our website till we deliver your device", - "Tools to create your own AI character", - "Integrate your AI character into your projects", - "Access to the Elato AI SDK", - "Access to the Elato AI Discord community", - ], - components: [ - "Mini ESP32-S3 device", - "Microphone module", - "Speaker module", - "Battery module", - "LED light module", - "Switch", - "USB-C cable", - ], - originalPrice: 69, - price: 45.99, - // paymentLink: "https://buy.stripe.com/eVaeWmdxAc12fOo145", - paymentLink: "/products", - shadow: "0 4px 6px rgba(135, 206, 235, 0.2), 0 8px 24px rgba(70, 130, 180, 0.5) !important;", - }, -]; - -const ProductsAndSub = () => { - const SubscriptionNode = ( -

*{SubscriptionString}

- ); - - return ( -
-
-

Products

-

- Choose the product that best fits your needs. -

-
-
- {products.map((product, index) => ( - - -
- {product.title} -
-
- -
-
- ${product.price} -
-
- ${product.originalPrice} -
-
- - - - -
- -
- - {" "} - {"FREE Shipping over $100"} - - - {"Early Bird"} - -
-
-
- - {product.title} - -

- {product.description} -

-
-
- {SubscriptionNode} -
-
-

- Features -

-
    -
  • - - - - Components in package - - :{" "} - {product.components.map( - (components, index) => ( - - {index + 1}.{" "} - {components} - - ) - )} - -
  • - {product.features.map( - (feature, index) => ( -
  • - - - {feature} - -
  • - ) - )} -
-
-
-
- {DeliveryString} -
-
-
- ))} -
-
- ); -}; - -export default ProductsAndSub; diff --git a/frontend-nextjs/app/page.tsx b/frontend-nextjs/app/page.tsx index b0ceb8f..efb85cb 100644 --- a/frontend-nextjs/app/page.tsx +++ b/frontend-nextjs/app/page.tsx @@ -46,7 +46,7 @@ export default async function LandingPage() {
- +
diff --git a/frontend-nextjs/app/products/ai-devkit/page.tsx b/frontend-nextjs/app/products/ai-devkit/page.tsx deleted file mode 100644 index d7b9907..0000000 --- a/frontend-nextjs/app/products/ai-devkit/page.tsx +++ /dev/null @@ -1,163 +0,0 @@ -import { Badge } from "@/components/ui/badge"; -import { Truck, Box, Code, BatteryCharging } from "lucide-react"; -import Checkout from "../../components/Order/Checkout"; -import FAQ, { qnaProps } from "../../components/Order/FAQ"; -import Specs from "../../components/Order/Specs"; -import { devkitPaymentLink } from "@/lib/data"; -import YoutubeDemo from "../../components/LandingPage/YoutubeDemo"; -import ProductGallery from "../../components/LandingPage/ProductGallery"; -import { CreditCardIcon, PowerIcon, ShieldCheckIcon, Settings2Icon, FileTextIcon, WifiIcon } from "lucide-react"; - - -const SubtitleText = - "The AI Devkit comes with a fully assembled PCB with an attachable Microspeaker and a 3.7V LiPo battery. Once charged it powers unlimited AI conversations with your AI characters."; - - -const images = [ - { - src: "/products/devkit1.png", - alt: "Elato Device - white", - }, - { - src: "/products/devkit2.png", - alt: "Elato Device - gray", - }, - { - src: "/products/devkit3.png", - alt: "Elato Device - white", - }, - { - src: "/products/devkit4.png", - alt: "Elato Device - gray", - }, - { - src: "/products/devkit5.png", - alt: "Elato Device - black", - }, - { - src: "/products/devkit6.png", - alt: "Elato Device - white", - }, -]; - -const ICON_SIZE = 20; - -const qna: qnaProps[] = [ - { - question: "What is the AI Devkit?", - answer: "The AI Devkit is a fully assembled PCB with an attachable Microspeaker and a 3.7V LiPo battery. Once charged it you can use it to have unlimited AI conversations with your AI characters.", - icon: , - }, - { - question: "Can I burn my own firmware to the AI Devkit?", - answer: "Yes! You can burn your own firmware to the AI Devkit using the Arduino IDE. Our Github highlights the steps to run your firmware, edge server, and backend locally.", - icon: , - }, - { - question: "What is the battery life of the AI Devkit?", - answer: "The AI Devkit has a 3.7V LiPo battery that lasts for 4-6 hours on a single charge. You can charge it using the USB Type-C port on the device.", - icon: , - }, - { - question: "What happens after the 1-month free premium subscription?", - answer: "After your 1-month free trial, you can choose to continue with the premium features for $10/month, or use our free tier with limited usage. We'll remind you before the trial ends, so you can decide what's best for you.", - icon: , - }, - { - question: "How do I set up my Elato?", - answer: "Setting up your Elato is easy. Just press the main button on the device, find the ELATO-DEVICE wifi network, and register your device with your email. You'll be chatting with your favorite AI character in seconds.", - icon: , - }, - { - question: "Can I use Elato AI with any home wifi network?", - answer: "Yes! Elato AI will automatically connect to up to 5 private wifi networks or your phone hotspot. If you are having trouble connecting, please try restarting the device.", - icon: , - }, -]; - -const includedItems = [ - "Fully assembled PCB", - "Speaker", - "3.7V LiPo Battery", - "USB Type-C Charging Cable", - "1 Month FREE Premium Subscription", - "Quick Start Guide", -]; - -const technicalSpecs = [ - "Dimensions: 4cm x 3.8cm x 0.5cm", - "Battery Life: 4+ days standby, 6 hours active use", - "Connectivity: Bluetooth 2.4 GHz, Wi-Fi + Hotspot", - "Access any AI character from Elato", - "Create your AI character with any voice and a bespoke personality", -]; - -export default function Component() { - return ( -
- {/* */} - {/* Hero Section */} -
-
- -
-
-
- - {"Early Bird"} - - - {"Kickstarter Pre-Order!"} - -
-

- AI Dev Kit -

-

- {SubtitleText} -

- -
-
- {/*
- -
*/} - - {/* */} -
- {/* Product Details */} - - {/* Key Features */} - {/* */} - - {/* Testimonials */} - {/* */} - - {/* FAQ Section */} - - - {/* Final CTA */} - {/*
-

- Ready to Meet Your New AI-in-a-Box? -

-

- Order now and start your adventure with Elato AI! -

- -
*/} - - {/* Delivery Notice */} -
-
- ); -} diff --git a/frontend-nextjs/app/products/layout.tsx b/frontend-nextjs/app/products/layout.tsx deleted file mode 100644 index 8226476..0000000 --- a/frontend-nextjs/app/products/layout.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { getOpenGraphMetadata } from "@/lib/utils"; -import { Metadata } from "next"; - -export const metadata: Metadata = { - title: "Products", - description: "Explore our products and find the perfect one for you.", - ...getOpenGraphMetadata("Products"), -}; - -export default async function RootLayout({ - children, -}: { - children: React.ReactNode; -}) { - return ( -
-
{children}
-
- ); -} diff --git a/frontend-nextjs/app/products/page.tsx b/frontend-nextjs/app/products/page.tsx deleted file mode 100644 index 0a7f530..0000000 --- a/frontend-nextjs/app/products/page.tsx +++ /dev/null @@ -1,170 +0,0 @@ -import { Badge } from "@/components/ui/badge"; -import { Truck, Box } from "lucide-react"; -import Checkout from "../components/Order/Checkout"; -import FAQ, { qnaProps } from "../components/Order/FAQ"; -import Specs from "../components/Order/Specs"; -import { DEVICE_COST, ORIGINAL_COST, paymentLink } from "@/lib/data"; -import YoutubeDemo from "../components/LandingPage/YoutubeDemo"; -import ProductGallery from "../components/LandingPage/ProductGallery"; -import { CreditCardIcon, PowerIcon, ShieldCheckIcon, Settings2Icon, FileTextIcon, WifiIcon } from "lucide-react"; - -const SubtitleText = - "All AI characters packed into one fully assembled compact device that can be added to any object."; - -const images = [ - { - src: "/products/device1.jpeg", - alt: "Elato Device - white", - }, - { - src: "/products/device2.jpeg", - alt: "Elato Device - gray", - }, - { - src: "/products/device4.jpeg", - alt: "Elato Device - white", - }, - { - src: "/products/device5.jpeg", - alt: "Elato Device - gray", - }, - { - src: "/products/device6.jpeg", - alt: "Elato Device - black", - }, - { - src: "/products/device7.jpeg", - alt: "Elato Device - white", - }, - { - src: "/products/device8.jpeg", - alt: "Elato Device - gray", - }, -]; - -const ICON_SIZE = 20; - -const includedItems = [ - "The Elato AI Device", - "USB Type-C Charging Cable", - // "Quick Start Guide", - "1 Month FREE Premium Subscription", - "2 Silicone Straps", -]; - -const technicalSpecs = [ - "Dimensions: 4.5cm x 3.8cm x 1.9cm", - "Battery Life: 4+ days standby, 6 hours active use", - "Connectivity: Bluetooth 2.4 GHz, Wi-Fi + Hotspot", - "Access any AI character from Elato", - "Create your AI character with any voice and a bespoke personality", -]; - - -const qna: qnaProps[] = [ - { - question: "What happens after the 1-month free premium subscription?", - answer: "After your 1-month free trial, you can choose to continue with the premium features for $10/month, or use our free tier with limited usage. We'll remind you before the trial ends, so you can decide what's best for you.", - icon: , - }, - { - question: "How do I set up my Elato?", - answer: "Setting up your Elato is easy. Just press the main button on the device, find the ELATO-DEVICE wifi network, and register your device with your email. You'll be chatting with your favorite AI character in seconds.", - icon: , - }, - { - question: "Is my conversation data private and secure?", - answer: "We take your privacy seriously. All conversations are stored securely on our servers. You have full control over your data and can retrieve or delete it at any time. Reach out to us if you have any questions.", - icon: , - }, - { - question: "Can I customize my Elato AI's voice and personality?", - answer: "Yes! You can choose from a variety of voices and personalities for your AI character. As you interact more, it will naturally adapt to your preferences and conversation style.", - icon: , - }, - { - question: "Can I use Elato AI with my documents?", - answer: "We are currently working on a robust Retrieval Augmented Generation (RAG) feature. It will be available very soon!", - icon: , - }, - { - question: "Can I use Elato AI with any home wifi network?", - answer: "Yes! Elato AI will automatically connect to up to 5 private wifi networks or your phone hotspot. If you are having trouble connecting, please try restarting the device.", - icon: , - }, -]; - - -export default function Component() { - return ( -
- {/* */} - {/* Hero Section */} -
-
- -
-
-
- - {"Early Bird"} - - - {"Kickstarter Pre-Order!"} - -
-

- Elato -

-

- {SubtitleText} -

- -

- *Buy now to get access to Elato Premium - FREE for 1 month. Fast shipping in 1 week. -

-
-
-
- -
- - {/* */} -
- {/* Product Details */} - - {/* Key Features */} - {/* */} - - {/* Testimonials */} - {/* */} - - {/* FAQ Section */} - - - {/* Final CTA */} - {/*
-

- Ready to Meet Your New AI-in-a-Box? -

-

- Order now and start your adventure with Elato AI! -

- -
*/} - - {/* Delivery Notice */} -
-
- ); -}