mirror of
https://github.com/stan-smith/FossFLOW.git
synced 2026-04-23 16:42:54 -04:00
204 lines
19 KiB
Markdown
204 lines
19 KiB
Markdown
# FossFLOW - আইসোমেট্রিক ডায়াগ্রাম টুল <img width="30" height="30" alt="fossflow" src="https://github.com/user-attachments/assets/56d78887-601c-4336-ab87-76f8ee4cde96" />
|
|
|
|
<p align="center">
|
|
<a href="../README.md">English</a> | <a href="README.cn.md">简体中文</a> | <a href="README.es.md">Español</a> | <a href="README.pt.md">Português</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.bn.md">বাংলা</a> | <a href="README.ru.md">Русский</a> | <a href="README.id.md">Bahasa Indonesia</a> | <a href="README.de.md">Deutsch</a>
|
|
</p>
|
|
|
|
<b>হ্যালো!</b> আমি Stan, যদি আপনি FossFLOW ব্যবহার করে থাকেন এবং এটি আপনাকে সাহায্য করেছে, <b>আমি সত্যিই প্রশংসা করব যদি আপনি কিছু ছোট দান করতে পারেন :)</b> আমি পূর্ণকালীন কাজ করি, এবং এই প্রকল্পে কাজ করার সময় খুঁজে পাওয়াটা যথেষ্ট চ্যালেঞ্জিং।
|
|
যদি আমি আপনার জন্য একটি ফিচার বাস্তবায়ন করেছি বা একটি বাগ ঠিক করেছি তবে এটি দুর্দান্ত হবে যদি আপনি পারেন :) যদি না হয়, তাতে কোনো সমস্যা নেই, এই সফটওয়্যারটি সর্বদা বিনামূল্যে থাকবে!
|
|
|
|
|
|
<b>এছাড়াও!</b> যদি আপনি এখনও না করে থাকেন, তবে <a href="https://github.com/markmanx/isoflow">@markmanx</a> দ্বারা নির্মিত অন্তর্নিহিত লাইব্রেরিটি দেখুন যার উপর এটি তৈরি। আমি সত্যিই এখানে একজন দৈত্যের কাঁধে দাঁড়িয়ে আছি 🫡
|
|
|
|
[](https://ko-fi.com/P5P61KBXA3)
|
|
|
|
<img width="30" height="30" alt="image" src="https://github.com/user-attachments/assets/dc6ec9ca-48d7-4047-94cf-5c4f7ed63b84" /> <b> https://buymeacoffee.com/stan.smith </b>
|
|
|
|
|
|
ধন্যবাদ,
|
|
|
|
-Stan
|
|
|
|
## এটি অনলাইনে চেষ্টা করুন
|
|
|
|
যান <b> --> https://stan-smith.github.io/FossFLOW/ <-- </b>
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------
|
|
FossFLOW হল সুন্দর আইসোমেট্রিক ডায়াগ্রাম তৈরি করার জন্য একটি শক্তিশালী, ওপেন-সোর্স প্রগ্রেসিভ ওয়েব অ্যাপ (PWA)। React এবং <a href="https://github.com/markmanx/isoflow">Isoflow</a> লাইব্রেরি দিয়ে তৈরি (এখন ফর্ক করা এবং NPM-এ fossflow হিসেবে প্রকাশিত), এটি অফলাইন সাপোর্ট সহ সম্পূর্ণরূপে আপনার ব্রাউজারে চলে।
|
|
|
|

|
|
|
|
- **🤝 [CONTRIBUTORS.md](https://github.com/stan-smith/FossFLOW/blob/master/CONTRIBUTORS.md)** - প্রকল্পে কীভাবে অবদান রাখবেন।
|
|
|
|
## সাম্প্রতিক আপডেট (অক্টোবর 2025)
|
|
|
|
### বহুভাষিক সমর্থন
|
|
- **8টি ভাষা সমর্থিত** - ইংরেজি, চীনা (সরলীকৃত), স্প্যানিশ, পর্তুগিজ (ব্রাজিলিয়ান), ফরাসি, হিন্দি, বাংলা এবং রাশিয়ানে সম্পূর্ণ ইন্টারফেস অনুবাদ
|
|
- **ভাষা নির্বাচক** - অ্যাপ হেডারে ব্যবহার করা সহজ ভাষা সুইচার
|
|
- **সম্পূর্ণ অনুবাদ** - সমস্ত মেনু, ডায়ালগ, সেটিংস, টুলটিপ এবং সাহায্য বিষয়বস্তু অনুবাদিত
|
|
- **লোকেল-সচেতন** - স্বয়ংক্রিয়ভাবে আপনার ভাষা পছন্দ সনাক্ত করে এবং মনে রাখে
|
|
|
|
### উন্নত সংযোজক টুল
|
|
- **ক্লিক-ভিত্তিক তৈরি** - নতুন ডিফল্ট মোড: প্রথম নোডে ক্লিক করুন, তারপর সংযোগ করতে দ্বিতীয় নোডে ক্লিক করুন
|
|
- **ড্র্যাগ মোড বিকল্প** - মূল ড্র্যাগ-এন্ড-ড্রপ এখনও সেটিংসের মাধ্যমে উপলব্ধ
|
|
- **মোড নির্বাচন** - সেটিংস → সংযোজক ট্যাবে ক্লিক এবং ড্র্যাগ মোডের মধ্যে স্যুইচ করুন
|
|
- **উন্নত নির্ভরযোগ্যতা** - ক্লিক মোড আরও পূর্বাভাসযোগ্য সংযোগ তৈরি প্রদান করে
|
|
|
|
### কাস্টম আইকন আমদানি
|
|
- **আপনার নিজস্ব আইকন আমদানি করুন** - আপনার ডায়াগ্রামে ব্যবহার করতে কাস্টম আইকন (PNG, JPG, SVG) আপলোড করুন
|
|
- **স্বয়ংক্রিয় স্কেলিং** - পেশাদার চেহারার জন্য আইকনগুলি স্বয়ংক্রিয়ভাবে সামঞ্জস্যপূর্ণ আকারে স্কেল করা হয়
|
|
- **আইসোমেট্রিক/ফ্ল্যাট টগল** - আমদানি করা আইকনগুলি 3D আইসোমেট্রিক বা ফ্ল্যাট 2D হিসাবে প্রদর্শিত হবে কিনা তা চয়ন করুন
|
|
- **স্মার্ট অধ্যবসায়** - কাস্টম আইকনগুলি ডায়াগ্রামের সাথে সংরক্ষিত এবং সমস্ত স্টোরেজ পদ্ধতিতে কাজ করে
|
|
- **আইকন সম্পদ** - বিনামূল্যে আইকন খুঁজুন:
|
|
- [Iconify Icon Sets](https://icon-sets.iconify.design/) - হাজার হাজার বিনামূল্যে SVG আইকন
|
|
- [Flaticon Isometric Icons](https://www.flaticon.com/free-icons/isometric) - উচ্চ মানের আইসোমেট্রিক আইকন প্যাক
|
|
|
|
### সার্ভার স্টোরেজ সমর্থন
|
|
- **স্থায়ী স্টোরেজ** - সার্ভার ফাইল সিস্টেমে সংরক্ষিত ডায়াগ্রাম, ব্রাউজার সেশনে টিকে থাকে
|
|
- **মাল্টি-ডিভাইস অ্যাক্সেস** - Docker ডিপ্লয়মেন্ট ব্যবহার করার সময় যেকোনো ডিভাইস থেকে আপনার ডায়াগ্রাম অ্যাক্সেস করুন
|
|
- **স্বয়ংক্রিয় সনাক্তকরণ** - উপলব্ধ হলে UI স্বয়ংক্রিয়ভাবে সার্ভার স্টোরেজ দেখায়
|
|
- **ওভাররাইট সুরক্ষা** - ডুপ্লিকেট নাম দিয়ে সংরক্ষণ করার সময় নিশ্চিতকরণ ডায়ালগ
|
|
- **Docker একীকরণ** - Docker ডিপ্লয়মেন্টে ডিফল্টভাবে সার্ভার স্টোরেজ সক্রিয়
|
|
|
|
### উন্নত ইন্টারঅ্যাকশন বৈশিষ্ট্য
|
|
- **কনফিগারযোগ্য হটকি** - ভিজ্যুয়াল সূচক সহ টুল নির্বাচনের জন্য তিনটি প্রোফাইল (QWERTY, SMNRCT, কোনোটিই নয়)
|
|
- **উন্নত প্যান কন্ট্রোল** - খালি এলাকা ড্র্যাগ, মিডল/রাইট ক্লিক, মডিফায়ার কী (Ctrl/Alt) এবং কীবোর্ড নেভিগেশন (Arrow/WASD/IJKL) সহ একাধিক প্যান পদ্ধতি
|
|
- **সংযোজক তীর টগল করুন** - পৃথক সংযোজকগুলিতে তীরগুলি দেখানো/লুকানোর বিকল্প
|
|
- **স্থায়ী টুল নির্বাচন** - সংযোগ তৈরি করার পরে সংযোজক টুল সক্রিয় থাকে
|
|
- **সেটিংস ডায়ালগ** - হটকি এবং প্যান কন্ট্রোলের জন্য কেন্দ্রীভূত কনফিগারেশন
|
|
|
|
### Docker এবং CI/CD উন্নতি
|
|
- **স্বয়ংক্রিয় Docker বিল্ড** - কমিটে স্বয়ংক্রিয় Docker Hub ডিপ্লয়মেন্টের জন্য GitHub Actions ওয়ার্কফ্লো
|
|
- **মাল্টি-আর্কিটেকচার সমর্থন** - `linux/amd64` এবং `linux/arm64` উভয়ের জন্য Docker ইমেজ
|
|
- **প্রি-বিল্ট ইমেজ** - `stnsmith/fossflow:latest`-এ উপলব্ধ
|
|
|
|
### Monorepo আর্কিটেকচার
|
|
- লাইব্রেরি এবং অ্যাপ্লিকেশন উভয়ের জন্য **একক রিপোজিটরি**
|
|
- সুসংগত নির্ভরতা ব্যবস্থাপনার জন্য **NPM Workspaces**
|
|
- রুটে `npm run build` দিয়ে **একীভূত বিল্ড প্রক্রিয়া**
|
|
|
|
### UI সংশোধন
|
|
- Quill সম্পাদক টুলবার আইকন প্রদর্শন সমস্যা সংশোধন করা হয়েছে
|
|
- প্রসঙ্গ মেনুতে React কী সতর্কতা সমাধান করা হয়েছে
|
|
- markdown সম্পাদক স্টাইলিং উন্নত করা হয়েছে
|
|
|
|
## বৈশিষ্ট্য
|
|
|
|
- 🎨 **আইসোমেট্রিক ডায়াগ্রামিং** - চমৎকার 3D-স্টাইল প্রযুক্তিগত ডায়াগ্রাম তৈরি করুন
|
|
- 💾 **অটো-সেভ** - আপনার কাজ প্রতি 5 সেকেন্ডে স্বয়ংক্রিয়ভাবে সংরক্ষিত হয়
|
|
- 📱 **PWA সমর্থন** - Mac এবং Linux-এ নেটিভ অ্যাপ হিসাবে ইনস্টল করুন
|
|
- 🔒 **গোপনীয়তা-প্রথম** - সমস্ত ডেটা আপনার ব্রাউজারে স্থানীয়ভাবে সংরক্ষিত
|
|
- 📤 **আমদানি/রপ্তানি** - JSON ফাইল হিসাবে ডায়াগ্রাম শেয়ার করুন
|
|
- 🎯 **সেশন স্টোরেজ** - ডায়ালগ ছাড়াই দ্রুত সংরক্ষণ
|
|
- 🌐 **অফলাইন সমর্থন** - ইন্টারনেট সংযোগ ছাড়াই কাজ করুন
|
|
- 🗄️ **সার্ভার স্টোরেজ** - Docker ব্যবহার করার সময় ঐচ্ছিক স্থায়ী স্টোরেজ (ডিফল্টভাবে সক্রিয়)
|
|
- 🌍 **বহুভাষিক** - 8টি ভাষার জন্য সম্পূর্ণ সমর্থন: English, 简体中文, Español, Português, Français, हिन्दी, বাংলা, Русский
|
|
|
|
|
|
## 🐳 Docker দিয়ে দ্রুত ডিপ্লয়
|
|
|
|
```bash
|
|
# Docker Compose ব্যবহার করা (প্রস্তাবিত - স্থায়ী স্টোরেজ অন্তর্ভুক্ত)
|
|
docker compose up
|
|
|
|
# অথবা স্থায়ী স্টোরেজ সহ Docker Hub থেকে সরাসরি চালান
|
|
docker run -p 80:80 -v $(pwd)/diagrams:/data/diagrams stnsmith/fossflow:latest
|
|
```
|
|
|
|
Docker-এ সার্ভার স্টোরেজ ডিফল্টভাবে সক্রিয়। আপনার ডায়াগ্রামগুলি হোস্টে `./diagrams`-এ সংরক্ষিত হবে।
|
|
|
|
সার্ভার স্টোরেজ নিষ্ক্রিয় করতে, `ENABLE_SERVER_STORAGE=false` সেট করুন:
|
|
```bash
|
|
docker run -p 80:80 -e ENABLE_SERVER_STORAGE=false stnsmith/fossflow:latest
|
|
```
|
|
|
|
## দ্রুত শুরু (স্থানীয় উন্নয়ন)
|
|
|
|
```bash
|
|
# রিপোজিটরি ক্লোন করুন
|
|
git clone https://github.com/stan-smith/FossFLOW
|
|
cd FossFLOW
|
|
|
|
# নির্ভরতা ইনস্টল করুন
|
|
npm install
|
|
|
|
# লাইব্রেরি তৈরি করুন (প্রথমবার প্রয়োজনীয়)
|
|
npm run build:lib
|
|
|
|
# উন্নয়ন সার্ভার শুরু করুন
|
|
npm run dev
|
|
```
|
|
|
|
আপনার ব্রাউজারে [http://localhost:3000](http://localhost:3000) খুলুন।
|
|
|
|
## Monorepo কাঠামো
|
|
|
|
এটি দুটি প্যাকেজ সম্বলিত একটি monorepo:
|
|
|
|
- `packages/fossflow-lib` - নেটওয়ার্ক ডায়াগ্রাম আঁকার জন্য React কম্পোনেন্ট লাইব্রেরি (Webpack দিয়ে তৈরি)
|
|
- `packages/fossflow-app` - আইসোমেট্রিক ডায়াগ্রাম তৈরির জন্য Progressive Web App (RSBuild দিয়ে তৈরি)
|
|
|
|
### উন্নয়ন কমান্ড
|
|
|
|
```bash
|
|
# উন্নয়ন
|
|
npm run dev # অ্যাপ উন্নয়ন সার্ভার শুরু করুন
|
|
npm run dev:lib # লাইব্রেরি উন্নয়নের জন্য ওয়াচ মোড
|
|
|
|
# বিল্ডিং
|
|
npm run build # লাইব্রেরি এবং অ্যাপ উভয়ই তৈরি করুন
|
|
npm run build:lib # শুধুমাত্র লাইব্রেরি তৈরি করুন
|
|
npm run build:app # শুধুমাত্র অ্যাপ তৈরি করুন
|
|
|
|
# পরীক্ষা এবং লিন্টিং
|
|
npm test # ইউনিট টেস্ট চালান
|
|
npm run lint # লিন্টিং ত্রুটি পরীক্ষা করুন
|
|
|
|
# E2E টেস্ট (Selenium)
|
|
cd e2e-tests
|
|
./run-tests.sh # এন্ড-টু-এন্ড টেস্ট চালান (Docker এবং Python প্রয়োজন)
|
|
|
|
# প্রকাশনা
|
|
npm run publish:lib # npm-এ লাইব্রেরি প্রকাশ করুন
|
|
```
|
|
|
|
## কীভাবে ব্যবহার করবেন
|
|
|
|
### ডায়াগ্রাম তৈরি করা
|
|
|
|
1. **আইটেম যোগ করুন**:
|
|
- উপরের ডানদিকের মেনুতে "+" বোতাম টিপুন, কম্পোনেন্ট লাইব্রেরি বাম দিকে প্রদর্শিত হবে
|
|
- লাইব্রেরি থেকে ক্যানভাসে কম্পোনেন্ট ড্র্যাগ এবং ড্রপ করুন
|
|
- অথবা গ্রিডে রাইট-ক্লিক করুন এবং "নোড যোগ করুন" নির্বাচন করুন
|
|
|
|
2. **আইটেম সংযুক্ত করুন**:
|
|
- সংযোজক টুল নির্বাচন করুন ('C' টিপুন বা সংযোজক আইকনে ক্লিক করুন)
|
|
- **ক্লিক মোড** (ডিফল্ট): প্রথম নোডে ক্লিক করুন, তারপর দ্বিতীয় নোডে ক্লিক করুন
|
|
- **ড্র্যাগ মোড** (ঐচ্ছিক): প্রথম নোড থেকে দ্বিতীয় নোডে ক্লিক করুন এবং ড্র্যাগ করুন
|
|
- সেটিংস → সংযোজক ট্যাবে মোড স্যুইচ করুন
|
|
|
|
3. **আপনার কাজ সংরক্ষণ করুন**:
|
|
- **দ্রুত সংরক্ষণ** - ব্রাউজার সেশনে সংরক্ষণ করে
|
|
- **রপ্তানি** - JSON ফাইল হিসাবে ডাউনলোড করুন
|
|
- **আমদানি** - JSON ফাইল থেকে লোড করুন
|
|
|
|
### স্টোরেজ বিকল্প
|
|
|
|
- **সেশন স্টোরেজ**: ব্রাউজার বন্ধ হলে অস্থায়ী সংরক্ষণগুলি মুছে যায়
|
|
- **রপ্তানি/আমদানি**: JSON ফাইল হিসাবে স্থায়ী স্টোরেজ
|
|
- **অটো-সেভ**: সেশনে প্রতি 5 সেকেন্ডে পরিবর্তনগুলি স্বয়ংক্রিয়ভাবে সংরক্ষণ করে
|
|
|
|
## অবদান রাখা
|
|
|
|
আমরা অবদানকে স্বাগত জানাই! দয়া করে নির্দেশিকার জন্য [CONTRIBUTORS.md](../CONTRIBUTORS.md) দেখুন।
|
|
|
|
## ডকুমেন্টেশন
|
|
|
|
- [FOSSFLOW_ENCYCLOPEDIA.md](../FOSSFLOW_ENCYCLOPEDIA.md) - কোডবেসের জন্য ব্যাপক গাইড
|
|
- [CONTRIBUTORS.md](../CONTRIBUTORS.md) - অবদানের নির্দেশিকা
|
|
|
|
## লাইসেন্স
|
|
|
|
MIT
|