প্রকল্প সম্পর্কে
ZeroWeb হলো Rust-এ বাস্তবায়িত একটি পরীক্ষামূলক ক্রস-প্ল্যাটফর্ম ব্রাউজার প্রজেক্ট, যার রিপোজিটরিতে দুটি প্রোডাক্ট লাইন রক্ষণাবেক্ষণ করা হয়: এমবেডেবল এবং পুনঃব্যবহারযোগ্য ZeroWebView লাইব্রেরি এবং একটি পূর্ণাঙ্গ ZeroBrowser ব্রাউজার অ্যাপ্লিকেশন। এই প্রজেক্টটি এমবেড-প্রাইয়োরিটি, লাইসেন্স বাউন্ডারি-প্রাইয়োরিটি (মূল লাইনের ডিপেন্ডেন্সি MIT, Apache-2.0, BSD এর মতো宽松 লাইসেন্সের দিকে ঝুঁকে থাকে) এবং Rust ফুল-স্ট্যাক রুটের ওপর ভিত্তি করে তৈরি। এখানে DOM, CSS, লেআউট, রেন্ডারিং, নেভিগেশন এবং সিকিউরিটি বাউন্ডারিগুলো সরাসরি কোনো বিদ্যমান কার্নেল ব্যবহার না করে রিপোজিটরির ভেতরে ধাপে ধাপে তৈরি করা হয়েছে।
আর্কিটেকচারের ক্ষেত্রে এটি মাল্টি-প্রসেস স্প্লিট পদ্ধতি অবলম্বন করে: zero-browser শুধুমাত্র উইন্ডো, ব্রাউজার ইন্টারফেস, নেটওয়ার্ক প্রক্সি এবং IPC ফ্রেম ইমপোর্ট প্রেজেন্টেশন ধরে রাখে; পেজ রেন্ডারিং এবং স্ক্রিপ্ট এক্সিকিউশন zero-renderer দ্বারা পরিচালিত হয়; ইমেজ ডিকোডিং এবং কম্পোজিটিং যথাক্রমে zero-image-decoder এবং zero-compositor সাব-প্রসেস দ্বারা হ্যান্ডেল করা হয়। ডিফল্ট রিলিজ ভার্সনে ব্রাউজার প্রসেসের ভেতরে WebView, স্ক্রিপ্ট স্যান্ডবক্স বা JS ইঞ্জিন লিঙ্ক করা থাকে না; হেডলেস ডিবাগিং-ও রেন্ডারার IPC-এর মাধ্যমে নেভিগেশন, স্ক্রিপ্ট এবং স্ক্রিনশট সম্পন্ন করে। ওয়ার্কস্পেসে মোট ৩২টি মেম্বার রয়েছে, যার মধ্যে ২২টি লাইব্রেরি crate, ৭টি অ্যাপ্লিকেশন এন্ট্রি পয়েন্ট এবং টেস্ট ও ডেভেলপমেন্ট টুলস অন্তর্ভুক্ত।
পেজ JavaScript লেয়ারটি script-sandbox দ্বারা V8/QuickJS ডুয়াল ইঞ্জিন ফিচার গেট প্রদান করে, যা Web Worker এবং ES Modules কভার করে এবং WebAssembly JS API-কে স্বয়ংক্রিয়ভাবে wasm-sandbox-এ ব্রিজ করে। V8 নেটিভ DOM বাইন্ডিং ডিফল্ট-অন করা হয়েছে, যার মধ্যে নেটিভ ইভেন্ট ডিসপ্যাচ এবং বাবলিং, customElements/Web Components লাইফসাইকেল, fetch রিয়ালাইজেশন, বিভিন্ন অবজারভার কলব্যাক এবং ফর্ম কন্ট্রোল ও সিলেক্টর সাপোর্ট অন্তর্ভুক্ত। মিডিয়া ডিরেকশনে webm/Matroska demux, পিওর Rust-এ VP9 ডিকোডিং, ঐচ্ছিক AV1 এবং H.264 ডিকোডিং, অডিও ডিকোডিং এবং VideoPlayer প্লেব্যাক ড্রাইভার, মিক্সিং বাস এবং Web Audio-র ন্যূনতম ইন্টারফেস প্রদান করা হয়েছে। স্টোরেজ এবং অফলাইন সক্ষমতার মধ্যে localStorage, sessionStorage, IndexedDB, caches/Cache API অন্তর্ভুক্ত এবং Service Worker লাইফসাইকেল ও fetch respondWith ইন্টারসেপশন বাস্তবায়িত হয়েছে; OPFS রিয়ালাইজেশন এখনও প্রক্রিয়াধীন। সিকিউরিটি সাইডে CSP বাস্তবায়ন, HSTS প্রি-লোড, মিক্সড কন্টেন্ট ব্লকিং এবং আপগ্রেড, পারমিশন মডেল এবং সাইট আইসোলেশন অন্তর্ভুক্ত; অ্যাক্সেসিবিলিটি FocusManager এবং ARIA থেকে শুরু হয়েছে; HTML এডিটিং, কীবোর্ড ইন্টারঅ্যাকশন এবং ফর্ম বিহেভিয়ার কম্প্যাটিবিলিটিও স্বতন্ত্র ডেভেলপমেন্ট লাইন হিসেবে এগিয়ে চলছে।
ইঞ্জিনিয়ারিং সাইডে W3C WebDriver সার্ভিস (৩৪টি এন্ডপয়েন্ট, যার মধ্যে স্ক্রিনশট এবং ফুল-লিঙ্ক ইন্টিগ্রেশন টেস্ট অন্তর্ভুক্ত), WPT/CSSWG reftest-এর ওপর ভিত্তি করে রেন্ডারিং কম্প্যাটিবিলিটি মেজারমেন্ট (README-তে রেকর্ড করা আপস্ট্রিম reftest corpus-এর প্রায় ৮৭.২% অ্যালাইনমেন্ট এবং Chromium Oracle পিক্সেল কনসিস্টেন্সি রেটকে সততার সূচক হিসেবে ব্যবহার করা হয়), প্রোডাক্ট স্ট্যাটিক পেজ পিক্সেল রিগ্রেশন গেট, এবং Linux/macOS/Windows প্যাকেজিং স্ক্রিপ্ট ও Android M0 বুটস্ট্র্যাপ প্রদান করা হয়েছে। প্রজেক্টটি স্পষ্টভাবে পরীক্ষামূলক পর্যায় হিসেবে চিহ্নিত করা হয়েছে, যা মূলত শিক্ষা, গবেষণা এবং ইঞ্জিনিয়ারিং এক্সপ্লোরেশনের জন্য এবং এটি দৈনন্দিন বা প্রোডাকশন ব্রাউজার হিসেবে ব্যবহারের জন্য উপযুক্ত নয়; এর লাইসেন্স হলো MIT। এটি একই সাথে একটি AI-first ইঞ্জিনিয়ারিং এক্সপেরিমেন্ট, যার কোড ডেভেলপমেন্ট মূলত AI দ্বারা সম্পন্ন হয়েছে এবং মানুষ ডিজাইন স্কিম, গুরুত্বপূর্ণ সিদ্ধান্ত এবং ফলাফল যাচাইকরণের দায়িত্ব পালন করেছে।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.