প্রকল্প সম্পর্কে

Real-time Visitor Counter in Turbo Monorepo একটি ওপেন-সোর্স প্রজেক্ট যা WebSockets ব্যবহার করে লাইভ ভিজিটর ট্র্যাকিং প্রদর্শন করে। অ্যাপ্লিকেশনটি প্রতিটি URL "রুম"-এর জন্য অনন্য ভিজিটর গণনা করে এবং সক্রিয় সমস্ত ুমের জন্য মোট গণনা করে। আর্কিটেকচার: প্রজেক্টটি Turborepo মনোরেপো লেআউট অনুসরণ করে। ফ্রন্টএন্ড client/ ডিরেক্টরিতে Vue 3 + Vite অ্যাপ্লিকেশন হিসেবে অবস্থিত। ব্যাকএন্ড server/ ডিরেক্টরিতে Cloudflare Worker হিসেবে অবস্থিত, যা Durable Objects দ্বারা স্থায়ী এবং রিয়েল-টাইম অবস্থা পরিচালনা করে। স্তরগুলির মধ্যে যোগাযোগ WebSockets এর মাধ্যমে ঘটে। বৈশিষ্ট্য: - বর্তমান ব্রাউজার URL অনুযায়ী প্রতি রুমের ভিজিটর গণনা - সমস্ত একই ময়ে সক্রিয় রুমের জন্য বৈশ্বিক ভিজিটর গণনা - ডাইনামিক পরিবেশ সুইচিং: ডেভেলপমেন্টে ws://localhost:8787 এবং প্রোডাকশনে wss:// কনফিগার করা URL ব্যবহার করে - turbo dev এর মাধ্যমে হট-রিলোড ডেভ সার্ভার টেক স্ট্যাক: - ফ্রন্টএন্ড: Vue 3, Vite - ব্যাকএন্ড: Cloudflare Workers, Cloudflare Durable Objects - মনোরেপো অর্কেস্ট্রেশন: Turborepo - প্যাকেজ ম্যানেজার: pnpm প্রাক-শর্ত: - Node.js এবং pnpm - Workers ক্ষম একটি Cloudflare অ্যাকাউন্ট - wrangler CLI গ্লোবালি ইনস্টল করা - Turborepo গ্লোবালি ইনস্টল করা ইনস্টলেশন এবং সেটআপ: 1. রিপোজিটরিটি ক্লোন করুন এবং রুট থেকে pnpm install চালান। 2. pnpm এর মাধ্যমে turbo এবং wrangler গ্লোবালি ইনস্টল করুন। 3. wrangler login দিয়ে wrangler অথেন্টিকেট করুন। 4. client/ এবং server/ ডিরেক্টরিতে wrangler.toml কনফিগার রুন। 5. turbo dev চালিয়ে ডেভ সার্ভার এবং লোকাল ওয়ার্কার শুরু করুন। 6. http://localhost:5175 এ একাধিক ট্যাব বা ডিভাইসে ভিজিট করে রিয়েল-টাইম আপডেট পর্যবেক্ষণ করুন। ডেপ্লয়মেন্ট apps/worker ডিরেক্টরি থেকে turbo deploy দ্বারা পরিচালিত হয়। ডেমো: https://wsdemo.cvyl.me রিপোজিটরি: cvyl/cloudflare-websocket-livecount