From 2e882f5e97c54caa752927a94ffea13970456625 Mon Sep 17 00:00:00 2001 From: AmirmahdiNourkazemi Date: Thu, 6 Nov 2025 18:35:20 +0330 Subject: [PATCH] first commit --- app/app.tsx | 33 +++++++++++ app/components/CallToAction.jsx | 17 ++++++ app/components/DownloadSection.jsx | 51 +++++++++++++++++ app/components/Features.jsx | 79 +++++++++++++++++++++++++++ app/components/Footer.jsx | 10 ++++ app/components/FreeTrial.jsx | 15 +++++ app/components/Header.jsx | 11 ++++ app/components/Hero.jsx | 22 ++++++++ app/components/ScientificBenefits.jsx | 45 +++++++++++++++ app/components/WhatYouCanDo.jsx | 79 +++++++++++++++++++++++++++ app/components/WhyAramland.jsx | 26 +++++++++ app/page.tsx | 66 ++-------------------- package-lock.json | 11 ++++ package.json | 13 +++-- 14 files changed, 411 insertions(+), 67 deletions(-) create mode 100644 app/app.tsx create mode 100644 app/components/CallToAction.jsx create mode 100644 app/components/DownloadSection.jsx create mode 100644 app/components/Features.jsx create mode 100644 app/components/Footer.jsx create mode 100644 app/components/FreeTrial.jsx create mode 100644 app/components/Header.jsx create mode 100644 app/components/Hero.jsx create mode 100644 app/components/ScientificBenefits.jsx create mode 100644 app/components/WhatYouCanDo.jsx create mode 100644 app/components/WhyAramland.jsx diff --git a/app/app.tsx b/app/app.tsx new file mode 100644 index 0000000..8586891 --- /dev/null +++ b/app/app.tsx @@ -0,0 +1,33 @@ +import Header from './components/Header'; +import Hero from './components/Hero'; +import DownloadSection from './components/DownloadSection'; +import Features from './components/Features'; +import WhatYouCanDo from './components/WhatYouCanDo'; +import WhyAramland from './components/WhyAramland'; +import FreeTrial from './components/FreeTrial'; +import ScientificBenefits from './components/ScientificBenefits'; +import CallToAction from './components/CallToAction'; +import Footer from './components/Footer'; + +function App() { + return ( +
+
+ +
+ + + + + + + + +
+ +
+
+ ); +} + +export default App; \ No newline at end of file diff --git a/app/components/CallToAction.jsx b/app/components/CallToAction.jsx new file mode 100644 index 0000000..75b36a0 --- /dev/null +++ b/app/components/CallToAction.jsx @@ -0,0 +1,17 @@ +function CallToAction() { + return ( +
+

+ آماده برای یک زندگی آرام‌تر؟ +

+

+ امروز اولین قدم رو بردار و ببین چطور آرام‌لند می‌تونه در تغییر کیفیت زندگی‌ات کمک‌ کنه. +

+ +
+ ); +} + +export default CallToAction; \ No newline at end of file diff --git a/app/components/DownloadSection.jsx b/app/components/DownloadSection.jsx new file mode 100644 index 0000000..b2a2551 --- /dev/null +++ b/app/components/DownloadSection.jsx @@ -0,0 +1,51 @@ +import { Download, Globe, PlayCircle } from 'lucide-react'; + +function DownloadSection() { + const downloadOptions = [ + { + icon: Download, + title: "کافه بازار", + description: "دانلود برای اندروید", + gradient: "from-teal-500 to-teal-600", + animation: "animate-slideInLeft delay-100" + }, + { + icon: PlayCircle, + title: "گوگل پلی", + description: "دانلود برای اندروید", + gradient: "from-green-500 to-green-600", + animation: "animate-fadeInUp delay-200" + }, + { + icon: Globe, + title: "وب اپلیکیشن", + description: "استفاده آنلاین", + gradient: "from-blue-500 to-blue-600", + animation: "animate-slideInRight delay-300" + } + ]; + + return ( +
+

+ آرام‌لند رو از کجا دانلود کنم؟ +

+ +
+ {downloadOptions.map((option, index) => ( + + +

{option.title}

+

{option.description}

+
+ ))} +
+
+ ); +} + +export default DownloadSection; \ No newline at end of file diff --git a/app/components/Features.jsx b/app/components/Features.jsx new file mode 100644 index 0000000..c95a6d7 --- /dev/null +++ b/app/components/Features.jsx @@ -0,0 +1,79 @@ +function Features() { + const features = [ + { + emoji: "💨", + title: "تمرین تنفسی هوشمند", + description: "یک تنفس عمیق و استرس‌ات نابود شه. الگوریتم هوشمند برای هر لحظه.", + gradient: "from-teal-50 to-teal-100", + delay: "delay-100" + }, + { + emoji: "🎛️", + title: "الگوی تنفسی انتخابی", + description: "تمرین‌های تنفسی خود را طراحی کنید و تمام خاصیت‌ها را کنترل کنید.", + gradient: "from-green-50 to-green-100", + delay: "delay-200" + }, + { + emoji: "📦", + title: "صندوق دغدغه‌ها", + description: "دغدغه‌هایت رو در یک صندوق خیالی بگذار و ذهنت رو سبک‌تر کن.", + gradient: "from-blue-50 to-blue-100", + delay: "delay-300" + }, + { + emoji: "🤖", + title: "مشاور هوش مصنوعی", + description: "همراه هوشمندی که همیشه کنار توست برای پاسخ‌گویی به سوالات.", + gradient: "from-purple-50 to-purple-100", + delay: "delay-400" + }, + { + emoji: "💬", + title: "چت بدون حد", + description: "هر وقت، هر‌قدر که بخواهی صحبت کن. با خرید اشتراک نامحدود.", + gradient: "from-pink-50 to-pink-100", + delay: "delay-100" + }, + { + emoji: "🎶", + title: "موسیقی آرام‌بخش انحصاری", + description: "موسیقی‌ای که مستقیم بر روی آرامش‌ت تأثیر می‌گذاره.", + gradient: "from-yellow-50 to-yellow-100", + delay: "delay-200" + } + ]; + + return ( +
+

+ ✨ ویژگی‌های خاص آرام‌لند +

+ +
+ {features.map((feature, index) => ( +
+
+ {feature.emoji} +

{feature.title}

+
+

{feature.description}

+
+ ))} +
+ +
+

+ سفر به سمت آرامش از همین امروز شروع می‌شه. +
+ آماده‌ای؟ +

+
+
+ ); +} + +export default Features; \ No newline at end of file diff --git a/app/components/Footer.jsx b/app/components/Footer.jsx new file mode 100644 index 0000000..5213169 --- /dev/null +++ b/app/components/Footer.jsx @@ -0,0 +1,10 @@ +function Footer() { + return ( + + ); +} + +export default Footer; \ No newline at end of file diff --git a/app/components/FreeTrial.jsx b/app/components/FreeTrial.jsx new file mode 100644 index 0000000..d18a59b --- /dev/null +++ b/app/components/FreeTrial.jsx @@ -0,0 +1,15 @@ +function FreeTrial() { + return ( +
+

شروع یک هفته رایگان

+

+ تمام ویژگی‌های پریمیوم رو برای یک هفته کامل تجربه کن، بدون هیچ‌گونه ایراد. +

+ +
+ ); +} + +export default FreeTrial; \ No newline at end of file diff --git a/app/components/Header.jsx b/app/components/Header.jsx new file mode 100644 index 0000000..7c12f29 --- /dev/null +++ b/app/components/Header.jsx @@ -0,0 +1,11 @@ +function Header() { + return ( + + ); +} + +export default Header; \ No newline at end of file diff --git a/app/components/Hero.jsx b/app/components/Hero.jsx new file mode 100644 index 0000000..3b18524 --- /dev/null +++ b/app/components/Hero.jsx @@ -0,0 +1,22 @@ +function Hero() { + return ( +
+
+ +
+

+ لحظه‌ای آرام بگیر، زندگی را حس کن +

+ +

+ آرام‌لند دستیار مهربان توست برای یافتن آرامش درونی. با مدیتیشن‌های فارسی، موسیقی دلنشین و راهنمایی‌های گام‌به‌گام، هر روز کمی به خودت نزدیک‌تر شو. +

+ +

+ چه در خانه باشی، چه سر کار، چه در مسیر؛ همیشه می‌تونی یک لحظه آرامش رو با خودت داشته باشی. +

+
+ ); +} + +export default Hero; \ No newline at end of file diff --git a/app/components/ScientificBenefits.jsx b/app/components/ScientificBenefits.jsx new file mode 100644 index 0000000..44ad0fc --- /dev/null +++ b/app/components/ScientificBenefits.jsx @@ -0,0 +1,45 @@ +function ScientificBenefits() { + return ( +
+

+ چرا فقط چند دقیقه کافی است؟ +

+ +
+
+
+

تکنیک‌های علمی و عملی

+

+ آرام‌لند از جدیدترین و مؤثرترین تکنیک‌های مدیریت استرس و آرامش درونی استفاده می‌کند. +

+
    + {["بهتری کردن خلق و خو در چند دقیقه", "کاهش استرس و اضطراب", "بهتری کردن کیفیت خواب"].map((item, index) => ( +
  • + + {item} +
  • + ))} +
+
+ +
+

طراحی جذاب و کاربر‌پسند

+

+ رابط کاربری آرام‌لند برای راحتی و تمرکز شما طراحی شده است. +

+
    + {["رابط ساده و شهودی", "طراحی بدون انجام‌پذیری", "محتوای هدایت‌شده فارسی"].map((item, index) => ( +
  • + + {item} +
  • + ))} +
+
+
+
+
+ ); +} + +export default ScientificBenefits; \ No newline at end of file diff --git a/app/components/WhatYouCanDo.jsx b/app/components/WhatYouCanDo.jsx new file mode 100644 index 0000000..78812e2 --- /dev/null +++ b/app/components/WhatYouCanDo.jsx @@ -0,0 +1,79 @@ +import { Wind, Brain, Heart, Sparkles } from 'lucide-react'; + +function WhatYouCanDo() { + const activities = [ + { + icon: Wind, + title: "تمرین‌های تنفسی", + description: "با تمرین‌های ساده و مؤثر تنفسی، اضطراب‌ات رو کاهش بده و ذهنت رو آرام کن.", + gradient: "from-teal-50 to-teal-100", + items: ["روش تنفس ۴-۷-۸", "تنفس باکس‌شکل برای تمرکز", "تنفس برای خواب بهتر"], + color: "teal", + delay: "delay-100" + }, + { + icon: Brain, + title: "مدیتیشن و ذهن‌آگاهی", + description: "مدیتیشن‌های هدایت‌شده فارسی برای تمام سطح‌ها.", + gradient: "from-green-50 to-green-100", + items: ["مدیتیشن برای مبتدی‌ها (۵ دقیقه‌ای)", "ذهن‌آگاهی در زندگی روزمره", "مدیتیشن خواب عمیق"], + color: "green", + delay: "delay-200" + }, + { + icon: Heart, + title: "صلح‌ دروني و خودقبولی", + description: "جلسات هدایت‌شده برای پذیرش خود و رفع احساسات منفی.", + gradient: "from-blue-50 to-blue-100", + items: ["درمان فشار روانی و اضطراب", "افزایش اعتماد به نفس", "مدیتیشن محبت و مهربانی"], + color: "blue", + delay: "delay-300" + }, + { + icon: Sparkles, + title: "موسیقی آرام‌بخش", + description: "آهنگ‌های طبیعت و موسیقی آرام‌بخش برای یوگا، کار و خواب.", + gradient: "from-purple-50 to-purple-100", + items: ["آرام برای فوکس و تمرکز", "موسیقی طبیعت و اقیانوس", "پس‌زمینه برای یوگا"], + color: "purple", + delay: "delay-400" + } + ]; + + return ( +
+

+ چه کاری می‌تونی با آرام‌لند انجام بدی؟ +

+ +
+ {activities.map((activity, index) => ( +
+
+
+ +
+

{activity.title}

+
+

+ {activity.description} +

+
    + {activity.items.map((item, itemIndex) => ( +
  • + + {item} +
  • + ))} +
+
+ ))} +
+
+ ); +} + +export default WhatYouCanDo; diff --git a/app/components/WhyAramland.jsx b/app/components/WhyAramland.jsx new file mode 100644 index 0000000..10b4a6d --- /dev/null +++ b/app/components/WhyAramland.jsx @@ -0,0 +1,26 @@ +function WhyAramland() { + const stats = [ + { number: "۲۰۰+", text: "مدیتیشن و تمرین‌های تنفسی", color: "text-teal-600", delay: "delay-100" }, + { number: "۱۵+", text: "ساعت محتوای صوتی فارسی", color: "text-green-600", delay: "delay-200" }, + { number: "۲۴/۷", text: "دسترسی بدون محدود", color: "text-blue-600", delay: "delay-300" } + ]; + + return ( +
+

+ چرا آرام‌لند؟ +

+ +
+ {stats.map((stat, index) => ( +
+
{stat.number}
+

{stat.text}

+
+ ))} +
+
+ ); +} + +export default WhyAramland; \ No newline at end of file diff --git a/app/page.tsx b/app/page.tsx index 295f8fd..67289c5 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,65 +1,9 @@ + import Image from "next/image"; +import App from "./app"; export default function Home() { - return ( -
-
- Next.js logo -
-

- To get started, edit the page.tsx file. -

-

- Looking for a starting point or more instructions? Head over to{" "} - - Templates - {" "} - or the{" "} - - Learning - {" "} - center. -

-
-
- - Vercel logomark - Deploy Now - - - Documentation - -
-
-
- ); + return ( + + ) } diff --git a/package-lock.json b/package-lock.json index 672ff6b..02fc16e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "aramlan", "version": "0.1.0", "dependencies": { + "lucide-react": "^0.552.0", "next": "16.0.1", "react": "19.2.0", "react-dom": "19.2.0" @@ -3212,6 +3213,7 @@ "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@rtsao/scc": "^1.1.0", "array-includes": "^3.1.9", @@ -4841,6 +4843,15 @@ "yallist": "^3.0.2" } }, + "node_modules/lucide-react": { + "version": "0.552.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.552.0.tgz", + "integrity": "sha512-g9WCjmfwqbexSnZE+2cl21PCfXOcqnGeWeMTNAOGEfpPbm/ZF4YIq77Z8qWrxbu660EKuLB4nSLggoKnCb+isw==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, "node_modules/magic-string": { "version": "0.30.21", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", diff --git a/package.json b/package.json index bc6ece8..21d2f2c 100644 --- a/package.json +++ b/package.json @@ -9,18 +9,19 @@ "lint": "eslint" }, "dependencies": { + "lucide-react": "^0.552.0", + "next": "16.0.1", "react": "19.2.0", - "react-dom": "19.2.0", - "next": "16.0.1" + "react-dom": "19.2.0" }, "devDependencies": { - "typescript": "^5", + "@tailwindcss/postcss": "^4", "@types/node": "^20", "@types/react": "^19", "@types/react-dom": "^19", - "@tailwindcss/postcss": "^4", - "tailwindcss": "^4", "eslint": "^9", - "eslint-config-next": "16.0.1" + "eslint-config-next": "16.0.1", + "tailwindcss": "^4", + "typescript": "^5" } }