পদ্ধতি
দাবিটি
আপনার নির্বাচিত ফাইলগুলি এই ব্রাউজারেই স্থানীয়ভাবে প্রক্রিয়া করা হয় এবং FileSlimmer সেগুলি আপলোড করে না। এটি একটি নির্দিষ্ট, যাচাইযোগ্য দাবি। এই পাতা ব্যাখ্যা করে, দাবিটি কীভাবে সত্য রাখা হয় এবং বাক্যটিকে বিশ্বাস না করেও আপনি কীভাবে তা নিশ্চিত করতে পারেন।
আপনি নিজে কীভাবে তা যাচাই করবেন
- আপনার ব্রাউজারের ডেভেলপার টুল খুলে Network ট্যাবে যান।
- একটি টুল পাতা লোড করুন এবং লোড হওয়া শেষ হতে দিন। আপনি HTML, CSS, JavaScript এবং কিছু টুলের ক্ষেত্রে একটি WebAssembly মডিউল বা AI মডেলের রিকোয়েস্ট দেখতে পাবেন। সেগুলির সবই আসে এই ডোমেইন থেকে।
- নেটওয়ার্ক লগটি মুছে ফেলুন।
- একটি ফাইল বেছে নিন এবং টুলটি চালান।
- লগের দিকে খেয়াল রাখুন। ফাইলটি প্রক্রিয়া হওয়ার সময় কোনো রিকোয়েস্ট পাঠানো হয় না।
পাতা লোড হওয়ার পর আপনার নেটওয়ার্ক সংযোগ বন্ধ করে দেওয়াটা একই পরীক্ষার আরও সরল সংস্করণ: টুলগুলি কাজ করতেই থাকে।
বিল্ড কীভাবে এটি কার্যকর করে
চারটি স্বতন্ত্র ব্যবস্থা, যার প্রতিটি সতর্কবার্তা দেওয়ার বদলে বিল্ড ব্যর্থ করে দেয়:
- সোর্স স্ক্যান। আপনার বাইট স্পর্শ করতে পারে এমন প্রতিটি ফাইলে খুঁজে দেখা হয়
fetch,XMLHttpRequest,WebSocket,EventSource,WebTransport,sendBeaconএবংFormData। একটিমাত্র টীকাবিহীন উপস্থিতিও বিল্ড থামিয়ে দেয়। একমাত্র অনুমোদিত ব্যতিক্রম হলো প্রক্রিয়াকরণ শুরুর আগে একই অরিজিন থেকে ইঞ্জিন বা মডেল ডাউনলোড করা, এবং তার প্রতিটির জন্য সোর্সে লিখিত যুক্তি দেওয়া থাকে। - সেলফ-হোস্টিং অডিট। পুরো সোর্স ট্রি এবং বিল্ড করা আউটপুট তৃতীয় পক্ষের হোস্টের খোঁজে স্ক্যান করা হয়। কোনো লাইব্রেরি, ফন্ট, মডেল বা WebAssembly বাইনারি CDN থেকে লোড করা হয় না, তাই রিকোয়েস্টের পথে তৃতীয় পক্ষ বলে কিছু প্রথম থেকেই নেই।
- Content Security Policy। ডিপ্লয় করা
Content-Security-Policyহেডারে সেট করা আছেconnect-src 'self'। কোনো কোড যদি বাইরের দিকে রিকোয়েস্ট পাঠানোর চেষ্টাও করে, ব্রাউজার তা প্রত্যাখ্যান করবে। - রানটাইম লক। কোনো প্রক্রিয়াকরণের কাজ চলাকালে পাতার নিজস্ব নেটওয়ার্ক প্রিমিটিভগুলি আটকে দেওয়া হয় এবং সেগুলি রিজেক্ট করে। স্বয়ংক্রিয় ব্রাউজার টেস্ট এই আচরণটিই যাচাই করে।
যা আমরা ইচ্ছাকৃতভাবেই প্রতিশ্রুতি দিই না
- আমরা প্রতিশ্রুতি দিই না যে কোনো ফাইল হুবহু নির্দিষ্ট একটি আকারে পৌঁছাবে। কম্প্রেশন নির্ভর করে কনটেন্টের উপর। মানের সর্বনিম্ন সীমা না ভেঙে লক্ষ্যে পৌঁছানো না গেলে FileSlimmer তা জানিয়ে দেয় এবং যে সেরা ফলাফল পেয়েছে সেটিই ফিরিয়ে দেয়।
- আমরা প্রতিশ্রুতি দিই না যে প্রতিটি ফাইল প্রতিটি ডিভাইসে প্রক্রিয়া হবে। ব্রাউজারের মেমরি সীমিত, আর ফোনে বড় ফাইল ট্যাব ক্র্যাশ করানোর আগেই প্রত্যাখ্যান করা হতে পারে। ডিভাইসের সীমাগুলি আপনার ফাইল পড়ার পরে নয়, তার আগেই প্রয়োগ করা হয়।
- আমরা কোনো পারফরম্যান্স স্কোরের প্রতিশ্রুতি দিই না। Lighthouse ও Core Web Vitals নির্ভর করে ডিভাইস ও নেটওয়ার্কের উপর।
- আপনার এক্সটেনশন, আপনার অপারেটিং সিস্টেম বা আপনার নেটওয়ার্ক সম্পর্কে আমরা কোনো প্রতিশ্রুতি দিই না। দেখুন গোপনীয়তা বিবৃতি.
ধ্বংসাত্মক কাজগুলিকে চিহ্নিত করে দেওয়া হয়
কিছু কাজ স্বভাবতই তথ্য হারায়। র্যাস্টারাইজ করা PDF কম্প্রেশন সার্চযোগ্য টেক্সট, লিংক, ফর্ম, অ্যানোটেশন, লেয়ার, অ্যাক্সেসিবিলিটি কাঠামো এবং ডিজিটাল স্বাক্ষর সরিয়ে দেয়। স্বাক্ষরিত PDF সম্পাদনা করলে তার স্বাক্ষর অকার্যকর হয়ে যায়। মেটাডেটা সরালে ছবিতে যা দেখা যাচ্ছে সেই তথ্য সরে না। FileSlimmer এগুলির প্রতিটির ক্ষেত্রে পরে নয়, আগেই সতর্ক করে।
ওপেন সোর্স
FileSlimmer ওপেন-সোর্স উপাদানের উপর তৈরি। সেগুলির লাইসেন্স ও সোর্স রিপোজিটরির তালিকা আছে ওপেন-সোর্স নোটিশ পাতায়, LGPL উপাদানগুলির জন্য রিলিঙ্কিংয়ের প্রস্তাবসহ।
এই নথিটি প্রকাশ করেছে ZENIT GROUP S.A.S., Cali, Valle del Cauca, Colombia।