From 8d2fa13a6769329d3f393aac0ea5fcc75c5cecf7 Mon Sep 17 00:00:00 2001 From: JeffEmmett <20747463-JeffEmmett@users.noreply.replit.com> Date: Wed, 7 May 2025 02:36:27 +0000 Subject: [PATCH] Set up basic website structure and design for Pilates with Fadia Initial commit adding project configuration, core components, and styling. Replit-Commit-Author: Agent Replit-Commit-Session-Id: acaf01d7-65a7-4fc5-901d-853488e196e8 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/af8dabca-e746-4e53-9c29-d8d4d9cf30f5/e81f975c-20f0-40ea-9a01-fa18c3af74b4.jpg --- .gitignore | 6 + .replit | 36 + client/index.html | 22 + client/src/App.tsx | 50 + client/src/components/about/about-section.tsx | 98 + .../components/classes/booking-calendar.tsx | 201 + client/src/components/classes/class-card.tsx | 101 + .../components/classes/classes-section.tsx | 94 + .../community/community-section.tsx | 121 + .../src/components/community/testimonial.tsx | 47 + .../components/contact/contact-section.tsx | 217 + client/src/components/home/feature-card.tsx | 71 + client/src/components/home/hero-section.tsx | 39 + client/src/components/navigation/footer.tsx | 130 + client/src/components/navigation/header.tsx | 143 + .../newsletter/newsletter-section.tsx | 138 + client/src/components/ui/accordion.tsx | 56 + client/src/components/ui/alert-dialog.tsx | 139 + client/src/components/ui/alert.tsx | 59 + .../src/components/ui/arabic-decoration.tsx | 22 + client/src/components/ui/aspect-ratio.tsx | 5 + client/src/components/ui/avatar.tsx | 50 + client/src/components/ui/badge.tsx | 36 + client/src/components/ui/breadcrumb.tsx | 115 + client/src/components/ui/button.tsx | 56 + client/src/components/ui/calendar.tsx | 68 + client/src/components/ui/card.tsx | 79 + client/src/components/ui/carousel.tsx | 260 + client/src/components/ui/chart.tsx | 365 + client/src/components/ui/checkbox.tsx | 28 + client/src/components/ui/collapsible.tsx | 11 + client/src/components/ui/command.tsx | 151 + client/src/components/ui/context-menu.tsx | 198 + client/src/components/ui/dialog.tsx | 122 + client/src/components/ui/drawer.tsx | 118 + client/src/components/ui/dropdown-menu.tsx | 198 + client/src/components/ui/form.tsx | 178 + client/src/components/ui/hover-card.tsx | 29 + client/src/components/ui/input-otp.tsx | 69 + client/src/components/ui/input.tsx | 22 + client/src/components/ui/label.tsx | 24 + client/src/components/ui/logo.tsx | 33 + client/src/components/ui/menubar.tsx | 256 + client/src/components/ui/navigation-menu.tsx | 128 + client/src/components/ui/pagination.tsx | 117 + client/src/components/ui/popover.tsx | 29 + client/src/components/ui/progress.tsx | 28 + client/src/components/ui/radio-group.tsx | 42 + client/src/components/ui/resizable.tsx | 45 + client/src/components/ui/scroll-area.tsx | 46 + client/src/components/ui/select.tsx | 160 + client/src/components/ui/separator.tsx | 29 + client/src/components/ui/sheet.tsx | 140 + client/src/components/ui/sidebar.tsx | 771 ++ client/src/components/ui/skeleton.tsx | 15 + client/src/components/ui/slider.tsx | 26 + client/src/components/ui/switch.tsx | 27 + client/src/components/ui/table.tsx | 117 + client/src/components/ui/tabs.tsx | 53 + client/src/components/ui/textarea.tsx | 22 + client/src/components/ui/toast.tsx | 127 + client/src/components/ui/toaster.tsx | 33 + client/src/components/ui/toggle-group.tsx | 61 + client/src/components/ui/toggle.tsx | 43 + client/src/components/ui/tooltip.tsx | 30 + client/src/hooks/use-auth.tsx | 130 + client/src/hooks/use-mobile.tsx | 19 + client/src/hooks/use-toast.ts | 191 + client/src/index.css | 121 + client/src/lib/constants.tsx | 170 + client/src/lib/protected-route.tsx | 33 + client/src/lib/queryClient.ts | 57 + client/src/lib/utils.ts | 6 + client/src/lib/utils/calendar-utils.ts | 173 + client/src/lib/utils/form-validation.ts | 154 + client/src/main.tsx | 5 + client/src/pages/about-page.tsx | 22 + client/src/pages/auth-page.tsx | 278 + client/src/pages/classes-page.tsx | 22 + client/src/pages/community-page.tsx | 22 + client/src/pages/contact-page.tsx | 20 + client/src/pages/home-page.tsx | 27 + client/src/pages/not-found.tsx | 21 + components.json | 20 + drizzle.config.ts | 14 + package-lock.json | 9039 +++++++++++++++++ package.json | 105 + postcss.config.js | 6 + server/auth.ts | 131 + server/index.ts | 70 + server/routes.ts | 135 + server/storage.ts | 224 + server/vite.ts | 85 + shared/schema.ts | 89 + tailwind.config.ts | 90 + tsconfig.json | 23 + vite.config.ts | 31 + 97 files changed, 17883 insertions(+) create mode 100644 .gitignore create mode 100644 .replit create mode 100644 client/index.html create mode 100644 client/src/App.tsx create mode 100644 client/src/components/about/about-section.tsx create mode 100644 client/src/components/classes/booking-calendar.tsx create mode 100644 client/src/components/classes/class-card.tsx create mode 100644 client/src/components/classes/classes-section.tsx create mode 100644 client/src/components/community/community-section.tsx create mode 100644 client/src/components/community/testimonial.tsx create mode 100644 client/src/components/contact/contact-section.tsx create mode 100644 client/src/components/home/feature-card.tsx create mode 100644 client/src/components/home/hero-section.tsx create mode 100644 client/src/components/navigation/footer.tsx create mode 100644 client/src/components/navigation/header.tsx create mode 100644 client/src/components/newsletter/newsletter-section.tsx create mode 100644 client/src/components/ui/accordion.tsx create mode 100644 client/src/components/ui/alert-dialog.tsx create mode 100644 client/src/components/ui/alert.tsx create mode 100644 client/src/components/ui/arabic-decoration.tsx create mode 100644 client/src/components/ui/aspect-ratio.tsx create mode 100644 client/src/components/ui/avatar.tsx create mode 100644 client/src/components/ui/badge.tsx create mode 100644 client/src/components/ui/breadcrumb.tsx create mode 100644 client/src/components/ui/button.tsx create mode 100644 client/src/components/ui/calendar.tsx create mode 100644 client/src/components/ui/card.tsx create mode 100644 client/src/components/ui/carousel.tsx create mode 100644 client/src/components/ui/chart.tsx create mode 100644 client/src/components/ui/checkbox.tsx create mode 100644 client/src/components/ui/collapsible.tsx create mode 100644 client/src/components/ui/command.tsx create mode 100644 client/src/components/ui/context-menu.tsx create mode 100644 client/src/components/ui/dialog.tsx create mode 100644 client/src/components/ui/drawer.tsx create mode 100644 client/src/components/ui/dropdown-menu.tsx create mode 100644 client/src/components/ui/form.tsx create mode 100644 client/src/components/ui/hover-card.tsx create mode 100644 client/src/components/ui/input-otp.tsx create mode 100644 client/src/components/ui/input.tsx create mode 100644 client/src/components/ui/label.tsx create mode 100644 client/src/components/ui/logo.tsx create mode 100644 client/src/components/ui/menubar.tsx create mode 100644 client/src/components/ui/navigation-menu.tsx create mode 100644 client/src/components/ui/pagination.tsx create mode 100644 client/src/components/ui/popover.tsx create mode 100644 client/src/components/ui/progress.tsx create mode 100644 client/src/components/ui/radio-group.tsx create mode 100644 client/src/components/ui/resizable.tsx create mode 100644 client/src/components/ui/scroll-area.tsx create mode 100644 client/src/components/ui/select.tsx create mode 100644 client/src/components/ui/separator.tsx create mode 100644 client/src/components/ui/sheet.tsx create mode 100644 client/src/components/ui/sidebar.tsx create mode 100644 client/src/components/ui/skeleton.tsx create mode 100644 client/src/components/ui/slider.tsx create mode 100644 client/src/components/ui/switch.tsx create mode 100644 client/src/components/ui/table.tsx create mode 100644 client/src/components/ui/tabs.tsx create mode 100644 client/src/components/ui/textarea.tsx create mode 100644 client/src/components/ui/toast.tsx create mode 100644 client/src/components/ui/toaster.tsx create mode 100644 client/src/components/ui/toggle-group.tsx create mode 100644 client/src/components/ui/toggle.tsx create mode 100644 client/src/components/ui/tooltip.tsx create mode 100644 client/src/hooks/use-auth.tsx create mode 100644 client/src/hooks/use-mobile.tsx create mode 100644 client/src/hooks/use-toast.ts create mode 100644 client/src/index.css create mode 100644 client/src/lib/constants.tsx create mode 100644 client/src/lib/protected-route.tsx create mode 100644 client/src/lib/queryClient.ts create mode 100644 client/src/lib/utils.ts create mode 100644 client/src/lib/utils/calendar-utils.ts create mode 100644 client/src/lib/utils/form-validation.ts create mode 100644 client/src/main.tsx create mode 100644 client/src/pages/about-page.tsx create mode 100644 client/src/pages/auth-page.tsx create mode 100644 client/src/pages/classes-page.tsx create mode 100644 client/src/pages/community-page.tsx create mode 100644 client/src/pages/contact-page.tsx create mode 100644 client/src/pages/home-page.tsx create mode 100644 client/src/pages/not-found.tsx create mode 100644 components.json create mode 100644 drizzle.config.ts create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 postcss.config.js create mode 100644 server/auth.ts create mode 100644 server/index.ts create mode 100644 server/routes.ts create mode 100644 server/storage.ts create mode 100644 server/vite.ts create mode 100644 shared/schema.ts create mode 100644 tailwind.config.ts create mode 100644 tsconfig.json create mode 100644 vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f9ba7f8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +node_modules +dist +.DS_Store +server/public +vite.config.ts.* +*.tar.gz \ No newline at end of file diff --git a/.replit b/.replit new file mode 100644 index 0000000..51f344f --- /dev/null +++ b/.replit @@ -0,0 +1,36 @@ +modules = ["nodejs-20", "web", "postgresql-16"] +run = "npm run dev" +hidden = [".config", ".git", "generated-icon.png", "node_modules", "dist"] + +[nix] +channel = "stable-24_05" + +[deployment] +deploymentTarget = "autoscale" +build = ["npm", "run", "build"] +run = ["npm", "run", "start"] + +[[ports]] +localPort = 5000 +externalPort = 80 + +[workflows] +runButton = "Project" + +[[workflows.workflow]] +name = "Project" +mode = "parallel" +author = "agent" + +[[workflows.workflow.tasks]] +task = "workflow.run" +args = "Start application" + +[[workflows.workflow]] +name = "Start application" +author = "agent" + +[[workflows.workflow.tasks]] +task = "shell.exec" +args = "npm run dev" +waitForPort = 5000 diff --git a/client/index.html b/client/index.html new file mode 100644 index 0000000..afdd8b0 --- /dev/null +++ b/client/index.html @@ -0,0 +1,22 @@ + + + + + + Pilates with Fadia | Find Balance, Strength & Inner Peace + + + + + + + + + + +
+ + + + + diff --git a/client/src/App.tsx b/client/src/App.tsx new file mode 100644 index 0000000..f9e7b84 --- /dev/null +++ b/client/src/App.tsx @@ -0,0 +1,50 @@ +import { Switch, Route } from "wouter"; +import { queryClient } from "./lib/queryClient"; +import { QueryClientProvider } from "@tanstack/react-query"; +import { Toaster } from "@/components/ui/toaster"; +import { TooltipProvider } from "@/components/ui/tooltip"; +import { AuthProvider } from "@/hooks/use-auth"; + +import HomePage from "@/pages/home-page"; +import AboutPage from "@/pages/about-page"; +import ClassesPage from "@/pages/classes-page"; +import CommunityPage from "@/pages/community-page"; +import ContactPage from "@/pages/contact-page"; +import AuthPage from "@/pages/auth-page"; +import NotFound from "@/pages/not-found"; +import { ProtectedRoute } from "./lib/protected-route"; +import Header from "@/components/navigation/header"; +import Footer from "@/components/navigation/footer"; + +function Router() { + return ( + <> +
+ + + + + + + + + +