CookieRay SaaS — প্রস্তাবনা

আমাদের WordPress প্লাগইন CookieRay-এর হুবহু একই ফিচারসেট, SaaS আকারে। ফিচার কমবেও না, বাড়বেও না। প্লাগইনে যা ফ্রি, SaaS-এও তা ফ্রি।

৩১ আগস্ট ২০২৬ভিত্তি: CookieRay v1.0.2স্ট্যাক: কোম্পানি স্ট্যান্ডার্ড

১ · প্রস্তাব এক নজরে

১:১ফিচার parity
১৩ফ্রি ফিচার গ্রুপ
৫Pro ফিচার
~৫ মাসএকজন ডেভে

CookieRay এখন WordPress-নির্ভর — শুধু WP সাইটে চলে, ইনস্টল করতে হয়, ডেটা ক্লায়েন্টের সার্ভারে থাকে। SaaS সংস্করণে যেকোনো ওয়েবসাইট (WordPress, Shopify, Next.js, কাস্টম) শুধু একটা <script> বসিয়ে একই সুবিধা পাবে।

মূল নীতি — এই আলোচনার ভিত্তি

এটা নতুন প্রোডাক্ট নয়, একই প্রোডাক্টের দ্বিতীয় ডেলিভারি চ্যানেল। ফিচার তালিকা, ফ্রি/Pro বিভাজন, এমনকি ব্যানারের ডিফল্ট লেখা পর্যন্ত এক থাকবে। যা বদলাবে তা শুধু প্লাম্বিং — কোথায় চলে, ডেটা কোথায় থাকে।

২ · ফিচার parity — সম্পূর্ণ তালিকা

নিচের তালিকা প্লাগইনের কোড ও readme থেকে সরাসরি নেওয়া। প্রতিটা আইটেম SaaS-এ এক থাকবে।

ফ্রি ফিচার (প্লাগইনে ফ্রি → SaaS-এও ফ্রি)

#ফিচারবিস্তারিতSaaS-এ
১Consent BannerCard + Bar লেআউট, ৯টা পজিশন, overlay, border-radius, রং/ফন্ট/লেখা এডিটযোগ্য, অ্যাডমিনে লাইভ প্রিভিউঅপরিবর্তিত
২৩ বাটন + Preferences মডালAccept All / Decline / Preferences; প্রতিটা বাটন লুকানো-দেখানোর অপশনঅপরিবর্তিত
৩৪ ক্যাটাগরিNecessary · Analytical · Functional · Marketingঅপরিবর্তিত
৪Script BlockingLog Only ও Strict (Block Until Consent) মোড; GA, Meta Pixel, Hotjar, HubSpot, TikTok সহ বিল্ট-ইন প্যাটার্নঅপরিবর্তিত
৫Google Consent Mode v2ব্রাউজারে consent signal পাঠানো; টগল করা যায়অপরিবর্তিত
৬Cookie Scannerম্যানুয়াল স্ক্যান + deep scan (একই ডোমেইনে সর্বোচ্চ ৫০ URL, sitemap বা হোম+সাম্প্রতিক পোস্ট থেকে)অপরিবর্তিত সীমা
৭Cookie Inventoryদেখা, এডিট, ক্যাটাগরি বদল, bulk অ্যাকশন, ম্যানুয়াল কুকি যোগ, regex প্যাটার্নঅপরিবর্তিত
৮Consent Logsconsent id, status, ক্যাটাগরি, page URL, banner version, timestamp; সার্চ ও ফিল্টারঅপরিবর্তিত
৯এক্সপোর্টCSV এক্সপোর্ট + একক receipt PDFঅপরিবর্তিত
১০Dashboard + Compliance Score৭-পয়েন্ট চেকলিস্ট, স্কোর, consent সংখ্যা, accept rate, active cookies, recent activityঅপরিবর্তিত
১১Scan Historyআগের স্ক্যান, সময়, পেজ সংখ্যা, ফলাফলের সারাংশঅপরিবর্তিত
১২Settingsমোড, consent expiry, log retention, GCM v2 টগল, uncategorized handling, manual category মনে রাখা, manage pillঅপরিবর্তিত
১৩Retention cleanupনির্ধারিত মেয়াদের পুরোনো consent log স্বয়ংক্রিয় মুছে ফেলাঅপরিবর্তিত

Pro ফিচার (প্লাগইনে Pro → SaaS-এও Paid)

#ফিচারSaaS-এ
১Scheduled automatic scans — নির্ধারিত সময়ে নিজে নিজে স্ক্যানPaid
২Geo targeting — দেশ অনুযায়ী ব্যানার দেখানো/লুকানোPaid
৩Integrations — GTM, Meta Pixel, Adobe Experience PlatformPaid
৪Trust Badge — ফুটারে "Privacy Protected" ব্যাজPaid
৫Custom CSS — ব্যানারে নিজের CSSPaid

এর বাইরে "Premium support ও priority updates" — এটা সাপোর্ট নীতি, কোড নয়।

৩ · কী বদলাবে (ফিচার নয়, প্লাম্বিং)

বিষয়WP প্লাগইন (এখন)SaaS (নতুন)
ইনস্টলপ্লাগইন আপলোড + activateএকটা <script> কপি-পেস্ট
কোন সাইটে চলেশুধু WordPressযেকোনো সাইট (WP, Shopify, Next.js, কাস্টম)
কয়টা সাইটপ্রতি সাইটে আলাদা ইনস্টলএক অ্যাকাউন্টে একাধিক সাইট
ডেটা কোথায়ক্লায়েন্টের নিজের DBআমাদের DB (multi-tenant, কঠোর আলাদা)
স্ক্যানারWP HTTP API দিয়ে HTML fetchহেডলেস ব্রাউজার (Playwright) — বেশি নির্ভুল
ব্যাকগ্রাউন্ড কাজWP Cron (অনির্ভরযোগ্য)BullMQ + Redis (নির্ভরযোগ্য)
স্ক্রিপ্ট ডেলিভারিক্লায়েন্টের সার্ভার থেকেCDN edge থেকে, বিশ্বজুড়ে দ্রুত
আপডেটক্লায়েন্ট নিজে করেআমরা একবার ডিপ্লয় → সবাই পায়
লাইসেন্সPro লাইসেন্স কীসাবস্ক্রিপশন (Stripe)
SaaS-এর ৩টা ব্যবসায়িক সুবিধা

① বাজার বহুগুণ বড় — শুধু WP নয়, যেকোনো সাইট। ② আপডেট আমাদের হাতে — বাগ ফিক্স সাথে সাথে সবার কাছে যায়, ক্লায়েন্ট পুরোনো ভার্সনে আটকে থাকে না। ③ স্ক্যান নির্ভুল হবে — প্লাগইন শুধু HTML পড়ে, হেডলেস ব্রাউজার আসল কুকি দেখতে পায়।

একটা ট্রেড-অফ বসকে বলতেই হবে

প্লাগইনের বিক্রির যুক্তি ছিল — "আপনার ডেটা আপনার সার্ভারেই থাকে, কোনো external SaaS ড্যাশবোর্ড নেই।" SaaS-এ এই যুক্তিটা আর থাকবে না; উল্টে যাবে। তাই দুটোকে প্রতিযোগী নয়, দুই ধরনের ক্রেতার জন্য দুই পণ্য হিসেবে পজিশন করতে হবে — প্লাগইন যারা নিয়ন্ত্রণ চায় তাদের জন্য, SaaS যারা সুবিধা চায় তাদের জন্য।

৪ · টেকনোলজি

কোম্পানির স্ট্যান্ডার্ড স্ট্যাক — কোনো নতুন প্রযুক্তি শেখার দরকার নেই।

স্তরপ্রযুক্তিঅবস্থা
Frontend (ড্যাশবোর্ড)Next.js + TanStack Query✅ কোম্পানি স্ট্যান্ডার্ড
Backend / APINext.js Route Handlers✅ কোম্পানি স্ট্যান্ডার্ড
AuthBetter Auth✅ কোম্পানি স্ট্যান্ডার্ড
DatabasePostgreSQL + Drizzle ORM✅ কোম্পানি স্ট্যান্ডার্ড
ValidationZod✅ কোম্পানি স্ট্যান্ডার্ড
QueueBullMQ + Redis✅ কোম্পানি স্ট্যান্ডার্ড
Embed scriptVanilla TypeScript + Vite🆕 আলাদা বান্ডল
ScannerPlaywright (headless browser)🆕 যোগ করতে হবে
CDN / EdgeCloudflare🆕 যোগ করতে হবে
BillingStripe🆕 যোগ করতে হবে
Email · Storage · MonitoringResend · R2/S3 · Sentry🆕 যোগ করতে হবে
একটাই টেকনিক্যাল শর্ত — এটা আলোচনার বিষয় নয়

ভিজিটরের সাইটে যে স্ক্রিপ্ট যাবে (cmp.js), সেটা React/Next.js দিয়ে বানানো যাবে না। ওটা ক্লায়েন্টের পেজে সবার আগে, ২০KB-র নিচে পৌঁছাতে হবে — নাহলে ট্র্যাকার আগেই কুকি বসিয়ে ফেলবে এবং ব্লকিং ব্যর্থ হবে। তাই ওটা আলাদা vanilla TypeScript বান্ডল হবে। ড্যাশবোর্ড অবশ্যই Next.js।

তুলনা: বর্তমান প্লাগইনের frontend.js = ৩৮KB, admin.js = ৬৯২KB। এই পার্থক্যটাই কারণ।

প্রজেক্ট কাঠামো

cookieray-saas/            (Turborepo মনোরেপো)
├── apps/
│   ├── web/        Next.js — ড্যাশবোর্ড + API + Better Auth
│   ├── embed/      vanilla TS — cmp.js (ব্যানার + ব্লকিং)
│   └── scanner/    Node + Playwright + BullMQ worker
└── packages/
    ├── db/         Drizzle schema
    └── shared/     Zod schema (ব্রাউজার ও সার্ভারে একই)

৫ · আর্কিটেকচার (সংক্ষেপে)

ক্লায়েন্টের সাইট (ভিজিটরের ব্রাউজার)
  └─ cmp.js  ← Cloudflare CDN থেকে, <20KB
       ├─ কনফিগ আনে (ক্যাশড JSON)
       ├─ ট্র্যাকার ব্লক করে
       ├─ ব্যানার দেখায়
       └─ consent পাঠায় ──┐
                          │
   ┌──────────────────────┼────────────────────┐
   ▼                      ▼                    ▼
Cloudflare CDN     Next.js API          Next.js ড্যাশবোর্ড
(cmp.js, config)   (consent সেভ)        (৭টা পেজ, Better Auth)
                          │                    │
                          └────────┬───────────┘
                                   ▼
                          PostgreSQL (Drizzle)
                          multi-tenant, site_id দিয়ে আলাদা
                                   ▲
                          BullMQ + Redis
                          └─ Playwright scanner worker

৬ · টাইমলাইন

ফেজকাজসময়শেষে যা দেখানো যাবে
০রিপো, মনোরেপো, DB স্কিমা, auth১ সপ্তাহলগইন কাজ করে
১Embed script + ব্যানার (৯ পজিশন, ২ লেআউট, ৩ বাটন, Preferences)২ সপ্তাহটেস্ট পেজে ব্যানার
২🔥 Blocking ইঞ্জিন + Log/Strict + Google Consent Mode v2৩ সপ্তাহAccept-এর আগে ০ কুকি, পরে চালু
৩Multi-tenant backend, কনফিগ API, consent log API২ সপ্তাহ২টা সাইট, আলাদা ডেটা
৪ড্যাশবোর্ড ৭ পেজ + compliance score + CSV/PDF এক্সপোর্ট৪ সপ্তাহ🎯 ফ্রি প্রোডাক্ট সম্পূর্ণ
৫Scanner (manual + deep scan ৫০ URL) + Scan History৩ সপ্তাহআসল সাইট স্ক্যান
৬Pro ফিচার ৫টা + Stripe বিলিং৩ সপ্তাহ💰 আয় শুরু
৭টেস্ট, মনিটরিং, ডকুমেন্টেশন, ল্যান্ডিং পেজ২ সপ্তাহলঞ্চ
~১১ সপ্তাহফ্রি প্রোডাক্ট (ফেজ ০–৪)
~২০ সপ্তাহসম্পূর্ণ (একজন ডেভ)
~১৩ সপ্তাহসম্পূর্ণ (দুইজন ডেভ)
অনুমানের ভিত্তি

একজন ফুল-টাইম ডেভেলপার, কোম্পানির পরিচিত স্ট্যাক ধরে। ফেজ ২ (blocking) সবচেয়ে অনিশ্চিত — এটা প্রোডাক্টের হৃদয় এবং সবচেয়ে টেকনিক্যাল অংশ। ফেজ ৪-এ পৌঁছালেই বিক্রিযোগ্য ফ্রি প্রোডাক্ট হাতে থাকবে, বাকিটা ধাপে ধাপে যোগ করা যাবে।

৭ · ঝুঁকি ও প্রতিকার

ঝুঁকিপ্রভাবপ্রতিকার
ব্লকিং বাগ → ক্লায়েন্টের সাইট ভাঙে🔴 উচ্চডিফল্ট Log Only, data-cmp="ignore" escape hatch, প্রতি ডিপ্লয়ে Playwright অটো-টেস্ট
Multi-tenant ফাঁস (এক ক্লায়েন্ট অন্যের ডেটা দেখা)🔴 উচ্চএকটাই tenant-aware ডেটা লেয়ার, কাঁচা কোয়েরি নিষিদ্ধ, Postgres RLS
consent_logs দ্রুত বিশাল হওয়া🟡 মাঝারিমাস অনুযায়ী partition + retention (প্লাগইনেও আছে) + summary টেবিল
স্ক্যানার সার্ভার খরচ বাড়া🟡 মাঝারিপ্লাগইনের মতোই ৫০ URL সীমা, worker সীমা, টাইমআউট
স্ক্রিপ্ট ভারী হয়ে গেলে ব্লকিং ফেল🟡 মাঝারিCI-তে সাইজ বাজেট — ২০KB ছাড়ালে বিল্ড ফেল
প্লাগইন ও SaaS একে অন্যের বিক্রি খাওয়া🟢 নিম্নআলাদা পজিশনিং (§৩), দাম ও লক্ষ্য ক্রেতা আলাদা

৮ · বসের কাছে যে সিদ্ধান্তগুলো চাই

  1. অনুমোদন — ১:১ ফিচার parity, ফ্রি জিনিস ফ্রি রাখা — এই ভিত্তিতে এগোব?
  2. দাম — SaaS Pro-র মাসিক দাম কত? প্লাগইনের Pro লাইসেন্সের সাথে সম্পর্ক কী?
  3. লোকবল — একজন না দুইজন ডেভেলপার? (২০ সপ্তাহ বনাম ১৩ সপ্তাহ)
  4. ব্র্যান্ড — নাম কি "CookieRay" থাকবে, নাকি আলাদা নাম?
  5. ইনফ্রা বাজেট — Cloudflare, Playwright সার্ভার, Redis, Postgres, Stripe, Sentry — মাসিক খরচের অনুমোদন
  6. বিদ্যমান Pro গ্রাহক — প্লাগইনের Pro লাইসেন্সধারীরা SaaS-এ কী সুবিধা পাবে?
সুপারিশ

ফেজ ০–২ (মোট ৬ সপ্তাহ) আগে অনুমোদন দিন। ফেজ ২ শেষে একটা কাজ করা ডেমো দেখানো যাবে — আসল সাইটে ব্যানার এসেছে, Accept-এর আগে ট্র্যাকার ব্লক হয়েছে। সেটা দেখে বাকি বিনিয়োগের সিদ্ধান্ত নেওয়া অনেক নিরাপদ।