سامانه کمپینهای جمعسپاری و کارزارهای آنلاین — وضعیت: در حال توسعه و هنوز وارد فاز پروداکشن نشده است.
این پروژه یک وباپلیکیشن با Next.js و TypeScript برای ایجاد و مدیریت کارزارهای اجتماعی/مدنی است؛ شامل صفحات ساخت کمپین، امضا/حمایت، بهروزرسانیها و پروفایل کاربر. «این مخزن هنوز کامل نیست و آماده استفاده در محیط تولیدی نمیباشد.»
🌐 نسخه آزمایشی: https://karzar-nine.vercel.app
- Next.js App Router با معماری مدرن و SSR/ISR
- UI با Tailwind CSS و کامپوننتهای سفارشی
- مدل داده کمپین/امضا/بهروزرسانیها (در حال تکمیل)
- احراز هویت و پروفایل کاربر (WIP)
- صفحات عمومی کمپین + لیستبندی و جستوجو (WIP)
توجه: بسیاری از بخشها در حال توسعهاند و API/Schema ممکن است تغییر کند؛ برای محیط تولیدی استفاده نشود.
.
├── public/ # داراییهای استاتیک
├── src/
│ ├── app/ # مسیرها، صفحات، API Routes
│ ├── components/ # اجزای UI قابل استفاده مجدد
│ ├── views/ # صفحات سطح بالا (Campaign, Home, etc.)
│ ├── utils/ # توابع کمکی
│ ├── types/ # تایپها و اینترفیسها
│ └── data/ # دادههای نمونه/ثابت
├── next.config.ts
├── tailwind.config.ts
├── package.json
└── README.md
- WIP: هنوز در فاز MVP و پیشنمایش است.
- برخی صفحات و APIها ناقصاند یا Mock شدهاند.
- طراحی پایگاه داده و احراز هویت در حال نهاییسازی است.
- تکمیل مدل داده کمپینها (Campaign, Signature, Update, Category)
- احراز هویت (NextAuth یا Auth Provider دیگر)
- پنل ساخت/مدیریت کمپین (Dashboard)
- سئو و متادیتا برای اشتراکگذاری شبکههای اجتماعی
- جستوجو و فیلتر پیشرفته کمپینها
- سیستم دیدگاهها و بهروزرسانیهای صاحب کمپین
- ایمیل/نوتیفیکیشن برای امضاکنندگان
- بهینهسازی عملکرد و دسترسپذیری (A11y)
- Dockerfile/Compose برای استقرار
- Node.js 18+
- pnpm
- (اختیاری) پایگاه داده (PostgreSQL/SQLite) — در حال حاضر صفحات ممکن است از داده Mock استفاده کنند
pnpm installیک فایل .env بسازید (نمونه):
# DATABASE_URL=postgresql://user:pass@localhost:5432/karzar
# NEXTAUTH_SECRET=...pnpm dev- Pages & API Routes در Next.js (App Router)
- Domain: مدیریت کمپینها، امضاها، و بهروزرسانیها
- Data: لایه داده (در حال طراحی) و دادههای نمونه برای توسعه
- این پروژه Production-ready نیست؛ الزامات امنیتی (Auth, Rate Limiting, Validation) باید قبل از انتشار پیادهسازی شود.
وضعیت: پروژه هنوز کامل نشده و آماده استفاده در محیط تولیدی نیست؛ تغییرات شکستندار ممکن است رخ دهد.