Compare commits

..

34 Commits

Author SHA1 Message Date
Arik Chakma
bc43fa9a27 fix: content modal 2024-09-06 13:28:48 +06:00
Vedansh
a3422cd772 Improved Devops Roadmap. (#6998)
* Improved Devops Roadmap.

* Apply suggested changes from @dansholds.
2024-09-05 15:12:02 +01:00
Mark
992d817d1a Add database index wikipedia link for Backend Roadmap (#7005)
* Add database index wikipedia link for Backend Roadmap

* Update src/data/roadmaps/backend/content/database-indexes@y-xkHFE9YzhNIX3EiWspL.md

---------

Co-authored-by: Kamran Ahmed <kamranahmed.se@gmail.com>
2024-09-05 12:08:39 +01:00
Kamran Ahmed
4ac4fcfba0 Update devops projects 2024-09-05 09:27:57 +01:00
Arik Chakma
a92ea779b8 feat: persist selected group (#6993) 2024-09-04 22:18:33 +01:00
Arik Chakma
29fa5397f3 fix: format user count (#6994) 2024-09-04 22:18:07 +01:00
Mark
1c3d86f085 Remove redundant link in backend roadmap (#6985) 2024-09-04 19:40:17 +01:00
Kamran Ahmed
3b40b61013 Add project started count 2024-09-04 18:25:36 +01:00
Arik Chakma
d5b9c97fed feat: add project's user count (#6992)
* feat: add project user count

* feat: add user count

* fix: user count
2024-09-04 18:22:15 +01:00
Kamran Ahmed
c48c9e75f9 fix: broken workflow 2024-09-04 13:55:57 +01:00
Kamran Ahmed
925dd62fe3 Add temperature converter project 2024-09-04 13:42:31 +01:00
SOUMITRA-SAHA
d1c9575823 Fix: Comment out howtoflutter.dev (site down) and update tag from `… (#6931)
* Fix: Comment out `howtoflutter.dev` (site down) and update tag from `@article@Variables` to `@official@Variables`

* Removed `Comment`
2024-09-04 09:22:56 +01:00
Adithyan Dileep
663fcdb1d2 Update string@1RcwBHU3jzx0YxxUGZic4.md (#6906) 2024-09-04 09:17:53 +01:00
Brian Rodriguez
bdbaeffd50 [Docs] Android roadmap: Relative layout (#6902)
* [Docs] Android roadmap: Relative layout

* [Docs] Android roadmap: Format
2024-09-04 09:17:15 +01:00
Amit Merchant
83e61e548c Add an article on how to build an offline-capable Notepad app using PWA principles (#6886) 2024-09-04 09:14:37 +01:00
Reyes Rondón
7c9de90b3c add content scrum@PKqwKvoffm0unwcFwpojk.md (#6851)
* add content tcpip-model@UCCT7-E_QUKPg3jAsjobx.md

* add content scrum@PKqwKvoffm0unwcFwpojk.md

* update tcpip-model@UCCT7-E_QUKPg3jAsjobx.md
2024-09-04 09:12:11 +01:00
Drex
66a994512b resolved topic not found for flutter (#6839) 2024-09-04 09:10:45 +01:00
Jesús Enrique Alcalá Rojas
90f24fb780 add content nids@LIPtxl_oKZRcbvXT4EdNf.md (#6833) 2024-09-04 09:06:16 +01:00
Jesús Enrique Alcalá Rojas
d58c087deb add content hips@l5EnhOCnkN-RKvgrS9ylH.md (#6832)
* add content hips@l5EnhOCnkN-RKvgrS9ylH.md

* Update src/data/roadmaps/cyber-security/content/hips@l5EnhOCnkN-RKvgrS9ylH.md

---------

Co-authored-by: dsh <daniel.s.holdsworth@gmail.com>
2024-09-04 09:05:30 +01:00
Jesús Enrique Alcalá Rojas
526c7d16ad add content dlp@iolsTC-63d_1wzKGul-cT.md (#6831)
* add content dlp@iolsTC-63d_1wzKGul-cT.md

* Update src/data/roadmaps/cyber-security/content/dlp@iolsTC-63d_1wzKGul-cT.md

---------

Co-authored-by: dsh <daniel.s.holdsworth@gmail.com>
2024-09-04 09:04:18 +01:00
Jesús Enrique Alcalá Rojas
be3e1859dd add content pass-the-hash@sMuKqf27y4iG0GrCdF5DN.md (#6830) 2024-09-04 09:02:27 +01:00
Jesús Enrique Alcalá Rojas
ad8ce9f9f2 add content memory-leak@nOND14t7ISgSH3zNpV3F8.md (#6829) 2024-09-04 09:01:56 +01:00
dmcadieux
67cf3f5313 fix: porcesses typo in cs roadmap porcesses & threads (#6808)
* fix: porcesses typo in cs roadmap porcesses & threads

* Rename porcesses-and-threads@ETEUA7jaEGyOEX8tAVNWs.md to processes-and-threads@ETEUA7jaEGyOEX8tAVNWs.md

fix: file name spelling fix

---------

Co-authored-by: dmcadieux <dmcadieux@gmail.com>
2024-09-04 08:59:28 +01:00
dsh
73597724a0 Add DevOps Projects (#6772)
* add astro cicd project

* add link to github pages docs

* add docker webserver project

* Apply suggestions from code review

* add basic iac with terraform project

* add monitoring stack project

* Apply suggestions from code review

change from Astro to simple HTML file

* Update src/data/projects/basic-github-actions.md

remove newline
2024-09-04 08:55:45 +01:00
github-actions[bot]
b361840742 chore: update roadmap content json (#6983)
Co-authored-by: kamranahmedse <4921183+kamranahmedse@users.noreply.github.com>
2024-09-04 13:03:33 +06:00
Kamran Ahmed
f154d05a84 Add reddit client project idea 2024-09-04 03:02:03 +01:00
Kamran Ahmed
2d08f74c7f Add github random repo project 2024-09-04 02:20:02 +01:00
Kamran Ahmed
d202e0a75d Add task tracker project 2024-09-04 01:07:46 +01:00
Kamran Ahmed
6da9dfc771 Add accordion projectc idea 2024-09-04 00:29:38 +01:00
Kamran Ahmed
05d414adf4 Add dropdown project idea 2024-09-04 00:07:31 +01:00
Kamran Ahmed
45a7fe6eb8 Add restricted textarea project 2024-09-03 23:11:05 +01:00
Kamran Ahmed
0879785d35 Add cookie consent banner project 2024-09-03 22:39:55 +01:00
Kamran Ahmed
e83a261b2c Add simple tabs project 2024-09-03 22:39:55 +01:00
Saeed
b78252be59 fix: useMemo details (#6980)
Memorizes" vs. "Memoizes": The term "memorizes" can imply simply remembering something, while "memoizes" is a specific term in computer science meaning to cache the result of a function. Using "memoizes" is more accurate in this context.
2024-09-04 03:20:48 +06:00
111 changed files with 838 additions and 144 deletions

View File

@@ -20,7 +20,7 @@ jobs:
if (issue.labels.some(label => label.name === 'topic-change')) {
if (roadmapUrl) {
const roadmapSlug = new URL(roadmapUrl[0]).pathname.replace(/\//, '');
github.issues.addLabels({
github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issue.number,
@@ -30,7 +30,7 @@ jobs:
// Close the issue if it has no roadmap URL
if (!roadmapUrl) {
github.issues.update({
github.rest.issues.update({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issue.number,

View File

@@ -1217,8 +1217,34 @@
},
"XC_K1Wahl2ySqOXoym4YU": {
"title": "Typed Forms",
"description": "",
"links": []
"description": "Since Angular 14, reactive forms are strictly typed by default. You don't have to define extra custom types or add a ton of type annotations to your form declarations to benefit from this extra type safety, as Angular will infer types from the default value of a form control. Non-typed forms are still supported. To use them, you must import the `Untyped` symbols from `@angular/forms`.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Angular Official Docs - @let",
"url": "https://angular.dev/api/core/@let",
"type": "article"
},
{
"title": "Angular Strictly Typed Forms (Complete Guide)",
"url": "https://blog.angular-university.io/angular-typed-forms/",
"type": "article"
},
{
"title": "Getting started with typed reactive forms in Angular",
"url": "https://www.youtube.com/watch?v=mT3UR0TdDnU",
"type": "video"
},
{
"title": "Angular TYPED Forms: Are You Using Them Correctly?",
"url": "https://www.youtube.com/watch?v=it2BZoIvBPc",
"type": "video"
},
{
"title": "Knowing this makes Angular typed forms WAY less awkward",
"url": "https://www.youtube.com/watch?v=xpRlijg6spo",
"type": "video"
}
]
},
"uDx4lPavwsJFBMzdQ70CS": {
"title": "Template-driven Forms",
@@ -1492,8 +1518,13 @@
},
"kdMJHljMzGA3oRlh8Zvos": {
"title": "Transformation",
"description": "In RxJS, \"transformation\" refers to the process of modifying or manipulating the data emitted by an Observable. There are a variety of methods available in RxJS that can be used to transform the data emitted by an Observable, including:\n\n* map: applies a function to each item emitted by the Observable and emits the resulting value\n* mergeMap: applies a function to each item emitted by the Observable, and then merges the resulting Observables into a single Observable\n* switchMap: applies a function to each item emitted by the Observable, and then switches to the latest resulting Observable\n* concatMap: applies a function to each item emitted by the Observable, and then concatenates the resulting Observables into a single Observable\n* exhaustMap: applies a function to each item emitted by the Observable, but ignores subsequent emissions until the current Observable completes\n\nThese are just a few examples of the many methods available in RxJS for transforming the data emitted by an Observable. Each method has its own specific use case, and the best method to use will depend on the requirements of your application.\n\nHere are the official documentation links for the RxJS transformation methods:\n\nYou can find more information and examples on these methods in the official RxJS documentation. Additionally, you can find more operators on [https://rxjs.dev/api/operators](https://rxjs.dev/api/operators) and you can also find more information on the library as a whole on [https://rxjs.dev/](https://rxjs.dev/)",
"description": "In RxJS, \"transformation\" refers to the process of modifying or manipulating the data emitted by an Observable. There are a variety of methods available in RxJS that can be used to transform the data emitted by an Observable, including:\n\n* **map**: applies a function to each item emitted by the Observable and emits the resulting value\n* **mergeMap**: applies a function to each item emitted by the Observable, and then merges the resulting Observables into a single Observable\n* **switchMap**: applies a function to each item emitted by the Observable, and then switches to the latest resulting Observable\n* **concatMap**: applies a function to each item emitted by the Observable, and then concatenates the resulting Observables into a single Observable\n* **exhaustMap**: applies a function to each item emitted by the Observable, but ignores subsequent emissions until the current Observable completes\n\nThese are just a few examples of the many methods available in RxJS for transforming the data emitted by an Observable. Each method has its own specific use case, and the best method to use will depend on the requirements of your application.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "RxJs Docs - Operators",
"url": "https://rxjs.dev/api/operators",
"type": "article"
},
{
"title": "map",
"url": "https://rxjs.dev/api/operators/map",
@@ -1814,8 +1845,29 @@
},
"EbJib-XfZFF9bpCtL3aBs": {
"title": "Developer Tools",
"description": "",
"links": []
"description": "Angular offers a suite of powerful developer tools designed to streamline and enhance the development process. These include the Angular CLI for efficient project setup and management, the Angular DevTools extension for advanced debugging and profiling, and the Angular Language Service for improved code editing and completion. Leveraging these tools will significantly improve your ability to write high-quality Angular code.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "VS Code NG Language Service",
"url": "https://github.com/angular/vscode-ng-language-service",
"type": "opensource"
},
{
"title": "Angular Official Docs - devtools",
"url": "https://angular.dev/tools/devtools",
"type": "article"
},
{
"title": "Angular Official Docs - CLI",
"url": "https://angular.dev/tools/cli",
"type": "article"
},
{
"title": "Language Service Docs",
"url": "https://angular.dev/tools/language-service",
"type": "article"
}
]
},
"4YSk6I63Ew--zoXC3xmrC": {
"title": "Angular CLI",
@@ -2075,8 +2127,19 @@
},
"YHV5oFwLwphXf1wJTDZuG": {
"title": "Using Libraries",
"description": "",
"links": []
"description": "Libraries are published as `npm packages`, usually together with schematics that integrate them with the Angular CLI. To integrate reusable library code into an application, you need to install the package and import the provided functionality in the location you use it. For most published Angular libraries, use the `ng add <lib_name>` Angular CLI command. A published library typically provides a `README` file or other documentation on how to add that library to your application. A library is able to be updated by the publisher, and also has individual dependencies which need to be kept current. To check for updates to your installed libraries, use the `ng update` Angular CLI command.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Angular Official Docs - Using Libraries",
"url": "https://angular.dev/tools/libraries/using-libraries",
"type": "article"
},
{
"title": "npm",
"url": "https://www.npmjs.com/",
"type": "article"
}
]
},
"A1mYMg7cbcj6p_VkDf-Tz": {
"title": "Creating Libraries",
@@ -2570,8 +2633,34 @@
},
"lLa-OnHV6GzkNFZu29BIT": {
"title": "Testing",
"description": "In any software development process, Testing the application plays a vital role. If Bugs and crashes are not figured out and solved they can defame the development company as well as hurt the clients too. But, Angulars architecture comes with built-in testability features. As soon as you create a new project with Angular CLI, two essential testing tools are installed.They are: Jasmine and Karma. Jasmine is the testing library which structures individual tests into specifications (“specs”) and suites. And Karma is the test runner, which enables the different browsers to run the tests mentioned by Jasmine and the browsers will finally report the test results back.",
"links": []
"description": "In any software development process, testing the application plays a vital role. If bugs and crashes are not figured out and solved they can defame the development company as well as hurt the clients too. But, Angulars architecture comes with built-in testability features. As soon as you create a new project with Angular CLI, two essential testing tools are installed. They are: Jasmine and Karma. Jasmine is the testing library which structures individual tests into specifications (“specs”) and suites. And Karma is the test runner, which enables the different browsers to run the tests mentioned by Jasmine and the browsers will finally report the test results back.\n\nYou can also unit test an Angular application with other testing libraries and test runners. Each library and runner has its own distinctive installation procedures, configuration, and syntax.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Angular Official Docs - Testing",
"url": "https://angular.dev/guide/testing",
"type": "article"
},
{
"title": "Jasmine Official Docs",
"url": "https://jasmine.github.io/",
"type": "article"
},
{
"title": "Karma Official Docs",
"url": "https://karma-runner.github.io/latest/index.html",
"type": "article"
},
{
"title": "Testing Angular - A Guide to Robust Angular Applications",
"url": "https://testing-angular.com/",
"type": "article"
},
{
"title": "Introduction | Angular Unit Testing Made Easy: A Comprehensive Introduction",
"url": "https://www.youtube.com/watch?v=emnwsVy8wRs",
"type": "video"
}
]
},
"HU1eTYB321C93qh_U7ioF": {
"title": "Testing Services",
@@ -2790,18 +2879,71 @@
},
"W8OwpEw00xn0GxidlJjdc": {
"title": "Localize Package",
"description": "",
"links": []
"description": "To take advantage of the localization features of Angular, use the Angular CLI to add the `@angular/localize` package to your project. If `@angular/localize` is not installed and you try to build a localized version of your project (for example, while using the i18n attributes in templates), the Angular CLI will generate an error, which would contain the steps that you can take to enable i18n for your project.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Angular Official Docs - Add the localize package",
"url": "https://angular.dev/guide/i18n/add-package",
"type": "article"
},
{
"title": "Learn to Internationalize Your Angular Apps with @angular/localize",
"url": "https://www.youtube.com/watch?v=5h7HPY1OMfU",
"type": "video"
},
{
"title": "Multi-Language Support in Angular: A Guide to Localization and Internationalization",
"url": "https://www.youtube.com/watch?v=ouI21AyJ9tE",
"type": "video"
}
]
},
"dVKl3Z2Rnf6IB064v19Mi": {
"title": "Locales by ID",
"description": "",
"links": []
"description": "Angular uses the Unicode locale identifier (Unicode locale ID) to find the correct locale data for internationalization of text strings. A locale ID specifies the language, country, and an optional code for further variants or subdivisions. A locale ID consists of the language identifier, a hyphen (-) character, and the locale extension. By default, Angular uses `en-US` as the source locale of your project.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Angular locales",
"url": "https://github.com/angular/angular/tree/main/packages/common/locales",
"type": "opensource"
},
{
"title": "Angular Official Docs - Refer to locales by ID",
"url": "https://angular.dev/guide/i18n/locale-id",
"type": "article"
},
{
"title": "Codes arranged alphabetically by alpha-3/ISO 639-2 Code",
"url": "https://www.loc.gov/standards/iso639-2/php/code_list.php",
"type": "article"
},
{
"title": "Unicode CLDR Specifications",
"url": "https://cldr.unicode.org/index/cldr-spec",
"type": "article"
}
]
},
"jL5amGV1BAX_V5cyTIH7d": {
"title": "Translation Files",
"description": "",
"links": []
"description": "After you prepare a component for translation, use the `extract-i18n` Angular CLI command to extract the marked text in the component into a source language file. The marked text includes text marked with `i18n`, attributes marked with `i18n`\\-attribute, and text tagged with `$localize`. The `extract-i18n` command creates a source language file named `messages.xlf` in the root directory of your project. If you have multiple language files, add the locale to the file name, like `messages.{locale}.xlf`.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Angular Official Docs - Translation Files",
"url": "https://angular.dev/guide/i18n/translation-files",
"type": "article"
},
{
"title": "Angular Official Docs - Extract i18n",
"url": "https://angular.dev/cli/extract-i18n",
"type": "article"
},
{
"title": "Angular i18n: internationalization & localization with examples",
"url": "https://lokalise.com/blog/angular-i18n/",
"type": "article"
}
]
},
"9ISvaaJ815_cr_KW9vQhT": {
"title": "Multiple Locales",

View File

@@ -3954,7 +3954,7 @@
]
},
"ETEUA7jaEGyOEX8tAVNWs": {
"title": "Porcesses and Threads",
"title": "Processes and Threads",
"description": "Processes and threads are the basic building blocks of a computer program. They are the smallest units of execution in a program. A process is an instance of a program that is being executed. A thread is a sequence of instructions within a process that can be executed independently of other code.\n\nVisit the following resources to learn more:",
"links": [
{

View File

@@ -11,8 +11,29 @@
},
"Lsapbmg-eMIYJAHpV97nO": {
"title": "Types of Data Analytics",
"description": "Data Analytics has proven to be a critical part of decision-making in modern business ventures. It is responsible for discovering, interpreting, and transforming data into valuable information. Different types of data analytics look at past, present, or predictive views of business operations.\n\nData Analysts, as ambassadors of this domain, employ these types, which are namely Descriptive Analytics, Diagnostic Analytics, Predictive Analytics and Prescriptive Analytics, to answer various questions — What happened? Why did it happen? What could happen? And what should we do next? Understanding these types gives data analysts the power to transform raw datasets into strategic insights.",
"links": []
"description": "Data Analytics has proven to be a critical part of decision-making in modern business ventures. It is responsible for discovering, interpreting, and transforming data into valuable information. Different types of data analytics look at past, present, or predictive views of business operations.\n\nData Analysts, as ambassadors of this domain, employ these types, to answer various questions:\n\n* Descriptive Analytics _(what happened in the past?)_\n* Diagnostic Analytics _(why did it happened in the past?)_\n* Predictive Analytics _(what will happen in the future?)_\n* Prescriptive Analytics _(how can we make it happen?)_\n\nUnderstanding these types gives data analysts the power to transform raw datasets into strategic insights.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Data Analytics and its type",
"url": "https://www.geeksforgeeks.org/data-analytics-and-its-type/",
"type": "article"
},
{
"title": "The 4 Types of Data Analysis: Ultimate Guide",
"url": "https://careerfoundry.com/en/blog/data-analytics/different-types-of-data-analysis/",
"type": "article"
},
{
"title": "Descriptive vs Diagnostic vs Predictive vs Prescriptive Analytics: What's the Difference?",
"url": "https://www.youtube.com/watch?v=QoEpC7jUb9k",
"type": "video"
},
{
"title": "Types of Data Analytics",
"url": "https://www.youtube.com/watch?v=lsZnSgxMwBA",
"type": "video"
}
]
},
"hWDh0ooidbqZb000ENVok": {
"title": "Descriptive Analytics",

View File

@@ -1831,11 +1831,16 @@
},
"dbercnxXVTJXMpYSDNGb2": {
"title": "bind",
"description": "The `bind()` method creates a new function with a given `this` value and arguments provided as an array. The original function is not called immediately but can be called later with the `new` keyword or as a normal function call.\n\nVisit the following resources to learn more:",
"description": "The `bind()` method in JavaScript allows you to create a new function with a specific context and optionally preset arguments. Unlike `call()` or `apply()`, `bind()` does not immediately invoke the function. Instead, it returns a new function that can be called later, either as a regular function or with additional arguments. This is particularly useful when you want to ensure that a function retains a specific context, regardless of how or when it's invoked.\n\nVisit the following resources to learn more:",
"links": [
{
"title": "Understanding Explicit Binding in JavaScript: Call, Bind, and Apply Methods",
"url": "https://medium.com/@amitsharma_24072/understanding-explicit-binding-in-javascript-call-bind-and-apply-methods-7b6ed0107628",
"title": "bind()",
"url": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind",
"type": "article"
},
{
"title": "Function binding",
"url": "https://javascript.info/bind",
"type": "article"
},
{

View File

@@ -98,11 +98,6 @@
"title": "Data Types",
"description": "PostgreSQL offers a rich and diverse set of data types, catering to a wide range of applications and ensuring data integrity and performance. These include standard numeric types such as integers, floating-point numbers, and serial types for auto-incrementing fields. Character types like VARCHAR and TEXT handle varying lengths of text, while DATE, TIME, and TIMESTAMP support a variety of temporal data requirements. PostgreSQL also supports a comprehensive set of Boolean, enumerated (ENUM), and composite types, enabling more complex data structures. Additionally, it excels with its support for JSON and JSONB data types, allowing for efficient storage and querying of semi-structured data. The inclusion of array types, geometric data types, and the PostGIS extension for geographic data further extends PostgreSQL's versatility, making it a powerful tool for a broad spectrum of data management needs.\n\nLearn more from the following resources:",
"links": [
{
"title": "",
"url": "https://www.instaclustr.com/blog/postgresql-data-types-mappings-to-sql-jdbc-and-java-data-types/",
"type": "article"
},
{
"title": "Data Types",
"url": "https://www.postgresql.org/docs/current/datatype.html",
@@ -112,6 +107,11 @@
"title": "An introduction to PostgreSQL data types",
"url": "https://www.prisma.io/dataguide/postgresql/introduction-to-data-types",
"type": "article"
},
{
"title": "PostgreSQL® Data Types: Mappings to SQL, JDBC, and Java Data Types",
"url": "https://www.instaclustr.com/blog/postgresql-data-types-mappings-to-sql-jdbc-and-java-data-types/",
"type": "article"
}
]
},

View File

@@ -227,6 +227,16 @@
"title": "Loops in Python",
"url": "https://www.geeksforgeeks.org/loops-in-python/",
"type": "article"
},
{
"title": "Python \"while\" Loops (Indefinite Iteration)",
"url": "https://realpython.com/python-while-loop/",
"type": "article"
},
{
"title": "Python \"for\" Loops (Definite Iteration)",
"url": "https://realpython.com/python-for-loop/#the-guts-of-the-python-for-loop",
"type": "article"
}
]
},

View File

@@ -586,7 +586,7 @@
},
"w3bNp7OkehI1gjx8NzlC8": {
"title": "useMemo",
"description": "`useMemo` is a React hook that memorizes the result of a function. It is used to optimize performance by caching the result of a function and returning the cached result when the inputs to the function have not changed.\n\nLearn more from the following resources:",
"description": "`useMemo` is a React hook that memoizes the result of a function. It is used to optimize performance by caching the result of a function and returning the cached result when the inputs to the function have not changed.\n\nLearn more from the following resources:",
"links": [
{
"title": "useMemo Docs",

View File

@@ -352,7 +352,7 @@
"description": "The lifecycle meta-argument in Terraform customizes the behavior of resources during creation, update, and deletion. It includes settings such as create\\_before\\_destroy, which ensures a new resource is created before the old one is destroyed, preventing downtime. prevent\\_destroy protects resources from accidental deletion, and ignore\\_changes specifies attributes to ignore during updates, allowing external modifications without triggering Terraform changes. These options provide fine-grained control over resource management, ensuring that the desired state of infrastructure is maintained with minimal disruption and precise handling of resource lifecycles.\n\nLearn more from the following resources:",
"links": [
{
"title": "Terraform Docs - for_each",
"title": "Terraform Docs - lifecycle",
"url": "https://developer.hashicorp.com/terraform/language/meta-arguments/lifecycle",
"type": "article"
},

View File

@@ -4,6 +4,7 @@ import type {
ProjectFileType,
} from '../../lib/project.ts';
import { Users } from 'lucide-react';
import { formatCommaNumber } from '../../lib/number.ts';
type ProjectCardProps = {
project: ProjectFileType;
@@ -33,11 +34,17 @@ export function ProjectCard(props: ProjectCardProps) {
/>
<Badge variant={'grey'} text={frontmatter.nature} />
</span>
<span className="mb-1 mt-2.5 font-medium">{frontmatter.title}</span>
<span className="text-sm text-gray-500">{frontmatter.description}</span>
<span className="mt-2.5 flex items-center gap-2 text-xs text-gray-500">
<span className="my-3 flex flex-col">
<span className="mb-1 font-medium">{frontmatter.title}</span>
<span className="text-sm text-gray-500">{frontmatter.description}</span>
</span>
<span className="flex items-center gap-2 text-xs text-gray-400">
<Users className="inline-block size-3.5" />
{userCount > 0 ? <>{userCount} Started</> : <>Be the first to solve!</>}
{userCount > 0 ? (
<>{formatCommaNumber(userCount)} Started</>
) : (
<>Be the first to solve!</>
)}
</span>
</a>
);

View File

@@ -3,6 +3,11 @@ import { cn } from '../../lib/classname.ts';
import { Filter, X } from 'lucide-react';
import { CategoryFilterButton } from './CategoryFilterButton.tsx';
import { useOutsideClick } from '../../hooks/use-outside-click.ts';
import {
deleteUrlParam,
getUrlParams,
setUrlParams,
} from '../../lib/browser.ts';
const groupNames = [
'Absolute Beginners',
@@ -468,6 +473,15 @@ export function RoadmapsPage() {
]);
}, [activeGroup]);
useEffect(() => {
const { g } = getUrlParams() as { g: AllowGroupNames };
if (!g) {
return;
}
setActiveGroup(g);
}, []);
return (
<div className="border-t bg-gray-100">
<button
@@ -502,6 +516,7 @@ export function RoadmapsPage() {
onClick={() => {
setActiveGroup('');
setIsFilterOpen(false);
deleteUrlParam('g');
}}
category={'All Roadmaps'}
selected={activeGroup === ''}
@@ -514,6 +529,7 @@ export function RoadmapsPage() {
setActiveGroup(group.group);
setIsFilterOpen(false);
document?.getElementById('filter-button')?.scrollIntoView();
setUrlParams({ g: group.group });
}}
category={group.group}
selected={activeGroup === group.group}

View File

@@ -307,6 +307,7 @@ export function TeamRoadmaps() {
{pickRoadmapOptionModal}
{addRoadmapModal}
{createRoadmapModal}
{confirmationContentIdModal}
<RoadmapIcon className="mb-4 h-24 w-24 opacity-10" />

View File

@@ -0,0 +1,30 @@
---
title: 'Accordion'
description: 'Create an accordion component using HTML, CSS, and JavaScript.'
isNew: false
sort: 18
difficulty: 'beginner'
nature: 'JavaScript'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'DOM Manipulation'
seo:
title: 'Build an Accordion Component with JavaScript'
description: 'Learn how to create a responsive accordion component that allows users to toggle between different sections of content.'
keywords:
- 'accordion'
- 'javascript accordion'
- 'html and css'
roadmapIds:
- 'frontend'
---
You are required to create an accordion component that displays a list of questions or headings. When a user clicks on a question, its corresponding answer or content section will expand while collapsing any previously opened section. This allows only one section to be open at a time, keeping the UI clean and organized.
Given below is the mockup showing the accordion in its default and expanded states:
[![Accordion](https://assets.roadmap.sh/guest/accordion-rbvpo.png)](https://assets.roadmap.sh/guest/accordion-rbvpo.png)
This project will help you practice DOM manipulation, event handling, and implementing responsive design patterns using JavaScript.

View File

@@ -0,0 +1,32 @@
---
title: 'Cookie Consent'
description: 'Create a simple cookie consent banner using JavaScript.'
isNew: false
sort: 12
difficulty: 'beginner'
nature: 'JavaScript'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'DOM Manipulation'
seo:
title: 'Create a Cookie Consent Popup Using HTML, CSS, and JavaScript'
description: 'Learn how to build a cookie consent popup with basic JavaScript for managing user consent.'
keywords:
- 'cookie consent'
- 'javascript popup'
- 'html and css'
- 'javascript project'
roadmapIds:
- 'frontend'
---
This project is designed to introduce you to basic DOM manipulation and event handling in JavaScript.
Many websites display a cookie consent popup to inform users about the use of cookies and to obtain their consent. In this project, you will create a simple cookie consent popup that appears when the user visits the page. The popup will include a message and a button to accept the consent. Once accepted, the popup will disappear. Given below is an example of how the popup might look:
[![Cookie Consent Popup](https://assets.roadmap.sh/guest/cookie-consent-banner-07etz.png)](https://assets.roadmap.sh/guest/cookie-consent-banner-07etz.png)
Bonus points if you persist the user's consent using cookies or local storage and prevent the popup from appearing on subsequent visits.

View File

@@ -0,0 +1,30 @@
---
title: 'Custom Dropdown'
description: 'Create a custom dropdown using HTML, CSS, and JavaScript.'
isNew: false
sort: 19
difficulty: 'intermediate'
nature: 'JavaScript'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'DOM Manipulation'
seo:
title: 'Build a Custom Dropdown Menu with JavaScript'
description: 'Learn how to create a fully customizable dropdown menu that allows users to select an item and see the selection reflected in the dropdown.'
keywords:
- 'custom dropdown'
- 'javascript dropdown'
- 'html and css'
roadmapIds:
- 'frontend'
---
You will create a custom dropdown menu that lets users select an item from a list. The dropdown should have a default state showing a placeholder text, an open state revealing all options, and a selected state where the chosen item is displayed. When an item is selected, the dropdown closes, and the selected item is highlighted.
Given below is the mockup showing the dropdown in its default, open, and selected states:
[![Custom Dropdown](https://assets.roadmap.sh/guest/dropdown-1f4b3.png)](https://assets.roadmap.sh/guest/dropdown-1f4b3.png)
This project will help you practice DOM manipulation, event handling, and creating responsive and interactive elements with JavaScript.

View File

@@ -0,0 +1,39 @@
---
title: 'GitHub Random Repository'
description: 'Create a GitHub random repository finder using GitHub API.'
isNew: false
sort: 25
difficulty: 'intermediate'
nature: 'API Integration'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'API Integration'
- 'DOM Manipulation'
seo:
title: 'Build a GitHub Repository Finder with JavaScript and GitHub API'
description: 'Learn how to create a dynamic application that fetches random GitHub repositories based on a chosen language and displays key information like stars, forks, and issues.'
keywords:
- 'github api'
- 'repository finder'
- 'javascript project'
roadmapIds:
- 'frontend'
---
This project is designed to introduce you to working with external APIs, handling asynchronous requests, and managing different UI states with JavaScript.
You will create a GitHub repository finder that allows users to select a programming language from a dropdown menu. The app will then use the GitHub Repository Search API to fetch and display a random repository that matches the selected language. The displayed information should include the repository name, description, number of stars, forks, and open issues. Users can fetch another random repository with a button click.
[![GitHub Random Repository](https://assets.roadmap.sh/guest/github-repo-finder-n2qz4.png)](https://assets.roadmap.sh/guest/github-repo-finder-n2qz4.png)
The application should handle loading, empty, and error states effectively. After successfully fetching a repository, a "Refresh" button should appear to allow users to get another random repository.
Here are the links to the resources you will need for this project:
- [GitHub Repository Search API](https://docs.github.com/en/rest/reference/search#search-repositories)
- [Programming Language Data](https://raw.githubusercontent.com/kamranahmedse/githunt/master/src/components/filters/language-filter/languages.json)
This project will help you practice API integration, managing asynchronous data, and enhancing user experience with responsive UI states.

View File

@@ -0,0 +1,42 @@
---
title: 'Reddit Client'
description: 'Create a Reddit client with customizable subreddit lanes.'
isNew: false
sort: 26
difficulty: 'intermediate'
nature: 'API Integration'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'API Integration'
- 'DOM Manipulation'
- 'Asynchronous Programming'
seo:
title: 'Build a Multi-Lane Reddit Client with JavaScript and Reddit API'
description: 'Learn how to create a dynamic browser-based Reddit client that allows users to add and view multiple subreddits in customizable lanes.'
keywords:
- 'reddit api'
- 'subreddit viewer'
- 'javascript project'
- 'multi-lane client'
roadmapIds:
- 'frontend'
---
You are required to create a browser-based Reddit client that displays multiple subreddits in separate, customizable lanes. You'll work with the Reddit JSON feed to fetch posts from different subreddits and display them in a dynamic, responsive layout.
The application will allow users to add new subreddit lanes by entering a subreddit name. It will verify the existence of the subreddit, fetch its posts, and display them in a new lane. Each lane will show the subreddit's posts, including titles, authors, and vote counts.
[![Multi-Lane Reddit Client](https://assets.roadmap.sh/guest/reddit-client-o876k.png)](https://assets.roadmap.sh/guest/reddit-client-o876k.png)
To fetch data from reddit, you can use the JSON feed available at the following URL. You can also use the Reddit API to fetch more details about the posts, such as comments, upvotes, and more.
```plaintext
https://www.reddit.com/r/{subreddit}.json
```
The application should handle loading states while fetching data, display error messages for invalid subreddits or API issues, and provide a smooth user experience when adding or removing lanes. You can use local storage to save the user's custom lanes and restore them when the application is reloaded.
This project will help you practice API integration, state management, asynchronous programming, and creating a responsive, dynamic user interface. It's an excellent opportunity to enhance your skills in frontend development and working with real-time data.

View File

@@ -0,0 +1,29 @@
---
title: 'Restricted Textarea'
description: 'Create a textarea with live character count and a max character limit.'
isNew: false
sort: 15
difficulty: 'beginner'
nature: 'JavaScript'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'DOM Manipulation'
seo:
title: 'Build a Restricted Textarea with JavaScript'
description: 'Learn how to create a textarea with live character count and a maximum limit, with visual feedback as the limit is reached.'
keywords:
- 'character count'
- 'textarea limit'
- 'javascript input'
- 'html and css'
roadmapIds:
- 'frontend'
---
You are required to create a textarea that tracks and displays the number of characters typed by the user, along with a maximum character limit. As the user types, the character count will update dynamically. Once the limit is reached, the textarea will prevent further input and the border will turn red to visually indicate the limit has been hit.
[![Restricted Textarea](https://assets.roadmap.sh/guest/textarea-input-vdclr.png)](https://assets.roadmap.sh/guest/textarea-input-vdclr.png)
This project will help you practice manipulating input elements with JavaScript, handling user input events, and providing real-time feedback to enhance user experience.

View File

@@ -0,0 +1,32 @@
---
title: 'Tabs'
description: 'Create a simple tabs component using HTML, CSS, and JavaScript.'
isNew: false
sort: 10
difficulty: 'beginner'
nature: 'JavaScript'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'DOM Manipulation'
seo:
title: 'Create a Tabs Functionality Using HTML, CSS, and JavaScript'
description: 'Learn how to build a tabs component with basic JavaScript for switching between content sections.'
keywords:
- 'javascript tabs'
- 'dynamic content'
- 'html and css'
- 'javascript project'
roadmapIds:
- 'frontend'
---
This project is designed to introduce you to basic DOM manipulation and event handling in JavaScript.
You are required to create a simple tabs functionality using HTML, CSS, and basic JavaScript. The page will have four tabs, with the first tab being active by default. When the user clicks on another tab, the content of the current tab will be hidden, and the content of the selected tab will be displayed.
[![Tabs Component Mockup](https://assets.roadmap.sh/guest/simple-tabs-8e6gy.png)](https://assets.roadmap.sh/guest/simple-tabs-8e6gy.png)
This project will help you practice selecting elements with JavaScript, listen for click events, and manipulate the dom to show or hide relevant tab content.

View File

@@ -0,0 +1,34 @@
---
title: 'Task Tracker'
description: 'Create a task tracker with a to-do list using JavaScript.'
isNew: false
sort: 22
difficulty: 'intermediate'
nature: 'JavaScript'
skills:
- 'HTML'
- 'CSS'
- 'JavaScript'
- 'DOM Manipulation'
seo:
title: 'Build a Task Tracker with JavaScript'
description: 'Learn how to create a dynamic task tracker that allows users to add, complete, and delete tasks with real-time updates.'
keywords:
- 'task tracker'
- 'to-do list'
- 'javascript project'
roadmapIds:
- 'frontend'
---
You are required to create a task tracker that lets users add new tasks, mark them as complete, or delete them. Completed tasks will be moved to the end of the list and will have strikethrough, and users can unmark tasks to return them to the pending list.
Here is the mockup of the task tracker:
[![Task Tracker](https://assets.roadmap.sh/guest/task-tracker-2diba.png)](https://assets.roadmap.sh/guest/task-tracker-2diba.png)
## Hint
Store your tasks in an array of objects, where each object represents a task with properties like description and status (completed or not). Whenever a new task is added, updated, deleted, or marked as complete/uncomplete, update the tasks array. Write a function `renderTasks` which will remove all tasks from the DOM and re-render them based on the updated tasks array.
This project will help you practice array manipulation, event handling, and dynamic DOM updates using JavaScript.

View File

@@ -0,0 +1,33 @@
---
title: Temperature Converter
description: Build a temperature converter that converts between different units.
isNew: false
sort: 27
difficulty: intermediate
nature: JavaScript
skills:
- HTML
- CSS
- JavaScript
- DOM Manipulation
seo:
- title: Build a Temperature Converter with JavaScript
- description: Learn how to create an interactive temperature converter that converts between Celsius, Fahrenheit, and Kelvin using JavaScript.
- keywords:
- 'temperature converter'
- 'javascript project'
- 'unit conversion'
- 'html and css'
roadmapIds:
- 'frontend'
---
This project is designed to help you practice DOM manipulation, form handling, and basic calculations in JavaScript.
You will create a temperature converter that allows users to enter a temperature value, select the unit they want to convert from, and select the unit they want to convert to. The "Convert" button should only be enabled when all three fields are filled in. Once the user clicks "Convert," the tool will display the converted temperature below the form.
Here is a mockup of what the temperature converter might look like:
[![Temperature Converter](https://assets.roadmap.sh/guest/temperature-converter-8omel.png)](https://assets.roadmap.sh/guest/temperature-converter-8omel.png)
This project will help you gain experience with handling user input, conditionally enabling form elements, and performing simple calculations using JavaScript.

View File

@@ -0,0 +1,9 @@
# RelativeLayout
A **RelativeLayout** in Android is a type of ViewGroup that allows you to position child views relative to each other or relative to the parent layout. It's a flexible layout where you can arrange the child views in relation to one another based on certain rules, making it suitable for creating complex UI designs.
**RelativeLayout** was commonly used in earlier Android development, but with the introduction of `ConstraintLayout`, it's less frequently used in modern apps.
Visit the following resources to learn more:
- [@official@Android developers: Relative Layout](https://developer.android.com/develop/ui/views/layout/relative)

View File

@@ -4,5 +4,6 @@ An index is a data structure that you build and assign on top of an existing tab
Visit the following resources to learn more:
- [@article@Database index - Wikipedia](https://en.wikipedia.org/wiki/Database_index)
- [@video@Database Indexing Explained](https://www.youtube.com/watch?v=-qNSXK7s7_w)
- [@feed@Explore top posts about Database](https://app.daily.dev/tags/database?ref=roadmapsh)

View File

@@ -5,6 +5,5 @@ Object-Relational Mapping (ORM) is a technique that lets you query and manipulat
Visit the following resources to learn more:
- [@article@Object Relational Mapping - Wikipedia](https://en.wikipedia.org/wiki/Objectrelational_mapping)
- [@article@What is an ORM and how should I use it?](https://stackoverflow.com/questions/1279613/what-is-an-orm-how-does-it-work-and-how-should-i-use-one)
- [@article@What is an ORM, how does it work, and how should I use one?](https://stackoverflow.com/a/1279678)
- [@feed@Explore top posts about Backend Development](https://app.daily.dev/tags/backend?ref=roadmapsh)

View File

@@ -7157,7 +7157,7 @@
},
"selected": false,
"data": {
"label": "Porcesses and Threads",
"label": "Processes and Threads",
"style": {
"fontSize": 17,
"justifyContent": "flex-start",

View File

@@ -0,0 +1,7 @@
# Data Loss Prevention (DLP)
Data Loss Prevention (DLP) refers to a set of strategies, tools, and processes used by organizations to ensure that sensitive data is not lost, accessed, or misused by unauthorized users. DLP solutions monitor, detect, and block the movement of critical information outside an organizations network, helping to prevent data breaches, leaks, and other security incidents.
Visit the following resources to learn more:
- [@article@What is data loss prevention (DLP)?](https://www.techtarget.com/whatis/definition/data-loss-prevention-DLP)
- [@article@What is DLP (data loss prevention)?](https://www.cloudflare.com/es-es/learning/access-management/what-is-dlp/)

View File

@@ -0,0 +1,9 @@
# Host Intrusion Prevention System (HIPS)
A Host Intrusion Prevention System (HIPS) is a security solution designed to monitor and protect individual host devices, such as servers, workstations, or laptops, from malicious activities and security threats. HIPS actively monitors system activities and can detect, prevent, and respond to unauthorized or anomalous behavior by employing a combination of signature-based, behavior-based, and heuristic detection methods.
HIPS operates at the host level, providing a last line of defense by securing the individual endpoints within a network. It is capable of preventing a wide range of attacks, including zero-day exploits, malware infections, unauthorized access attempts, and policy violations.
Visit the following resources to learn more:
- [@article@What is an Intrusion Prevention System?](https://www.paloaltonetworks.com/cyberpedia/what-is-an-intrusion-prevention-system-ips)
- [@article@What is Host intrusion prevention system (HIPS)?](https://cyberpedia.reasonlabs.com/EN/host%20intrusion%20prevention%20system%20(hips).html)

View File

@@ -0,0 +1,3 @@
# Memory Leak
A Memory Leak occurs when a computer program consumes memory but fails to release it back to the operating system after it is no longer needed. Over time, this can lead to reduced system performance, increased memory usage, and, in severe cases, the program or system may crash due to the exhaustion of available memory.

View File

@@ -0,0 +1,7 @@
# Network Intrusion Detection System (NIDS)
A Network Intrusion Detection System (NIDS) is a security solution designed to monitor and analyze network traffic for signs of suspicious activity or potential threats. NIDS operates by inspecting the data packets that flow through a network, looking for patterns that match known attack signatures or anomalies that could indicate malicious behavior. Unlike a Host Intrusion Detection System (HIDS), which focuses on individual host devices, NIDS provides a broader view by monitoring network traffic across multiple systems and devices.
Visit the following resources to learn more:
- [@article@What is an Intrusion Detection System?](https://www.paloaltonetworks.com/cyberpedia/what-is-an-intrusion-detection-system-ids)
- [@article@What is a Network Intrusion Detection system (NIDS)?](https://bunny.net/academy/security/what-is-network-intrusion-detection-nids/)

View File

@@ -0,0 +1,8 @@
# Pass the Hash
Pass the Hash (PtH) is a hacking technique that allows an attacker to authenticate to a remote server or service using the hashed value of a user's password, without needing to know the actual plaintext password. This method exploits weaknesses in the way some authentication protocols handle hashed credentials, particularly in Windows-based systems.
Visit the following resources to learn more:
- [@article@What is a pass-the-hash attack?](https://www.crowdstrike.com/cybersecurity-101/pass-the-hash/)
- [@article@Pass the Hash Attack](https://www.netwrix.com/pass_the_hash_attack_explained.html)

View File

@@ -4,7 +4,7 @@ Alibaba Cloud is a cloud computing service, offering over 100 products and servi
Visit the following resources to learn more:
- [@article@Alibaba Cloud Website](https://www.alibabacloud.com/)
- [@official@Alibaba Cloud Website](https://www.alibabacloud.com/)
- [@article@Official Documentation](https://www.alibabacloud.com/help/en/)
- [@article@Alibaba Cloud Getting Started Guide](https://www.alibabacloud.com/getting-started)
- [@feed@Explore top posts about Cloud](https://app.daily.dev/tags/cloud?ref=roadmapsh)

View File

@@ -5,7 +5,7 @@ Ansible is an open-source configuration management, application deployment and p
Visit the following resources to learn more:
- [@official@Ansible Website](https://www.ansible.com/)
- [@article@Official Documentation](https://docs.ansible.com/)
- [@official@Official Documentation](https://docs.ansible.com/)
- [@official@Ansible Getting Started Guide](https://www.ansible.com/resources/get-started)
- [@video@Ansible Full Course for Beginners](https://www.youtube.com/watch?v=9Ua2b06oAr4)
- [@feed@Explore top posts about Ansible](https://app.daily.dev/tags/ansible?ref=roadmapsh)

View File

@@ -4,6 +4,6 @@ Apache is a free, open-source HTTP server, available on many operating systems,
Visit the following resources to learn more:
- [@article@Apache Server Website](https://httpd.apache.org/)
- [@official@Apache Server Website](https://httpd.apache.org/)
- [@video@What is Apache Web Server?](https://www.youtube.com/watch?v=kaaenHXO4t4)
- [@feed@Explore top posts about Apache](https://app.daily.dev/tags/apache?ref=roadmapsh)

View File

@@ -8,6 +8,6 @@ Argo CD is designed to be a simple and efficient way to manage cloud-native appl
Visit the following resources to learn more:
- [@article@Argo CD - Argo Project](https://argo-cd.readthedocs.io/en/stable/)
- [@official@Argo CD - Argo Project](https://argo-cd.readthedocs.io/en/stable/)
- [@video@ArgoCD Tutorial for Beginners](https://www.youtube.com/watch?v=MeU5_k9ssrs)
- [@feed@Explore top posts about ArgoCD](https://app.daily.dev/tags/argocd?ref=roadmapsh)

View File

@@ -1 +1,17 @@
# Artifacts
Artifacts refer to the output of a build process, typically generated by a Continuous Integration (CI) tool. These outputs can be executable files, libraries, documents, or any other type of file that is produced as a result of building, compiling, or packaging code.
## Artifacts can include
- Compiled binaries (e.g., .exe, .dll, .jar)
- Libraries (e.g., .so, .dll)
- Packages (e.g., .zip, .tar.gz, .rpm)
- Documents (e.g., .pdf, .docx)
- Configuration files (e.g., .properties, .yaml)
- Images (e.g., Docker images)
Visit the following resources to learn more:
- [@article@What are Artifacts - Oracle](https://docs.oracle.com/en-us/iaas/Content/devops/using/artifacts.htm)
- [@article@What is an Artifact - Atlassian](https://support.atlassian.com/bitbucket-cloud/docs/use-artifacts-in-steps/#:~:text=Artifacts%20are%20files%20that%20are,in%20a%20later%20deployment%20step.)

View File

@@ -1,4 +1,13 @@
# Artifactory
- [@article@Artifactory Website](https://jfrog.com/artifactory/)
Artifactory is a universal DevOps solution for hosting, managing, and distributing binaries and artifacts. Any type of software in binary form such as application installers, container images, libraries, configuration files, etc. can be curated, secured, stored, and delivered using Artifactory.
The name “Artifactory” reflects the fact that it can host any type of “artifact” needed in your software development “factory.” In software development, an artifact is any object produced during the software development and delivery process. Artifacts include the files used to install and run applications, as well as any complementary information necessary to configure or manage software.
Artifactory serves as the central hub for your DevOps processes. All artifacts, dependencies, packages, etc. ultimately get put into and pulled from Artifactory.
Visit the following resources to learn more:
- [@official@Artifactory Website](https://jfrog.com/artifactory/)
- [@official@About - Artifactory](https://jfrog.com/blog/what-is-artifactory-jfrog/)
- [@feed@Explore top posts about Artifactory](https://app.daily.dev/tags/artifactory?ref=roadmapsh)

View File

@@ -4,9 +4,9 @@ The AWS Cloud Development Kit (AWS CDK) is an open-source software development f
Visit the following resources to learn more:
- [@article@AWS CDK Website](https://aws.amazon.com/cdk/)
- [@article@Official Documentation](https://docs.aws.amazon.com/cdk/index.html)
- [@article@What is the AWS CDK?](https://docs.aws.amazon.com/cdk/v2/guide/home.html)
- [@article@AWS SDK Getting Started Guide](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html)
- [@official@AWS CDK Website](https://aws.amazon.com/cdk/)
- [@official@Official Documentation](https://docs.aws.amazon.com/cdk/index.html)
- [@official@What is the AWS CDK?](https://docs.aws.amazon.com/cdk/v2/guide/home.html)
- [@official@AWS SDK Getting Started Guide](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html)
- [@opensource@AWS CDK Examples](https://github.com/aws-samples/aws-cdk-examples)
- [@feed@Explore top posts about AWS](https://app.daily.dev/tags/aws?ref=roadmapsh)

View File

@@ -3,3 +3,8 @@
ECS is a container orchestration service that allows you to run Docker containers on a cluster of EC2 instances. ECS is a good choice if you want to run Docker containers on EC2 instances and have full control over the underlying infrastructure.
Fargate is a serverless container orchestration service that allows you to run Docker containers without having to manage servers, clusters, or any other infrastructure. Fargate is a good choice if you want to run Docker containers without having to manage servers or clusters.
Visit the following resources to learn more:
- [@official@AWS - Fargate](https://aws.amazon.com/fargate/)
- [@official@AWS - Fargate Docs](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html)

View File

@@ -1,4 +1,9 @@
# AWS Lambda
- [@article@AWS Lambda Introduction](https://docs.aws.amazon.com/lambda/latest/operatorguide/intro.html)
AWS Lambda is an event-driven, serverless Function as a Service provided by Amazon as a part of Amazon Web Services. It is designed to enable developers to run code without provisioning or managing servers. It executes code in response to events and automatically manages the computing resources required by that code.
Visit the following resources to learn more:
- [@official@AWS Lambda](https://aws.amazon.com/lambda/)
- [@official@AWS Lambda Introduction](https://docs.aws.amazon.com/lambda/latest/operatorguide/intro.html)
- [@feed@Explore top posts about AWS](https://app.daily.dev/tags/aws?ref=roadmapsh)

View File

@@ -6,17 +6,17 @@ AWS service is an online platform that provides scalable and cost-effective clou
Visit the following resources to learn more:
- [@article@AWS Website](https://aws.amazon.com/)
- [@article@AWS Documentation](https://docs.aws.amazon.com/)
- [@article@AWS Cloud Essentials](https://aws.amazon.com/getting-started/cloud-essentials/)
- [@article@Overview of Amazon Web Services](https://docs.aws.amazon.com/whitepapers/latest/aws-overview/introduction.html)
- [@article@Sign up for AWS](https://portal.aws.amazon.com/billing/signup)
- [@official@AWS Website](https://aws.amazon.com/)
- [@official@AWS Documentation](https://docs.aws.amazon.com/)
- [@official@AWS Cloud Essentials](https://aws.amazon.com/getting-started/cloud-essentials/)
- [@official@Overview of Amazon Web Services](https://docs.aws.amazon.com/whitepapers/latest/aws-overview/introduction.html)
- [@official@Sign up for AWS](https://portal.aws.amazon.com/billing/signup)
- [@article@How to learn AWS](https://cs.fyi/guide/how-to-learn-aws/)
- [@article@AWS Ramp Up Guide](https://d1.awsstatic.com/training-and-certification/ramp-up_guides/Ramp-Up_Guide_CloudPractitioner.pdf)
- [@article@Cloud Practitioner Essentials](https://explore.skillbuilder.aws/learn/course/external/view/elearning/134/aws-cloud-practitioner-essentials)
- [@article@AWS Guide by SimpliLearn](https://www.simplilearn.com/tutorials/aws-tutorial/what-is-aws)
- [@video@AWS Tutorial for Beginners](https://www.youtube.com/watch?v=k1RI5locZE4\&t=129s)
- [@course@AWS Course for Beginners](https://www.coursera.org/learn/aws-cloud-technical-essentials?specialization=aws-devops)
- [@course@DevOps on AWS Course ](https://www.coursera.org/specializations/aws-devops?#courses)
- [@video@AWS Practitioner ](https://youtu.be/SOTamWNgDKc)
- [@course@DevOps on AWS Course](https://www.coursera.org/specializations/aws-devops?#courses)
- [@video@AWS Practitioner](https://youtu.be/SOTamWNgDKc)
- [@feed@Explore top posts about AWS](https://app.daily.dev/tags/aws?ref=roadmapsh)

View File

@@ -1,4 +1,9 @@
# Azure functions
# Azure Functions
- [@article@Azure Functions Overview](https://learn.microsoft.com/en-us/azure/azure-functions/functions-overview)
Azure Functions is a serverless solution that allows you to write less code, maintain less infrastructure, and save on costs. Instead of worrying about deploying and maintaining servers, the cloud infrastructure provides all the up-to-date resources needed to keep your applications running.
Visit the following resources to learn more:
- [@official@Azure Functions - Serverless Computing](https://azure.microsoft.com/en-in/products/functions)
- [@official@Azure Functions Overview](https://learn.microsoft.com/en-us/azure/azure-functions/functions-overview)
- [@feed@Explore top posts about Azure](https://app.daily.dev/tags/azure?ref=roadmapsh)

View File

@@ -4,8 +4,8 @@ Microsoft Azure is a cloud computing service operated by Microsoft. Azure curren
Visit the following resources to learn more:
- [@article@Azure Website](https://azure.microsoft.com/en-us/)
- [@article@Official Documentation](https://docs.microsoft.com/en-us/azure/)
- [@article@Azure Get Started Guide](https://azure.microsoft.com/en-ca/get-started/#explore-azure)
- [@official@Azure Website](https://azure.microsoft.com/en-us/)
- [@official@Official Documentation](https://docs.microsoft.com/en-us/azure/)
- [@official@Azure Get Started Guide](https://azure.microsoft.com/en-ca/get-started/#explore-azure)
- [@article@Get to know Azure](https://azure.microsoft.com/en-us/explore/)
- [@feed@Explore top posts about Azure](https://app.daily.dev/tags/azure?ref=roadmapsh)

View File

@@ -1,4 +1,12 @@
# Bash scripting
# Bash Scripts
Bash scripts are a type of shell script that uses the Bash shell command language. Bash, which stands for "Bourne-Again SHell", is a Unix shell and command-line interpreter written by Brian Fox for the GNU Project.
A Bash script is a text file that contains a series of commands that are executed in order when the script is run. These commands can be a combination of Bash built-in commands, external commands, and shell functions. Bash scripts are typically used to automate repetitive tasks, simplify complex commands, and perform system administration tasks.
Bash scripts usually have a .sh extension and are executable files. To run a Bash script, you need to give it execute permissions using the chmod command, and then you can run it by typing `./script_name.sh` in the terminal.
Visit the following resources to learn more:
- [@article@Interactive Shell Scripting Tutorial](https://www.learnshell.org/en/Welcome)
- [@article@Bash Scripting Tutorial](https://www.javatpoint.com/bash)

View File

@@ -2,4 +2,6 @@
Caddy is an open-source web server with automatic HTTPS written in Go. It is easy to configure and use, and it is a great choice for small to medium-sized projects.
- [@official@Caddy Website](https://caddyserver.com/)
Visit the following resources to learn more:
- [@official@Caddy Website](https://caddyserver.com/)

View File

@@ -6,7 +6,7 @@ Specifically, CI/CD introduces ongoing automation and continuous monitoring thro
Visit the following resources to learn more:
- [@article@CI vs CD](https://www.atlassian.com/continuous-delivery/principles/continuous-integration-vs-delivery-vs-deployment)
- [@official@CI vs CD](https://www.atlassian.com/continuous-delivery/principles/continuous-integration-vs-delivery-vs-deployment)
- [@article@What is CI/CD?](https://www.redhat.com/en/topics/devops/what-is-ci-cd)
- [@article@CI/CD Pipeline: A Gentle Introduction](https://semaphoreci.com/blog/cicd-pipeline)
- [@video@DevOps CI/CD Explained in 100 Seconds](https://www.youtube.com/watch?v=scEDHsr3APg)

View File

@@ -1 +1,8 @@
# Cloud Design Patterns
# Cloud Design Patterns
Cloud Design Patterns are a set of reusable, proven solutions to common problems that arise when designing and building applications for the cloud. These patterns provide guidance on how to design and implement cloud-based systems that are scalable, resilient, and efficient.
Visit the following resources to learn more:
- [@official@](https://learn.microsoft.com/en-us/azure/architecture/patterns/)
- [@article@What is CI/CD?](https://www.redhat.com/en/topics/devops/what-is-ci-cd)

View File

@@ -4,6 +4,6 @@ Cloud providers provide a layer of APIs to abstract infrastructure and provision
Visit the following resources to learn more:
- [@article@Cloud service provider](https://www.techtarget.com/searchitchannel/definition/cloud-service-provider-cloud-provider)
- [@article@Cloud Service Provider](https://www.techtarget.com/searchitchannel/definition/cloud-service-provider-cloud-provider)
- [@article@What are Cloud Providers?](https://www.redhat.com/en/topics/cloud-computing/what-are-cloud-providers)
- [@feed@Explore top posts about Cloud](https://app.daily.dev/tags/cloud?ref=roadmapsh)

View File

@@ -1 +1,10 @@
# Cloud smith
# Cloud Smith
Cloudsmith is a cloud-native package management platform that enables organizations to manage and distribute software packages across their infrastructure. It provides a centralized repository for storing, managing, and deploying packages, making it easier to manage complex software dependencies and ensure consistency across environments.
Cloudsmith supports a wide range of package formats, including Docker, Helm, npm, pip, and more. It also integrates with popular development tools like Jenkins, GitLab, and CircleCI, making it easy to automate package management and deployment workflows.
Visit the following resources to learn more:
- [@official@Cloud Smith](https://cloudsmith.com/)
- [@official@Cloud Smith Product Overview](https://cloudsmith.com/product/)

View File

@@ -1,4 +1,11 @@
# Cloudflare
- [@article@Cloudflare Documentation](https://developers.cloudflare.com/)
Cloudflare is a company that provides a range of services to help protect and accelerate websites and applications. At its core, Cloudflare is a content delivery network (CDN) and a reverse proxy cloud provider. This means that it acts as an intermediary between a website's origin server and its visitors, caching content and filtering out malicious traffic.
Cloudflare was founded in July 2009 by Matthew Prince, Lee Holloway, and Michelle Zatlyn. The company was venture-capital funded and submitted its S-1 filing for IPO on the New York Stock Exchange in August 2019. It opened for public trading on September 13, 2019, at $15 per share.
Visit the following resources to learn more:
- [@official@Cloudflare](https://cloudflare.com/)
- [@official@Cloudflare Documentation](https://developers.cloudflare.com/)
- [@feed@Explore top posts about Cloudflare](https://app.daily.dev/tags/cloudflare?ref=roadmapsh)

View File

@@ -4,8 +4,8 @@ CloudFormation is the AWS service that helps to define collections of AWS resour
Visit the following resources to learn more:
- [@article@AWS CloudFormation Website](https://aws.amazon.com/cloudformation/)
- [@article@Official Documentation](https://docs.aws.amazon.com/cloudformation/index.html)
- [@article@AWS CloudFormation Getting Started Guide](https://aws.amazon.com/cloudformation/getting-started/)
- [@official@AWS CloudFormation Website](https://aws.amazon.com/cloudformation/)
- [@official@Official Documentation](https://docs.aws.amazon.com/cloudformation/index.html)
- [@official@AWS CloudFormation Getting Started Guide](https://aws.amazon.com/cloudformation/getting-started/)
- [@article@CloudFormation Sample Templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-sample-templates.html)
- [@feed@Explore top posts about AWS CloudFormation](https://app.daily.dev/tags/aws-cloudformation?ref=roadmapsh)

View File

@@ -6,4 +6,4 @@ Software configuration management is a systems engineering process that tracks a
Visit the following resources to learn more:
- [@article@What is configuration management?](https://www.atlassian.com/microservices/microservices-architecture/configuration-management)
- [@article@What is Configuration Management?](https://www.atlassian.com/microservices/microservices-architecture/configuration-management)

View File

@@ -2,6 +2,6 @@
Contabo offers a wide range of hosting services, from VPS to dedicated servers. They are known for their low prices and high performance.
Visit the following link to learn more about Contabo:
Visit the following link to learn more:
- [@official@Contabo - Official Website](https://contabo.com/)
- [@official@Contabo - Official Website](https://contabo.com/)

View File

@@ -4,6 +4,6 @@ Datadog is a monitoring and analytics platform for large-scale applications. It
Visit the following resources to learn more:
- [@article@Datadog Website](https://www.datadoghq.com/)
- [@article@Official Documentation](https://docs.datadoghq.com/)
- [@official@Datadog Website](https://www.datadoghq.com/)
- [@official@Official Documentation](https://docs.datadoghq.com/)
- [@feed@Explore top posts about DevOps](https://app.daily.dev/tags/devops?ref=roadmapsh)

View File

@@ -4,6 +4,6 @@ Datadog is a monitoring and analytics platform for large-scale applications. It
Visit the following resources to learn more:
- [@article@Datadog Website](https://www.datadoghq.com/)
- [@article@Official Documentation](https://docs.datadoghq.com/)
- [@official@Datadog Website](https://www.datadoghq.com/)
- [@official@Official Documentation](https://docs.datadoghq.com/)
- [@feed@Explore top posts about DevOps](https://app.daily.dev/tags/devops?ref=roadmapsh)

View File

@@ -1,7 +1,7 @@
# Design and implementation
# Design and Implementation
Good design encompasses factors such as consistency and coherence in component design and deployment, maintainability to simplify administration and development, and reusability to allow components and subsystems to be used in other applications and in other scenarios. Decisions made during the design and implementation phase have a huge impact on the quality and the total cost of ownership of cloud hosted applications and services.
Visit the following resources to learn more:
- [@article@Design and implementation patterns](https://docs.microsoft.com/en-us/azure/architecture/patterns/category/design-implementation)
- [@article@Design and Implementation Patterns](https://docs.microsoft.com/en-us/azure/architecture/patterns/category/design-implementation)

View File

@@ -1,6 +1,6 @@
# DNS
DNS (**D**omain **N**ame **S**ystem) is the phonebook of the Internet. Humans access information online through domain names, like nytimes.com or espn.com. Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources.
DNS (Domain Name System) is the phonebook of the Internet. Humans access information online through domain names, like `nytimes.com` or `espn.com.` Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources.
Visit the following resources to learn more:

View File

@@ -5,7 +5,7 @@ A Docker Swarm is a group of either physical or virtual machines that are runnin
Visit the following resources to learn more:
- [@official@Official Website](https://www.docker.com/)
- [@article@Docker Swarm Documentation](https://docs.docker.com/engine/swarm/)
- [@official@Docker Swarm Documentation](https://docs.docker.com/engine/swarm/)
- [@video@Docker Swarm Tutorial for Beginners](https://www.youtube.com/watch?v=Tm0Q5zr3FL4)
- [@article@Tutorial: Manage Docker Swarm with Portainer](https://thenewstack.io/tutorial-manage-docker-swarm-with-portainer/)
- [@article@Tutorial: Create a Docker Swarm with Persistent Storage Using GlusterFS](https://thenewstack.io/tutorial-create-a-docker-swarm-with-persistent-storage-using-glusterfs/)

View File

@@ -1,11 +1,24 @@
# Docker
Docker is a platform for working with containerized applications. Among its features are a daemon and client for managing and interacting with containers, registries for storing images, and a desktop application to package all these features together.
Docker is a platform for working with containerized applications. Among its features are a daemon and client for managing and interacting with containers, registries for storing images, and a desktop application to package all these features together. Containers are lightweight and portable, providing a consistent and reliable way to deploy applications across different environments.
## History
Docker was founded in 2010 by *Solomon Hykes*, and the first version of Docker was released in 2013. Docker became an open-source project in 2014, and since then, it has gained massive popularity in the software development industry.
## Key Features
Docker provides several key features that make it an attractive choice for developers:
- **Lightweight**: Containers are much lighter than virtual machines, making them faster to spin up and down.
- **Portable**: Containers are portable across different environments, including Windows, Linux, and macOS.
- **Isolated**: Containers provide a high level of isolation between applications, ensuring that each application runs independently without interfering with others.
- **Efficient**: Containers use fewer resources than virtual machines, making them more efficient.
Visit the following resources to learn more:
- [@official@Visit Dedicated Docker Roadmap](https://roadmap.sh/docker)
- [@article@Docker Documentation](https://docs.docker.com/)
- [@official@Docker Documentation](https://docs.docker.com/)
- [@video@Docker Tutorial](https://www.youtube.com/watch?v=RqTEHSBrYFw)
- [@video@Docker simplified in 55 seconds](https://youtu.be/vP_4DlOH1G4)
- [@feed@Explore top posts about Docker](https://app.daily.dev/tags/docker?ref=roadmapsh)

View File

@@ -5,5 +5,5 @@ Drone is a CI/CD service offering by [Harness](https://harness.io/). Each build
Visit the following resources to learn more:
- [@official@Drone Website](https://www.drone.io/)
- [@article@Official Documentation](https://docs.drone.io/)
- [@official@Official Documentation](https://docs.drone.io/)
- [@article@Drone Getting Started Guide](https://docs.drone.io/server/overview/)

View File

@@ -4,7 +4,7 @@ Originally created at Lyft, Envoy is a high-performance data plane designed for
Visit the following resources to learn more:
- [@article@Envoy Website](https://www.envoyproxy.io/)
- [@article@Envoy Documentation](https://www.envoyproxy.io/docs/envoy/latest/start/start)
- [@official@Envoy Website](https://www.envoyproxy.io/)
- [@official@Envoy Documentation](https://www.envoyproxy.io/docs/envoy/latest/start/start)
- [@article@What is Envoy?](https://www.envoyproxy.io/docs/envoy/latest/intro/what_is_envoy)
- [@feed@Explore top posts about Envoy](https://app.daily.dev/tags/envoy?ref=roadmapsh)

View File

@@ -8,5 +8,5 @@ Flux CD is designed to be a simple and efficient way to manage cloud-native appl
Visit the following resources to learn more:
- [@article@Flux CD Docs](https://docs.fluxcd.io/)
- [@official@Flux CD Docs](https://docs.fluxcd.io/)
- [@feed@Explore top posts about Flux](https://app.daily.dev/tags/flux?ref=roadmapsh)

View File

@@ -7,4 +7,4 @@ Visit the following resources to learn more:
- [@official@FreeBSD Website](https://www.freebsd.org/)
- [@article@Official FreeBSD Documentation](https://docs.freebsd.org/en/)
- [@article@FreeBSD Handbook](https://docs.freebsd.org/en/books/handbook/)
- [@official@FreeBSD Resources for Newbies ](https://www.freebsd.org/projects/newbies/)
- [@official@FreeBSD Resources for Newbies](https://www.freebsd.org/projects/newbies/)

View File

@@ -2,6 +2,6 @@
Cloud Functions are the serverless "Function-as-a-Service" offer of Google Cloud Platform.
- [@article@GCP Cloud Functions Overview](https://cloud.google.com/functions/docs/concepts/overview)
- [@official@GCP Cloud Functions Overview](https://cloud.google.com/functions/docs/concepts/overview)
- [@article@GCP Cloud Functions Tutorial](https://antonputra.com/google/google-cloud-functions-tutorial/)
- [@feed@Explore top posts about Google Cloud Platform](https://app.daily.dev/tags/gcp?ref=roadmapsh)

View File

@@ -4,8 +4,9 @@ Automate, customize, and execute your software development workflows right in yo
Visit the following resources to learn more:
- [@article@GitHub Actions Documentation](https://docs.github.com/en/actions)
- [@article@Learn GitHub Actions](https://docs.github.com/en/actions/learn-github-actions)
- [@official@Github Actions](https://github.com/features/actions)
- [@official@GitHub Actions Documentation](https://docs.github.com/en/actions)
- [@official@Learn GitHub Actions](https://docs.github.com/en/actions/learn-github-actions)
- [@video@GitHub Actions - Supercharge your GitHub Flow](https://youtu.be/cP0I9w2coGU)
- [@video@Automate your Workflow with GitHub Actions](https://www.youtube.com/watch?v=nyKZTKQS_EQ)
- [@feed@Explore top posts about GitHub](https://app.daily.dev/tags/github?ref=roadmapsh)

View File

@@ -5,7 +5,7 @@ GitHub is a provider of Internet hosting for software development and version co
Visit the following resources to learn more:
- [@opensource@GitHub Website](https://github.com)
- [@article@GitHub Documentation](https://docs.github.com/en/get-started/quickstart)
- [@official@GitHub Documentation](https://docs.github.com/en/get-started/quickstart)
- [@article@How to Use Git in a Professional Dev Team](https://ooloo.io/project/github-flow)
- [@video@What is GitHub?](https://www.youtube.com/watch?v=w3jLJU7DT5E)
- [@video@Git vs. GitHub: Whats the difference?](https://www.youtube.com/watch?v=wpISo9TNjfU)

View File

@@ -5,8 +5,8 @@ GitLab offers a CI/CD service that can be used as a SaaS offering or self-manage
Visit the following resources to learn more:
- [@opensource@GitLab Website](https://gitlab.com/)
- [@article@GitLab Documentation](https://docs.gitlab.com/)
- [@article@Get Started with GitLab CI](https://docs.gitlab.com/ee/ci/quick_start/)
- [@article@Learn GitLab Tutorials](https://docs.gitlab.com/ee/tutorials/)
- [@article@GitLab CI/CD Examples](https://docs.gitlab.com/ee/ci/examples/)
- [@official@GitLab Documentation](https://docs.gitlab.com/)
- [@official@Get Started with GitLab CI](https://docs.gitlab.com/ee/ci/quick_start/)
- [@official@Learn GitLab Tutorials](https://docs.gitlab.com/ee/tutorials/)
- [@official@GitLab CI/CD Examples](https://docs.gitlab.com/ee/ci/examples/)
- [@feed@Explore top posts about GitLab](https://app.daily.dev/tags/gitlab?ref=roadmapsh)

View File

@@ -5,5 +5,5 @@ GitLab is a provider of internet hosting for software development and version co
Visit the following resources to learn more:
- [@opensource@GitLab Website](https://gitlab.com/)
- [@article@GitLab Documentation](https://docs.gitlab.com/)
- [@official@GitLab Documentation](https://docs.gitlab.com/)
- [@feed@Explore top posts about GitLab](https://app.daily.dev/tags/gitlab?ref=roadmapsh)

View File

@@ -12,3 +12,8 @@ Amazon Elastic Kubernetes Service (Amazon EKS) is a fully managed Kubernetes ser
Azure Kubernetes Service (AKS) manages your hosted Kubernetes environment, making it quick and easy to deploy and manage containerized applications without container orchestration expertise.
Visit the following resources to learn more:
- [@official@GKE](https://cloud.google.com/kubernetes-engine)
- [@official@EKS](https://aws.amazon.com/eks/)
- [@official@AKS](https://azure.microsoft.com/en-us/products/kubernetes-service/)

View File

@@ -8,6 +8,6 @@ Visit the following resources to learn more:
- [@official@A Tour of Go Go Basics](https://go.dev/tour/welcome/1)
- [@official@Go Reference Documentation](https://go.dev/doc/)
- [@article@Go by Example - annotated example programs](https://gobyexample.com/)
- [@article@W3Schools Go Tutorial ](https://www.w3schools.com/go/)
- [@article@W3Schools Go Tutorial](https://www.w3schools.com/go/)
- [@article@Making a RESTful JSON API in Go](https://thenewstack.io/make-a-restful-json-api-go/)
- [@feed@Explore top posts about Golang](https://app.daily.dev/tags/golang?ref=roadmapsh)

View File

@@ -4,10 +4,10 @@ Google Cloud is Google's cloud computing service offering, providing over 150 pr
Visit the following resources to learn more:
- [@article@Google Cloud Website](https://cloud.google.com/)
- [@article@Official Documentation](https://cloud.google.com/docs)
- [@article@Google Cloud Get Started Guide](https://cloud.google.com/docs/get-started/)
- [@course@Coursera Complete Course for Google Cloud ](https://www.coursera.org/professional-certificates/cloud-engineering-gcp#courses)
- [@official@Google Cloud Website](https://cloud.google.com/)
- [@official@Official Documentation](https://cloud.google.com/docs)
- [@official@Google Cloud Get Started Guide](https://cloud.google.com/docs/get-started/)
- [@course@Coursera Complete Course for Google Cloud](https://www.coursera.org/professional-certificates/cloud-engineering-gcp#courses)
- [@video@Google Cloud by Edureka on You-Tube](https://www.youtube.com/watch?v=IUU6OR8yHCc)
- [@article@5 Tips to Become a Google Cloud Certified Professional Architect](https://thenewstack.io/5-tips-to-become-a-google-cloud-certified-professional-architect/)
- [@feed@Explore top posts about Cloud](https://app.daily.dev/tags/cloud?ref=roadmapsh)

View File

@@ -7,4 +7,4 @@ Visit the following resources to learn more:
- [@official@Heroku Website](https://www.heroku.com/)
- [@article@Official Documentation](https://devcenter.heroku.com/)
- [@article@Heroku Get Started Guide](https://devcenter.heroku.com/start)
- [@feed@Explore top posts about Heroku](https://app.daily.dev/tags/heroku?ref=roadmapsh)
- [@feed@Explore top posts about Heroku](https://app.daily.dev/tags/heroku?ref=roadmapsh)

View File

@@ -4,4 +4,4 @@ Hetzner is a German hosting provider that offers a wide range of services, inclu
Visit the following resources to learn more about Hetzner:
- [@official@Hetzner Website](https://www.hetzner.com/)
- [@official@Hetzner Website](https://www.hetzner.com/)

View File

@@ -1,4 +1,4 @@
# Imaps
# IMAP
IMAP (port 143) or IMAPS (port 993) allows you to access your email wherever you are, from any device. When you read an email message using IMAP, you aren't actually downloading or storing it on your computer; instead, you're reading it from the email service. As a result, you can check your email from different devices, anywhere in the world: your phone, a computer, a friend's computer.

View File

@@ -4,5 +4,5 @@ Jaeger is an open source, end-to-end distributed tracing system that enables us
Visit the following resources to learn more:
- [@article@Jaeger Website](https://www.jaegertracing.io/)
- [@official@Jaeger Website](https://www.jaegertracing.io/)
- [@article@Official Documentation](https://www.jaegertracing.io/docs/1.37/)

View File

@@ -4,6 +4,6 @@ Loki is a horizontally scalable, highly available, multi-tenant log aggregation
Visit the following resources to learn more:
- [@article@Loki Website](https://grafana.com/oss/loki/)
- [@official@Loki Website](https://grafana.com/oss/loki/)
- [@article@Official Documentation](https://grafana.com/docs/loki/latest/?pg=oss-loki\&plcmt=quick-links)
- [@feed@Explore top posts about Grafana](https://app.daily.dev/tags/grafana?ref=roadmapsh)

View File

@@ -4,6 +4,6 @@ LXC is a well-known Linux container runtime that consists of tools, templates, a
Visit the following resources to learn more:
- [@article@LXC Website](https://linuxcontainers.org/)
- [@article@LXC Documentation](https://linuxcontainers.org/lxc/documentation/)
- [@official@LXC Website](https://linuxcontainers.org/)
- [@official@LXC Documentation](https://linuxcontainers.org/lxc/documentation/)
- [@video@Getting started with LXC containers](https://www.youtube.com/watch?v=CWmkSj_B-wo)

View File

@@ -6,4 +6,4 @@ Visit the following resources to learn more:
- [@official@NetBSD Website](https://netbsd.org/)
- [@official@Official NetBSD Documentation](https://netbsd.org/docs/)
- [@official@NetBSD Guide](https://netbsd.org/docs/guide/en/index.html)
- [@official@NetBSD Guide](https://netbsd.org/docs/guide/en/index.html)

View File

@@ -1,6 +1,6 @@
# Netlify
Netlify Functions are serverless functions that allow developers to run server-side code in a JAMstack environment without managing servers. They are built on AWS Lambda and automatically deploy alongside your Netlify site. These functions can handle tasks like API requests, form submissions, and database operations, enabling dynamic functionality in static sites. They support various languages including JavaScript, TypeScript, and Go. Netlify Functions integrate seamlessly with Netlify's deployment pipeline, offering easy development, testing, and production deployment.
Netlify Functions are serverless functions that allow developers to run server-side code in a JAMstack environment without managing servers. They are built on AWS Lambda and automatically deploy alongside your Netlify site. These functions can handle tasks like API requests, form submissions, and database operations, enabling dynamic functionality in static sites. They support various languages including JavaScript, TypeScript, and Go. Netlify Functions integrate seamlessly with Netlify's deployment pipeline, offering easy development, testing, and production deployment.
Visit the following resources to learn more:

View File

@@ -13,4 +13,4 @@ Here are some of the resources to learn about SSH:
- [@article@What is HTTPS?](https://www.cloudflare.com/en-gb/learning/ssl/what-is-https/)
- [@article@What is DNS?](https://www.cloudflare.com/en-gb/learning/dns/what-is-dns/)
- [@video@DNS and How does it Work?](https://www.youtube.com/watch?v=Wj0od2ag5sk)
- [@video@DNS Records](https://www.youtube.com/watch?v=7lxgpKh_fRY)
- [@video@DNS Records](https://www.youtube.com/watch?v=7lxgpKh_fRY)

View File

@@ -63,5 +63,7 @@ IPtables is a command-line firewall utility that uses policy chains to allow or
`SCP` is an acronym for Secure Copy Protocol.It is a command line utility that allows the user to securely copy files and directories between two locations usually between unix or linux systems.The protocol ensures the transmission of files is encrypted to prevent anyone with suspicious intentions from getting sensitive information.`SCP` uses encryption over an `SSH` (Secure Shell) connection, this ensures that the data being transferred is protected from suspicious attacks.
Learn more from the following resources:
- [10 SCP command examples](https://www.tecmint.com/scp-commands-examples/)
- [SCP command explained](https://phoenixnap.com/kb/linux-scp-command)

View File

@@ -7,4 +7,4 @@ Visit the following resources to learn more:
- [@official@OpenBSD Website](https://www.openbsd.org/)
- [@article@Official OpenBSD Documentation](https://man.openbsd.org/search)
- [@article@OpenBSD Handbook](https://www.openbsdhandbook.com/)
- [@official@OpenBSD Installation Guide](https://www.openbsd.org/faq/faq4.html)
- [@official@OpenBSD Installation Guide](https://www.openbsd.org/faq/faq4.html)

View File

@@ -23,6 +23,8 @@ Short for **S**ystem **A**ctivity **R**eport, `sar` is a command line tool for U
Short for **V**irtual **m**emory **stat**istic reporter, `vmstat` is a command line tool for Unix and Unix-like operating systems that reports various information about the operating system such as memory, paging, processes, I/O, CPU and disk usage.
Learn more from the following resources:
- [@article@Linux commands: exploring virtual memory with vmstat](https://www.redhat.com/sysadmin/linux-commands-vmstat)
- [@article@VMstat Man Page](https://man7.org/linux/man-pages/man8/vmstat.8.html)
- [@article@vmstat tutorial](https://phoenixnap.com/kb/vmstat-command)

View File

@@ -2,5 +2,7 @@
Windows PowerShell is a command-line shell and scripting language designed specifically for system administration. Its counterpart in Linux is called Bash Scripting. Built on the .NET Framework, Windows PowerShell enables IT professionals to control and automate the administration of the Windows operating system and applications that run in a Windows Server environment.
Learn more from the following resources:
- [@article@PowerShell Documentation](https://learn.microsoft.com/en-us/powershell/)
- [@feed@Explore top posts about PowerShell](https://app.daily.dev/tags/powershell?ref=roadmapsh)
- [@feed@Explore top posts about PowerShell](https://app.daily.dev/tags/powershell?ref=roadmapsh)

View File

@@ -1,3 +1,8 @@
# Infrastructure Provisioning
Tools in this category are used to provision infrastructure in cloud providers. This includes DNS, networking, security policies, servers, containers, and a whole host of vendor-specific constructs. In this category, the use of cloud provider-agnostic tooling is strongly encouraged. These skills can be applied across most cloud providers, and the more specific domain-specific languages tend to have less reach.
Learn more from the following resources:
- [@article@Terraform Website](https://www.terraform.io/)
- [@article@Azure Resource Manager Documentation](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/overview)

View File

@@ -8,6 +8,6 @@ Visit the following resources to learn more:
- [@official@Python Website](https://www.python.org/)
- [@official@Python Getting Started](https://www.python.org/about/gettingstarted/)
- [@article@Automate the Boring Stuff](https://automatetheboringstuff.com/)
- [@article@W3Schools - Python Tutorial ](https://www.w3schools.com/python/)
- [@article@W3Schools - Python Tutorial](https://www.w3schools.com/python/)
- [@article@Python Crash Course](https://ehmatthes.github.io/pcc/)
- [@feed@Explore top posts about Python](https://app.daily.dev/tags/python?ref=roadmapsh)

View File

@@ -12,4 +12,4 @@ Visit the following resources to learn more:
- [@article@RHEL Documentation](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/)
- [@article@RHEL Getting Started Guides](https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux/get-started)
- [@article@What is Red Hat Enterprise Linux (RHEL) - Red Hat](https://www.redhat.com/en/topics/linux/what-is-rhel)
- [@article@Learn Linux 101](https://developer.ibm.com/series/learn-linux-101/)
- [@article@Learn Linux 101](https://developer.ibm.com/series/learn-linux-101/)

View File

@@ -4,6 +4,6 @@ Ruby is a high-level, interpreted programming language that blends Perl, Smallta
Visit the following resources to learn more:
- [@article@Ruby Website](https://www.ruby-lang.org/en/)
- [@article@Learn Ruby in 20 minutes](https://www.ruby-lang.org/en/documentation/quickstart/)
- [@official@Ruby Website](https://www.ruby-lang.org/en/)
- [@official@Learn Ruby in 20 minutes](https://www.ruby-lang.org/en/documentation/quickstart/)
- [@feed@Explore top posts about Ruby](https://app.daily.dev/tags/ruby?ref=roadmapsh)

View File

@@ -4,8 +4,8 @@ Rust is a modern systems programming language focusing on safety, speed, and con
Visit the following resources to learn more:
- [@article@The Rust Programming Language - online book](https://doc.rust-lang.org/book/)
- [@article@Rust by Example - collection of runnable examples](https://doc.rust-lang.org/stable/rust-by-example/index.html)
- [@official@The Rust Programming Language - online book](https://doc.rust-lang.org/book/)
- [@official@Rust by Example - collection of runnable examples](https://doc.rust-lang.org/stable/rust-by-example/index.html)
- [@video@The Rust Programming Book - Video Version](https://youtube.com/playlist?list=PLai5B987bZ9CoVR-QEIN9foz4QCJ0H2Y8)
- [@article@Comprehensive Rust by Google - Learn Rust in 4 Days](https://google.github.io/comprehensive-rust/)
- [@article@Microsoft Learn Course](https://learn.microsoft.com/en-us/training/paths/rust-first-steps/)

View File

@@ -1,4 +1,8 @@
# Serverless
Serverless computing, also known as Function-as-a-Service (FaaS), is a cloud computing model in which a cloud provider manages the infrastructure and dynamically allocates computing resources as needed. This allows developers to write and deploy code without worrying about the underlying infrastructure.
Visit the following resources to learn more:
- [@article@What is Serverless?](https://www.redhat.com/en/topics/cloud-native-apps/what-is-serverless)
- [@feed@Explore top posts about Serverless](https://app.daily.dev/tags/serverless?ref=roadmapsh)

View File

@@ -2,4 +2,10 @@
Email is emerging as one of the most valuable services on the internet today. Most internet systems use SMTP as a method to transfer mail from one user to another. SMTP is a push protocol and is used to send the mail whereas POP (post office protocol) or IMAP (internet message access protocol) are used to retrieve those emails at the receivers side.
SMTP is an application layer protocol. The client who wants to send the mail opens a TCP connection to the SMTP server and then sends the mail across the connection. The SMTP server is an always-on listening mode. As soon as it listens for a TCP connection from any client, the SMTP process initiates a connection through port 25. After successfully establishing a TCP connection the client process sends the mail instantly.
SMTP is an application layer protocol. The client who wants to send the mail opens a TCP connection to the SMTP server and then sends the mail across the connection. The SMTP server is an always-on listening mode. As soon as it listens for a TCP connection from any client, the SMTP process initiates a connection through port 25. After successfully establishing a TCP connection the client process sends the mail instantly.
Visit the following resources to learn more:
- [@article@What is SMTP? - Cloudflare](https://www.cloudflare.com/learning/email-security/what-is-smtp/#:~:text=The%20Simple%20Mail%20Transfer%20Protocol%20(SMTP)%20is%20a%20technical%20standard,their%20underlying%20hardware%20or%20software.)
- [@article@SMTP - Wikipedia](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol)
- [@feed@Explore top posts about Serverless](https://app.daily.dev/tags/serverless?ref=roadmapsh)

View File

@@ -4,7 +4,7 @@ openSUSE is a free to use Linux distribution aimed to promote the use of Linux e
Visit the following resources to learn more:
- [@article@openSUSE Linux Website](https://www.opensuse.org/)
- [@article@openSUSE Documentation](https://en.opensuse.org/Main_Page)
- [@official@openSUSE Linux Website](https://www.opensuse.org/)
- [@official@openSUSE Documentation](https://en.opensuse.org/Main_Page)
- [@article@Unofficial openSUSE Getting Started Guide](https://opensuse-guide.org/)
- [@feed@Explore top posts about Linux](https://app.daily.dev/tags/linux?ref=roadmapsh)
- [@feed@Explore top posts about Linux](https://app.daily.dev/tags/linux?ref=roadmapsh)

View File

@@ -4,8 +4,8 @@ TeamCity is a CI/CD service provided by JetBrains. TeamCity can be used as a Saa
Visit the following resources to learn more:
- [@article@TeamCity Website](https://www.jetbrains.com/teamcity/)
- [@article@Official Documentation](https://www.jetbrains.com/help/teamcity/teamcity-documentation.html)
- [@official@TeamCity Website](https://www.jetbrains.com/teamcity/)
- [@official@Official Documentation](https://www.jetbrains.com/help/teamcity/teamcity-documentation.html)
- [@article@TeamCity Tutorials](https://www.jetbrains.com/teamcity/tutorials/)
- [@article@TeamCity Learning Portal](https://www.jetbrains.com/teamcity/learn/)
- [@feed@Explore top posts about CI/CD](https://app.daily.dev/tags/cicd?ref=roadmapsh)

View File

@@ -43,7 +43,6 @@ The uniq utility reads the specified input_file comparing adjacent lines, and wr
- [@article@uniq Documentation](https://man7.org/linux/man-pages/man1/uniq.1.html)
`cat` (concatenate) command is very frequently used in Linux. It reads data from the file and gives its content as output. It helps us to create, view, and concatenate files.
- [@article@Cat Command with examples](https://www.tecmint.com/13-basic-cat-command-examples-in-linux/)

View File

@@ -4,6 +4,6 @@ Tomcat is an open source implementation of the Jakarta Servlet, Jakarta Server P
Visit the following resources to learn more:
- [@article@Tomcat Website](https://tomcat.apache.org/)
- [@official@Tomcat Website](https://tomcat.apache.org/)
- [@article@Official Documentation(Tomcat 10.0)](https://tomcat.apache.org/tomcat-10.0-doc/index.html)
- [@video@Apache Tomcat](https://www.youtube.com/c/ApacheTomcatOfficial)

View File

@@ -4,7 +4,7 @@ Travis CI is a CI/CD service that is primarily used for building and testing pro
Visit the following resources to learn more:
- [@article@Travis CI Website](https://www.travis-ci.com/)
- [@article@Travis CI Documentation](https://docs.travis-ci.com/)
- [@official@Travis CI Website](https://www.travis-ci.com/)
- [@official@Travis CI Documentation](https://docs.travis-ci.com/)
- [@article@Travis CI Tutorial](https://docs.travis-ci.com/user/tutorial/)
- [@feed@Explore top posts about CI/CD](https://app.daily.dev/tags/cicd?ref=roadmapsh)

View File

@@ -6,7 +6,7 @@ Ubuntu is a free and open-source Linux distribution based on Debian. Ubuntu is a
Visit the following resources to learn more:
- [@article@Debian Website](https://www.debian.org/)
- [@official@Debian Website](https://www.debian.org/)
- [@official@Ubuntu Website](https://ubuntu.com/)
- [@article@Learn the ways of Linux-fu, for free](https://linuxjourney.com/)
- [@video@Linux Operating System - Crash Course for Beginners](https://www.youtube.com/watch?v=ROjZy1WbCIA)
@@ -14,4 +14,4 @@ Visit the following resources to learn more:
- [@article@Linux Upskill Challenge](https://linuxupskillchallenge.org/)
- [@video@Introduction to Linux - Full Course for Beginners](https://www.youtube.com/watch?v=sWbUDq4S6Y8\&pp=ygUTVWJ1bnR1IGNyYXNoIGNvdXJzZQ%3D%3D)
- [@article@Linux Fundamentals](https://academy.hackthebox.com/course/preview/linux-fundamentals)
- [@feed@Explore top posts about Ubuntu](https://app.daily.dev/tags/ubuntu?ref=roadmapsh)
- [@feed@Explore top posts about Ubuntu](https://app.daily.dev/tags/ubuntu?ref=roadmapsh)

View File

@@ -13,4 +13,4 @@ Vault is commonly used in DevOps environments to securely store and manage secre
Visit the following resources to learn more:
- [@article@Vault - Official Website](https://www.vaultproject.io/)
- [@official@Vault - Official Website](https://www.vaultproject.io/)

View File

@@ -6,5 +6,5 @@ Visit the following resources to learn more:
- [@official@Official Website](https://vercel.com/)
- [@official@Official Docs](https://vercel.com/docs)
- [@video@Vercel: Product Walkthrough ](https://www.youtube.com/watch?v=sPmat30SE4k)
- [@video@Vercel: Product Walkthrough](https://www.youtube.com/watch?v=sPmat30SE4k)
- [@feed@Explore top posts about Vercel](https://app.daily.dev/tags/vercel?ref=roadmapsh)

Some files were not shown because too many files have changed in this diff Show More