প্রকল্প সম্পর্কে
## এই রিপোজিটরি কী
`flowscripter/template-bun-rust-library`-কে এর README-তে "Bun FFI বাইন্ডিং সহ একটি Rust লাইব্রেরির জন্য প্রজেক্ট টেমপ্লেট" হিসেবে বর্ণনা করা হয়েছে। এটি কোনো এন্ড-ইউজার অ্যাপ্লিকেশনের পরিবর্তে একটি শুরুর বিন্দু হিসেবে তৈরি করা হয়েছে: ডেভেলপাররা এখান থেকে একটি নতুন প্রজেক্ট স্ক্যাফোল্ড করেন এবং তারপর স্যাম্পল কোডটিকে তাদের নিজস্ব Rust ইমপ্লিমেন্টেশন এবং TypeScript বাইন্ডিং দিয়ে প্রতিস্থাপন করেন।
## স্ক্যাফোল্ডিং ব্যবহার
README-তে সরাসরি টেমপ্লেট থেকে একটি নতুন Bun প্রজেক্ট তৈরির প্রক্রিয়া নথিভুক্ত করা হয়েছে:
`bun create @flowscripter/template-bun-rust-library`
## জেনারেটেড মডিউল ব্যবহার
প্রকাশিত মডিউলটি `bun add @flowscripter/template-bun-rust-library` এর মাধ্যমে যুক্ত করা হয়, এবং README-র উদাহরণে একটি একক এক্সপোর্ট করা ফাংশন ইমপোর্ট এবং কল করা হয়েছে:
```typescript
import { world } from "@flowscripter/template-bun-rust-library";
world();
```
এটি টেমপ্লেটের প্রত্যাশিত গঠন প্রদর্শন করে: একটি Rust লাইব্রেরি যা Bun-এর FFI সমর্থনের মাধ্যমে TypeScript ব্যবহারকারীদের কাছে পৌঁছে দেওয়া হয়, যেখানে `index.ts` হলো TypeScript এন্ট্রি পয়েন্ট।
## ডেভেলপমেন্ট ওয়ার্কফ্লো
README-তে নিম্নলিখিত কমান্ডগুলোর তালিকা দেওয়া হয়েছে:
- `bun install` — ডিপেন্ডেন্সি ইনস্টল করে।
- `bun run build` — আউটপুট বিল্ড করে; README অনুযায়ী এটি Node.js এবং TypeScript ব্যবহারকারীদের জন্য `dist/` তৈরি করে, যেখানে Bun সরাসরি র-সোর্স ব্যবহার করে।
- `cargo test` — Rust টেস্টগুলো রান করে।
- `cargo build --release && bun test` — Rust রিলিজ আর্টিফ্যাক্ট বিল্ড করে এবং Bun টেস্ট স্যুট রান করে।
- `bunx oxfmt` — ফরম্যাট করে।
- `cargo fmt && bunx oxlint index.ts src/ tests/` — Rust এবং TypeScript সোর্স লিন্ট করে।
- `bunx typedoc index.ts` — HTML API ডকুমেন্টেশন তৈরি করে।
## ডকুমেন্টেশন
Markdown রেন্ডারিং যাচাই করার জন্য README-তে একটি স্যাম্পল Mermaid ক্লাস ডায়াগ্রাম (`Foo <|-- Bar`) অন্তর্ভুক্ত করা হয়েছে এবং GitHub Pages-এ হোস্ট করা অটো-জেনারেটেড API ডকুমেন্টেশনের লিঙ্ক দেওয়া হয়েছে। অতিরিক্ত ডকুমেন্টেশন লিঙ্কের মধ্যে docs.rs-এ Rust ডক্স অন্তর্ভুক্ত রয়েছে।
## প্রজেক্ট মেটাডেটা
রিপোজিটরিটিতে রিলিজ ভার্সন, বিল্ড স্ট্যাটাস, API ডক্স, Rust ডক্স, কভারেজ এবং একটি MIT লাইসেন্সের ব্যাজ রয়েছে। লাইসেন্সটি MIT © Flowscripter হিসেবে উল্লেখ করা হয়েছে।
## সম্ভাব্য ব্যবহারকারীদের জন্য নোট
যেহেতু এটি একটি টেমপ্লেট, তাই `world()` এক্সপোর্ট এবং উদাহরণ ডায়াগ্রামটি প্লেসহোল্ডার হিসেবে ব্যবহৃত হয়েছে। এর বাস্তব মূল্য হলো একটি Rust ক্রেট এবং একটি Bun/TypeScript প্যাকেজের মধ্যে এটি যে সংযোগ প্রদান করে, সেই সাথে এর সাথে থাকা বিল্ড, টেস্ট, লিন্ট, ফরম্যাটিং এবং ডকুমেন্টেশন কমান্ড এবং CI কনফিগারেশন।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.