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

Fluffy Engine হলো NestJS দিয়ে তৈরি একটি অ্যানালিটিক্স সার্ভিস প্রোটোটাইপ, যা ক্লিক, পেজভিউ এবং ট্রানজ্যাকশনের মতো বিপুল পরিমাণ ইউজার-জেনারেটেড ইভেন্ট গ্রহণ এবং প্রসেস করার জন্য ডিজাইন করা হয়েছে। এই সার্ভিসটি একটি REST এন্ডপয়েন্টের মাধ্যমে ইনকামিং ইভেন্ট গ্রহণ করে এবং সেগুলোকে `analytics-events` নামক একটি Kafka টপিকে কিউ (queue) করে। Kafka ব্রোকার ডিফল্টভাবে `localhost:9092`-এ থাকে এবং এটি `KAFKA_BROKER` এনভায়রনমেন্ট ভেরিয়েবলের মাধ্যমে কনফিগার করা যায়। এরপর ইভেন্টগুলো কনজিউম এবং স্টোর করা হয় এবং API এন্ডপয়েন্টের মাধ্যমে উপলব্ধ করা হয়। পারসিস্টেন্সের জন্য, সার্ভিসটি `DATABASE_URL` এনভায়রনমেন্ট ভেরিয়েবলের মাধ্যমে PostgreSQL সাপোর্ট করে; কোনো কানেকশন স্ট্রিং প্রদান করা না হলে এটি ইন-মেমোরি SQLite ডাটাবেসে ফিরে যায়। এর স্কিমা প্রতিটি ইভেন্টের টাইমস্ট্যাম্প, টাইপ এবং র পেলোড রেকর্ড করে। `/metrics` এন্ডপয়েন্টটি গত পাঁচ মিনিটের প্রতি মিনিটের ইভেন্ট কাউন্ট হিসেবে সাম্প্রতিক অ্যাক্টিভিটি রিটার্ন করে, যা মৌলিক রিয়েল-টাইম অ্যানালিটিক্স প্রদান করে। এক্সপোজ করা অ্যানালিটিক্স ডেটার জন্য ভবিষ্যৎ ইন্টারফেস হিসেবে ড্যাশবোর্ডের কথা উল্লেখ করা হয়েছে।