প্রকল্প সম্পর্কে
Design Oracle হলো একটি MIT-লাইসেন্সপ্রাপ্ত টুল যা একটি ওয়েবসাইট বিশ্লেষণ করে তার সম্পূর্ণ ডিজাইন সিস্টেম এক্সট্রাক্ট করতে ব্যবহৃত হয়। এটি একটি Next.js ফ্রন্টএন্ড, FastAPI ব্যাকএন্ড, ARQ ওয়ার্কার, Redis, SQLite এবং একটি Playwright/Chromium অ্যানালাইসিস পাইপলাইনের সমন্বয়ে গঠিত।
এর মূল সক্ষমতাগুলোর মধ্যে রয়েছে Playwright-এর মাধ্যমে ফুল-পেজ ক্যাপচার, ভিজ্যুয়াল স্কোর এবং হিউরিস্টিকস সহ ডিজাইন DNA ক্লাসিফিকেশন, বাউন্ডিং বক্স সহ হিরো, প্রাইসিং, ন্যাভ এবং FAQ-এর মতো এলিমেন্টের কম্পোনেন্ট ডিটেকশন, Redis pub/sub এবং SSE-এর মাধ্যমে লাইভ প্রগ্রেস, এবং Tailwind v4 config, React JSX কম্পোনেন্ট, JSON ডিজাইন টোকেন এবং একটি Markdown DESIGN.md রিপোর্ট হিসেবে এক্সপোর্ট করার সুবিধা। এটি AI ওয়ার্কফ্লোর জন্য MCP-এর মাধ্যমে অ্যানালাইসিস টুলস প্রদান করে।
সেটআপের জন্য Docker Compose সুপারিশ করা হয়েছে: রিপোজিটরিতে .env.example-কে .env-এ কপি করে docker compose up --build -d চালানোর এবং এরপর http://localhost:3000 খোলার কথা বলা হয়েছে। লোকাল start.sh অপশনের জন্য Python 3.12+, Node.js 20+ এবং Redis 7+ প্রয়োজন, যা ভার্চুয়াল এনভায়রনমেন্ট, Playwright Chromium, Redis, ARQ ওয়ার্কার, পোর্ট 3000-এ Next.js এবং পোর্ট 5000-এ FastAPI চালু করে।
এর API-তে health, analyze, status, result, SSE events, screenshot, delete, designs list এবং Tailwind, components, design.md ও tokens-এর জন্য এক্সপোর্ট এন্ডপয়েন্ট রয়েছে। প্রতিটি অ্যানালাইসিস analyses/{id}/ ফোল্ডারে screenshot.png, screenshot-overlay.png, result.json, DESIGN.md, tailwind.config.js, components.jsx এবং design-tokens.json হিসেবে সংরক্ষিত হয়।
MCP সার্ভারটি http://localhost:5000/mcp-এ HTTP SSE-এর মাধ্যমে অথবা standalone stdio মোডে উপলব্ধ। একটি হালকা uvx CLI, design-oracle-mcp, Playwright/Chromium ছাড়াই HTTP-এর মাধ্যমে ব্যাকএন্ড কল করে। opencode, Cursor এবং Claude Code-এর জন্য টুল স্নিপেটগুলো ডকুমেন্ট করা হয়েছে। একটি Cloudflare Tunnel স্ক্রিপ্ট, start-public.sh, অ্যাপটিকে একটি সাময়িক পাবলিক HTTPS URL-এর মাধ্যমে প্রকাশ করতে পারে।
পরিচিত সীমাবদ্ধতাগুলো হলো: অ্যানালাইসিস বর্তমানে একটি একক 1440x900 ভিউপোর্ট ব্যবহার করে; বট-প্রটেক্টেড সাইটগুলো Playwright-কে ব্লক করতে পারে, যার জন্য প্রাথমিক এবং মধ্যবর্তী সুরক্ষার জন্য একটি ঐচ্ছিক STEALTH_MODE রয়েছে, তবে এন্টারপ্রাইজ সুরক্ষার জন্য CAPTCHA বা পেইড প্রক্সি প্রয়োজন হতে পারে; কম্পোনেন্ট ডিটেকশন ML/ভিশন-ভিত্তিক নয় বরং হিউরিস্টিক-ভিত্তিক; এবং SQLite স্টোরেজ লোকাল বা একক ব্যবহারকারীর জন্য উপযুক্ত, মাল্টি-টেন্যান্ট ডেপ্লয়মেন্টের জন্য নয়।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.