Skip to content

Commit de42116

Browse files
authored
Merge branch 'develop' into flutter/webrtc
2 parents c5f2826 + 89deb9b commit de42116

6 files changed

Lines changed: 355 additions & 112 deletions

File tree

data/adb.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,29 @@
5353
"definition": "অ্যাপ ইন্সটল করা",
5454
"code": "adb install <apk-লোকেশন>"
5555
},
56+
{
57+
"definition": "ডিভাইস থেকে অ্যাপ রিমুভ করা",
58+
"code": "adb uninstall package-name"
59+
},
5660
{
5761
"definition": "লগ",
5862
"code": "adb logcat [অপশন] [ফিল্টার] [ফিল্টার] ..."
5963
},
6064
{
6165
"definition": "চলন্ত অ্যাপের লগ",
6266
"code": "adb logcat AndroidRuntime:E *:S\""
67+
},
68+
{
69+
"definition": "ফাইল ডাউনলোড করা",
70+
"code": "adb pull /sdcard/file-name"
71+
},
72+
{
73+
"definition": "ফাইল আপলোড করা",
74+
"code": "adb push file-name /sdcard/"
75+
},
76+
{
77+
"definition": "ফ্ল্যাশাবল জিপ ফাইল ফ্ল্যাশ করা",
78+
"code": "adb sideload filename.zip"
6379
}
6480
]
6581
},

data/dart.json

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@
150150
{
151151
"definition": "একটি স্ট্রিং খালি কিনা",
152152
"code": "''.isEmpty"
153-
}
153+
},
154154
{
155155
"definition": "একটি স্ট্রিং এ ভ্যালু আছে",
156156
"code": "''.isNotEmpty"
@@ -480,35 +480,39 @@
480480
"items": [
481481
{
482482
"definition": "প্রোজেক্টের সবগুলো প্যাকেজ ডাউনলোড করা",
483-
"code": "pub get"
483+
"code": "dart pub get"
484484
},
485485
{
486486
"definition": "লোকাল ক্যাশ থেকে প্যাকেজ সংযুক্ত করা",
487-
"code": "pub get --offline"
487+
"code": "dart pub get --offline"
488488
},
489489
{
490490
"definition": "লোকাল ক্যাশে একটি প্যাকেজ সংযুক্ত করা",
491-
"code": "pub cache add <প্যাকেজের নাম> --version \"<প্যাকেজের ভার্সন>\""
491+
"code": "dart pub cache add <প্যাকেজের নাম> --version \"<প্যাকেজের ভার্সন>\""
492+
},
493+
{
494+
"definition": "সিস্টেম ক্যাশে সমস্ত প্যাকেজ পুনরায় ইনস্টল করতে",
495+
"code": "dart pub cache repair"
492496
},
493497
{
494-
"definition": "সম্পাদনার কারণে প্যাকেজ মেরামতের জন্য পুনরায় ইনস্টল করা",
495-
"code": "pub cache repair"
498+
"definition": "সিস্টেম ক্যাশ রিমুভ করতে",
499+
"code": "dart pub cache clean"
496500
},
497501
{
498502
"definition": "ব্যবহৃত প্যাকেজগুলোকে ট্রি আকারে প্রিন্ট করা",
499503
"code": "pub deps"
500504
},
501505
{
502506
"definition": "ব্যবহৃত কোনো প্যাকেজের নতুন ভার্সন এসেছে কিনা খুঁজে দেখা",
503-
"code": "pub outdated"
507+
"code": "dart pub outdated"
504508
},
505509
{
506510
"definition": "ব্যবহৃত প্যাকেজগুলোকে নতুন ভার্সনে আপগ্রেড করা",
507-
"code": "pub upgrade"
511+
"code": "dart pub upgrade"
508512
},
509513
{
510514
"definition": "সার্বজনীন উপলব্ধ প্যাকেজ সচল করা",
511-
"code": "pub global activate <প্যাকেজের নাম>"
515+
"code": "dart pub global activate <প্যাকেজের নাম>"
512516
}
513517
]
514518
},

data/flutter.json

Lines changed: 82 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,14 @@
4343
{
4444
"definition": "অর্গানাইজেশন/প্রতিষ্ঠানের নাম সেট করতে",
4545
"code": "flutter create --org com.yourorg your_project"
46+
},
47+
{
48+
"definition": "প্রোজেক্ট টেম্পলেট সেট করতে",
49+
"code": "flutter create --template=(app|package|plugin|module) <project_name>"
50+
},
51+
{
52+
"definition": "পূর্বে এক্সপোর্টকৃত ফাইলসমূহ ডিলিট করতে",
53+
"code": "flutter clean"
4654
}
4755
]
4856
},
@@ -143,6 +151,18 @@
143151
"code": "”fvm flutter pub get”, “fvm flutter run”"
144152
},
145153
{
154+
"definition": "FVM ভার্সন ^3.0.0 আপগ্রেড",
155+
"code": "FVM এর নতুন ভার্সনগুলোতে বেশ কিছু চেইঞ্জ এসেছে। \n প্রথমেই প্রজেক্টের টার্মিনালে dart pub global activate fvm রান করুন। এতে আপনার মেশিনের FVM, লেটেস্ট ভার্সনে আপডেট হয়ে যাবে।"
156+
},
157+
{
158+
"definition": "FVM v^3.0.0 এর কনফিগ",
159+
"code": "ভার্সন ^3.0.0 এর পর থেকে আগের .fvm ফোল্ডারটির সাথেসাথে প্রজেক্টের রুট-এ .fvmrc ফাইল তৈরি হবে। এতে প্রোজেক্ট স্পেসিফিক কনফিগারেশনের ইনফরমেশন থাকবে।"
160+
},
161+
{
162+
"definition": "FVM v^3.0.0 এর সুবিধা",
163+
"code": "ভার্সন ^3.0.0 এর থেকে, ফ্লাটারের ব্যাসিক কমান্ডগুলোর জন্য আগের মতো শুরুতে fvm ব্যবহার না করলেও হবে। \n আগে: fvm flutter pub get \n এখন: flutter pub get"
164+
},
165+
{
146166
"definition": "অফিসিয়াল সাইট",
147167
"code": "https://fvm.app"
148168
}
@@ -362,7 +382,68 @@
362382
"code": "https://webrtc.org\nhttps://codelabs.developers.google.com/codelabs/webrtc-web\nhttps://www.w3.org/TR/webrtc\n\nhttps://pub.dev/packages/flutter_webrtc"
363383
}
364384
]
365-
},
385+
},
386+
{
387+
"title": "Flutter টেস্টিং (Flutter Testing)",
388+
"items": [
389+
{
390+
"definition": "ফ্লাটারে ৩ ধরনের টেস্ট রান করা যায়",
391+
"code": "১. ইউনিট টেস্ট (Unit Test)\n২. উইজেট টেস্ট (Widget Test)\n৩. ইন্টিগ্রেশন টেস্ট (Integration Test)"
392+
},
393+
{
394+
"definition": "Unit Test কি?",
395+
"code": "কোনো একটা ফাংশন, মেথড বা ক্লাস টেস্ট করার জন্য ইউনিট টেস্ট ব্যবহার করা হয়।"
396+
},
397+
{
398+
"definition": "Widget Test কি?",
399+
"code": "উইজেট টেস্টিং হলো নির্দিষ্ট উইজেট বা উইজেটের কোনো পার্ট টেস্ট করা।"
400+
},
401+
{
402+
"definition": "Integration Test কি?",
403+
"code": "ইন্টিগ্রেশন টেস্টিং এর মাধ্যমে একটি এপের কমপ্লিট ফাংশনালিটি টেস্ট করা হয়। একে এন্ড টু এন্ড টেস্টও বলা হয়।"
404+
},
405+
{
406+
"definition": "টেস্টিং রিলেটেড প্যাকেজ যোগ করতে -",
407+
"code": "dev_dependencies:\n flutter_test:\n sdk: flutter\n integration_test:\n sdk: flutter\n mockito: ^5.0.0"
408+
},
409+
{
410+
"definition": "ইউনিট টেস্ট রান করতে -",
411+
"code": "flutter test test/unit_test.dart"
412+
},
413+
{
414+
"definition": "উইজেট টেস্ট রান করতে -",
415+
"code": "flutter test test/widget_test.dart"
416+
},
417+
{
418+
"definition": "ইন্টিগ্রেশন টেস্ট রান করতে -",
419+
"code": "flutter test integration_test/app_test.dart"
420+
},
421+
{
422+
"definition": "সকল টেস্ট রান করতে -",
423+
"code": "flutter test"
424+
},
425+
{
426+
"definition": "ইউনিট টেস্ট উদাহরণ",
427+
"code": "void main() {\n test('String.split() splits the string on the delimiter', () {\n var string = 'foo,bar,baz';\n expect(string.split(','), equals(['foo', 'bar', 'baz']));\n });\n}"
428+
},
429+
{
430+
"definition": "উইজেট টেস্ট উদাহরণ",
431+
"code": "void main() {\n testWidgets('MyWidget has a title and message', (WidgetTester tester) async {\n await tester.pumpWidget(MyWidget(title: 'T', message: 'M'));\n final titleFinder = find.text('T');\n final messageFinder = find.text('M');\n expect(titleFinder, findsOneWidget);\n expect(messageFinder, findsOneWidget);\n });\n}"
432+
},
433+
{
434+
"definition": "ইন্টিগ্রেশন টেস্ট উদাহরণ",
435+
"code": "void main() {\n IntegrationTestWidgetsFlutterBinding.ensureInitialized();\n testWidgets('tap on the floating action button, verify counter',\n (WidgetTester tester) async {\n app.main();\n await tester.pumpAndSettle();\n expect(find.text('0'), findsOneWidget);\n final Finder fab = find.byTooltip('Increment');\n await tester.tap(fab);\n await tester.pumpAndSettle();\n expect(find.text('1'), findsOneWidget);\n });\n}"
436+
},
437+
{
438+
"definition": "মক অবজেক্ট তৈরি করেন (Mockito ব্যবহার করে)",
439+
"code": "import 'package:mockito/mockito.dart';\n\nclass MockYourClass extends Mock implements YourClass {}\n\nvoid main() {\n final mock = MockYourClass();\n when(mock.someMethod()).thenReturn('mocked value');\n}"
440+
},
441+
{
442+
"definition": "টেস্ট কভারেজ রিপোর্ট জেনারেট করেন",
443+
"code": "flutter test --coverage\n# কভারেজ রিপোর্ট coverage/lcov.info ফাইলে জেনারেট হবে\n# HTML রিপোর্ট জেনারেট করতে lcov ইনস্টল করেন এবং নিচের কমান্ড চালান:\n# genhtml coverage/lcov.info -o coverage/html"
444+
}
445+
]
446+
},
366447
{
367448
"title": "কিছু ইম্পরট্যান্ট ফ্লাটার শীট",
368449
"items": [

data/jenkins-fundamentals.json

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
{
2+
"id": "jenkins",
3+
"title": "জেনকিন্স ফান্ডামেন্টালস",
4+
"slug": "জেনকিন্স",
5+
"description": "জেনকিন্স (Jenkins) একটি ওপেন সোর্স অটোমেশন সার্ভার, যা সফটওয়্যার ডেভেলপমেন্টের জন্য অবিচ্ছিন্ন ইন্টিগ্রেশন এবং ডেলিভারি সরবরাহ করে।",
6+
"colorPref": "#d24939",
7+
"contents": [
8+
{
9+
"title": "জেনকিন্স ইনস্টল করা",
10+
"items": [
11+
{
12+
"definition": "উবুন্টুতে জেনকিন্স ইনস্টল করা",
13+
"code": "sudo apt update\nsudo apt install jenkins"
14+
},
15+
{
16+
"definition": "জেনকিন্স সার্ভিস চালু করা",
17+
"code": "sudo systemctl start jenkins"
18+
},
19+
{
20+
"definition": "জেনকিন্স সার্ভিস অটোমেটিক স্টার্ট করতে",
21+
"code": "sudo systemctl enable jenkins"
22+
}
23+
]
24+
},
25+
{
26+
"title": "মৌলিক ধারণা",
27+
"items": [
28+
{
29+
"definition": "জব (Job)",
30+
"code": "জব হলো একটি নির্দিষ্ট কাজ বা টাস্ক, যা জেনকিন্স রান করে, যেমন কোড বিল্ড করা বা টেস্ট রান করা।"
31+
},
32+
{
33+
"definition": "পাইপলাইন (Pipeline)",
34+
"code": "পাইপলাইন হলো একাধিক স্টেজ নিয়ে গঠিত, যা স্বয়ংক্রিয়ভাবে কোড বিল্ড, টেস্ট এবং ডেপ্লয়মেন্ট প্রক্রিয়া সম্পন্ন করে।"
35+
},
36+
{
37+
"definition": "নোড (Node)",
38+
"code": "নোড হলো একটি মেশিন যেখানে জেনকিন্স জব রান হয়, এটি মেইন সার্ভার বা স্লেভ হতে পারে।"
39+
},
40+
{
41+
"definition": "এজেন্ট (Agent)",
42+
"code": "এজেন্ট হলো একটি সিস্টেম বা মেশিন যেখানে জেনকিন্সের জব বা কাজগুলো চালানো হয়।"
43+
}
44+
]
45+
},
46+
{
47+
"title": "মৌলিক কমান্ডসমূহ",
48+
"items": [
49+
{
50+
"definition": "জেনকিন্স সার্ভার স্টার্ট করতে",
51+
"code": "sudo systemctl start jenkins"
52+
},
53+
{
54+
"definition": "জেনকিন্স সার্ভার বন্ধ করতে",
55+
"code": "sudo systemctl stop jenkins"
56+
},
57+
{
58+
"definition": "জেনকিন্স সার্ভার রিস্টার্ট করতে",
59+
"code": "sudo systemctl restart jenkins"
60+
},
61+
{
62+
"definition": "জেনকিন্স সার্ভারের স্ট্যাটাস চেক করতে",
63+
"code": "sudo systemctl status jenkins"
64+
},
65+
{
66+
"definition": "জেনকিন্স কনফিগারেশন রিলোড করতে",
67+
"code": "sudo systemctl reload jenkins"
68+
}
69+
]
70+
},
71+
{
72+
"title": "এডভান্সড কমান্ডসমূহ",
73+
"items": [
74+
{
75+
"definition": "জেনকিন্স UI তে অ্যাক্সেস পেতে (ডিফল্ট পোর্ট 8080)",
76+
"code": "http://localhost:8080"
77+
},
78+
{
79+
"definition": "ইনিশিয়াল পাসওয়ার্ড পেতে",
80+
"code": "sudo cat /var/lib/jenkins/secrets/initialAdminPassword"
81+
},
82+
{
83+
"definition": "জেনকিন্স প্লাগইন ইনস্টল করতে",
84+
"code": "Manage Jenkins > Manage Plugins > Available"
85+
},
86+
{
87+
"definition": "জেনকিন্স পাইপলাইন তৈরি করতে",
88+
"code": "পাইপলাইন স্ক্রিপ্ট লিখুন বা জেনকিন্সফাইল ব্যবহার করুন।"
89+
}
90+
]
91+
},
92+
{
93+
"title": "পাইপলাইন ফান্ডামেন্টালস",
94+
"items": [
95+
{
96+
"definition": "একটি সাধারণ পাইপলাইন জেনকিন্সফাইল",
97+
"code": "pipeline {\n agent any\n stages {\n stage('Build') {\n steps {\n echo 'Building...'\n }\n }\n stage('Test') {\n steps {\n echo 'Testing...'\n }\n }\n stage('Deploy') {\n steps {\n echo 'Deploying...'\n }\n }\n }\n}"
98+
},
99+
{
100+
"definition": "পাইপলাইন রান করা",
101+
"code": "জব তৈরি করুন এবং 'This project is parameterized' নির্বাচন করুন, তারপর জেনকিন্সফাইল লিখুন।"
102+
},
103+
{
104+
"definition": "বিভিন্ন এজেন্টে পাইপলাইন রান করতে",
105+
"code": "agent { label 'my-agent-label' }"
106+
},
107+
{
108+
"definition": "কোনো নির্দিষ্ট স্টেজে পাইপলাইন ব্যর্থ হলে ব্যাকআপ রান করতে",
109+
"code": "post {\n failure {\n echo 'The pipeline has failed.'\n }\n}"
110+
}
111+
]
112+
}
113+
]
114+
}

0 commit comments

Comments
 (0)