diff --git a/src/components/page-shell.tsx b/src/components/page-shell.tsx index 88972d3..5551a97 100644 --- a/src/components/page-shell.tsx +++ b/src/components/page-shell.tsx @@ -1,4 +1,4 @@ -import { createFileRoute, Link } from "@tanstack/react-router"; +import { Link } from "@tanstack/react-router"; import { ArrowUpRight, type LucideIcon } from "lucide-react"; export function PageHero({ eyebrow, title, lede }: { eyebrow: string; title: string; lede?: string }) { @@ -6,9 +6,7 @@ export function PageHero({ eyebrow, title, lede }: { eyebrow: string; title: str
{eyebrow}
-

- {title} -

+

{title}

{lede &&

{lede}

}
@@ -26,7 +24,7 @@ export function FeatureRow({ img, title, body, reverse, Icon }: { img: string; t
{Icon && }

{title}

-

{body}

+

{body}

); @@ -47,6 +45,3 @@ export function CTA() { ); } - -// Dummy export so this file is treated as a module but not a route. -export const Route = createFileRoute("/_shared")({ component: () => null }); diff --git a/src/routes/about.tsx b/src/routes/about.tsx new file mode 100644 index 0000000..49320d6 --- /dev/null +++ b/src/routes/about.tsx @@ -0,0 +1,56 @@ +import { createFileRoute } from "@tanstack/react-router"; +import { PageHero, Section, CTA } from "@/components/page-shell"; + +export const Route = createFileRoute("/about")({ + head: () => ({ + meta: [ + { title: "About Promist — Misting Systems Since 1979" }, + { name: "description", content: "Promist manufactures and sells high-quality misting systems and misting fans at factory-direct prices since 1979." }, + { property: "og:title", content: "About Promist" }, + { property: "og:description", content: "Misting systems and misting fans manufactured since 1979." }, + ], + }), + component: About, +}); + +function About() { + return ( + <> + +
+
+
+

+ For more than four decades, Promist has been engineering high-pressure misting systems for the harshest climates in + the region. Our systems force water through specially designed nozzles, creating an ultra-fine mist that evaporates + instantly to cool the surrounding air. +

+

+ We manufacture and sell at factory-direct prices, giving our customers full control over quality, delivery and cost. + From the smallest residential patio to full industrial deployments, every project is engineered from first principles. +

+
+
+
+
Mission
+

Deliver reliable humidity and cooling control, everywhere it's needed.

+
+
+
Vision
+

To be the region's most trusted misting technology partner.

+
+
+
Values
+

Craft, quality, and unwavering customer service.

+
+
+
+
+ + + ); +} diff --git a/src/routes/applications.tsx b/src/routes/applications.tsx new file mode 100644 index 0000000..482bef4 --- /dev/null +++ b/src/routes/applications.tsx @@ -0,0 +1,42 @@ +import { createFileRoute } from "@tanstack/react-router"; +import { PageHero, Section, FeatureRow, CTA } from "@/components/page-shell"; +import { Droplets, Wind, Factory, Sparkles, TreePine, Warehouse } from "lucide-react"; + +export const Route = createFileRoute("/applications")({ + head: () => ({ + meta: [ + { title: "Applications — Promist Misting Systems" }, + { name: "description", content: "Cost-effective misting solutions for industrial, commercial, residential, warehouses, greenhouses, gardens, patios and more." }, + { property: "og:title", content: "Applications" }, + { property: "og:description", content: "Misting applications across industrial, commercial and residential settings." }, + ], + }), + component: Applications, +}); + +const APPS = [ + { img: "https://promistcool.com/wp-content/uploads/2016/03/humidification-misting.jpg", title: "Humidification", body: "Commercial and industrial environments where controlling humidity or temperature provides enhanced profitability, product quality and process reliability.", Icon: Droplets }, + { img: "https://promistcool.com/wp-content/uploads/2016/03/commercial-misting.jpg", title: "Commercial Outdoor Cooling", body: "When temperatures rise into the 45s and above, patio dining and outdoor bar areas become uninhabitable money losers. Misting brings them back to life.", Icon: Wind, reverse: true }, + { img: "https://promistcool.com/wp-content/uploads/2016/03/industrial-misting.jpg", title: "Industrial Cooling", body: "Create a safer and more productive working environment. Cooling employees, equipment and processes across factories and warehouses.", Icon: Factory }, + { img: "https://promistcool.com/wp-content/uploads/2020/04/banner-sanitz.jpg", title: "Special Effects", body: "Showcase incredible landscapes, swimming pools, events, expos, amusement parks and sports events with an atmospheric mist.", Icon: Sparkles, reverse: true }, + { img: "https://promistcool.com/wp-content/uploads/2017/04/new-banner.jpg", title: "Greenhouses & Gardens", body: "Precise humidity control keeps plants healthy, improves yields and reduces water consumption compared to traditional irrigation.", Icon: TreePine }, + { img: "https://promistcool.com/wp-content/uploads/2017/04/banner4.jpg", title: "Warehouses & Factories", body: "Suppress airborne dust, cool loading bays and keep goods in ideal conditions — even during the hottest months.", Icon: Warehouse, reverse: true }, +]; + +function Applications() { + return ( + <> + +
+
+ {APPS.map((a) => )} +
+
+ + + ); +} diff --git a/src/routes/contact.tsx b/src/routes/contact.tsx new file mode 100644 index 0000000..0e19069 --- /dev/null +++ b/src/routes/contact.tsx @@ -0,0 +1,41 @@ +import { createFileRoute } from "@tanstack/react-router"; +import { PageHero, Section, CTA } from "@/components/page-shell"; +import { Phone, Mail, MapPin } from "lucide-react"; + +export const Route = createFileRoute("/contact")({ + head: () => ({ + meta: [ + { title: "Contact Promist — Dubai, UAE" }, + { name: "description", content: "Contact Promist for misting system enquiries, service and support in the UAE." }, + { property: "og:title", content: "Contact Promist" }, + { property: "og:description", content: "Reach the Promist team in Dubai, UAE." }, + ], + }), + component: Contact, +}); + +function Contact() { + return ( + <> + +
+
+ {[ + { I: Phone, t: "Call", l: ["+971 4 251 5596", "+971 55 209 8628"] }, + { I: Mail, t: "Email", l: ["info@promistcool.com", "sales@promistcool.com"] }, + { I: MapPin, t: "Visit", l: ["Dubai, United Arab Emirates"] }, + ].map((c) => ( +
+ +

{c.t}

+
+ {c.l.map((line) =>

{line}

)} +
+
+ ))} +
+
+ + + ); +} diff --git a/src/routes/enquiry.tsx b/src/routes/enquiry.tsx new file mode 100644 index 0000000..558bbc6 --- /dev/null +++ b/src/routes/enquiry.tsx @@ -0,0 +1,71 @@ +import { createFileRoute } from "@tanstack/react-router"; +import { PageHero, Section } from "@/components/page-shell"; +import { useState } from "react"; +import { ArrowUpRight } from "lucide-react"; + +export const Route = createFileRoute("/enquiry")({ + head: () => ({ + meta: [ + { title: "Enquiry — Request a Misting System Quote" }, + { name: "description", content: "Send a quick enquiry to Promist for a misting system quote or consultation." }, + { property: "og:title", content: "Enquiry" }, + { property: "og:description", content: "Request a Promist misting system quote." }, + ], + }), + component: Enquiry, +}); + +function Enquiry() { + const [sent, setSent] = useState(false); + return ( + <> + +
+
+
{ e.preventDefault(); setSent(true); }} + > + {[ + { l: "Full name", n: "name", t: "text" }, + { l: "Email address", n: "email", t: "email" }, + { l: "Phone", n: "phone", t: "tel" }, + { l: "Company (optional)", n: "company", t: "text" }, + ].map((f) => ( + + ))} +