API نقلقولهای فارسی یک پلتفرم جامع برای دسترسی به نقلقولهای زیبا از شاعران بزرگ فارسی است. این پروژه شامل یک API کامل و وبسایت نمایشی با طراحی راستبهچپ و تایپوگرافی فارسی میباشد.
- دریافت نقلقول تصادفی:
/api/quotes - جستجو بر اساس شاعر:
/api/quotes/[poet] - دستهبندی موضوعی:
/api/quotes/category/[category] - جستجوی متنی:
/api/quotes/search - فهرست شاعران:
/api/poets - فهرست دستهبندیها:
/api/categories - آمار استفاده:
/api/stats
- طراحی راستبهچپ (RTL) مخصوص فارسی
- فونت زیبای وزیرمتن
- رنگبندی الهامگرفته از فرهنگ ایرانی
- کارتهای نقلقول قابل تنظیم
- صفحه مستندات کامل
- نمونههای زنده و تعاملی
- Next.js 15 با App Router
- TypeScript برای type safety
- Supabase برای پایگاه داده
- Tailwind CSS برای استایلدهی
- shadcn/ui برای کامپوننتها
- Responsive Design برای همه دستگاهها
- Node.js 18+
- npm یا yarn
- حساب Supabase (اختیاری)
-
کلون کردن پروژه ```bash git clone https://github.com/arsamadineh/Persian-Quote-API.git cd Persian-Quote-API ```
-
نصب وابستگیها ```bash npm install
yarn install ```
- تنظیم متغیرهای محیطی ```bash cp .env.example .env.local ```
متغیرهای مورد نیاز: ```env NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key SUPABASE_SERVICE_ROLE_KEY=your_service_role_key ```
- راهاندازی پایگاه داده (اختیاری) ```bash
```
- اجرای پروژه ```bash npm run dev
yarn dev ```
پروژه روی http://localhost:3000 در دسترس خواهد بود.
```javascript fetch('/api/quotes') .then(response => response.json()) .then(data => console.log(data)); ```
```javascript fetch('/api/quotes/rumi') .then(response => response.json()) .then(data => console.log(data)); ```
```javascript fetch('/api/quotes/search?q=عشق') .then(response => response.json()) .then(data => console.log(data)); ```
پروژه شامل کارتهای نقلقول قابل تنظیم است که میتوانید در وبسایت خود جاسازی کنید:
```html
<iframe src="/embed?theme=classic&poet=rumi&category=love" width="400" height="300"> </iframe> \`\`\```` ├── app/ # صفحات و API routes │ ├── api/ # API endpoints │ ├── docs/ # صفحه مستندات │ ├── examples/ # نمونههای زنده │ └── embed/ # کارتهای قابل جاسازی ├── components/ # کامپوننتهای React ├── lib/ # توابع کمکی ├── scripts/ # اسکریپتهای پایگاه داده └── public/ # فایلهای استاتیک ```
- اسکریپت SQL جدید در
scripts/ایجاد کنید - دادههای شاعر را به جدول
poetsاضافه کنید - نقلقولها را به جدول
persian_quotesاضافه کنید
- استایلهای جدید در
components/quote-cards/تعریف کنید - تم را به لیست تمهای موجود اضافه کنید
- پیشنمایش در صفحه
/embedاضافه کنید
مشارکت شما در بهبود این پروژه بسیار ارزشمند است:
- پروژه را Fork کنید
- شاخه جدید ایجاد کنید (
git checkout -b feature/amazing-feature) - تغییرات را commit کنید (
git commit -m 'Add amazing feature') - به شاخه push کنید (
git push origin feature/amazing-feature) - Pull Request ایجاد کنید
این پروژه تحت مجوز MIT منتشر شده است. برای جزئیات بیشتر فایل LICENSE را مطالعه کنید.
- وبسایت: arsamadineh.ir
- GitHub: @arsamadineh
- ایمیل: [email protected]
ساخته شده با ❤️ برای زبان زیبای فارسی
© 2025 آرسام آدینه. تمامی حقوق محفوظ است.