add umami events to links
This commit is contained in:
@@ -49,6 +49,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A high-level, interpreted programming language",
|
title="A high-level, interpreted programming language",
|
||||||
aria-label="A high-level, interpreted programming language"
|
aria-label="A high-level, interpreted programming language"
|
||||||
|
data-umami-event="JavaScript"
|
||||||
) JavaScript (ES6+)
|
) JavaScript (ES6+)
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -56,6 +57,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A typed superset of JavaScript that compiles to plain JavaScript",
|
title="A typed superset of JavaScript that compiles to plain JavaScript",
|
||||||
aria-label="A typed superset of JavaScript that compiles to plain JavaScript"
|
aria-label="A typed superset of JavaScript that compiles to plain JavaScript"
|
||||||
|
data-umami-event="TypeScript"
|
||||||
) TypeScript
|
) TypeScript
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -63,6 +65,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A JavaScript library for building user interfaces",
|
title="A JavaScript library for building user interfaces",
|
||||||
aria-label="A JavaScript library for building user interfaces"
|
aria-label="A JavaScript library for building user interfaces"
|
||||||
|
data-umami-event="React"
|
||||||
) React
|
) React
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -70,6 +73,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A progressive framework for building user interfaces",
|
title="A progressive framework for building user interfaces",
|
||||||
aria-label="A progressive framework for building user interfaces"
|
aria-label="A progressive framework for building user interfaces"
|
||||||
|
data-umami-event="Vue"
|
||||||
) Vue.js
|
) Vue.js
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -77,6 +81,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A radical new approach to building user interfaces",
|
title="A radical new approach to building user interfaces",
|
||||||
aria-label="A radical new approach to building user interfaces"
|
aria-label="A radical new approach to building user interfaces"
|
||||||
|
data-umami-event="Svelte"
|
||||||
) Svelte
|
) Svelte
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -84,6 +89,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A platform for building mobile and desktop web applications",
|
title="A platform for building mobile and desktop web applications",
|
||||||
aria-label="A platform for building mobile and desktop web applications"
|
aria-label="A platform for building mobile and desktop web applications"
|
||||||
|
data-umami-event="Angular"
|
||||||
) Angular
|
) Angular
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -91,6 +97,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A framework for ambitious web developers",
|
title="A framework for ambitious web developers",
|
||||||
aria-label="A framework for ambitious web developers"
|
aria-label="A framework for ambitious web developers"
|
||||||
|
data-umami-event="Ember"
|
||||||
) Ember.js
|
) Ember.js
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -98,6 +105,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A fast, small, and feature-rich JavaScript library",
|
title="A fast, small, and feature-rich JavaScript library",
|
||||||
aria-label="A fast, small, and feature-rich JavaScript library"
|
aria-label="A fast, small, and feature-rich JavaScript library"
|
||||||
|
data-umami-event="jQuery"
|
||||||
) jQuery
|
) jQuery
|
||||||
li Plain JS
|
li Plain JS
|
||||||
li
|
li
|
||||||
@@ -106,6 +114,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="The standard markup language for documents designed to be displayed in a web browser",
|
title="The standard markup language for documents designed to be displayed in a web browser",
|
||||||
aria-label="The standard markup language for documents designed to be displayed in a web browser"
|
aria-label="The standard markup language for documents designed to be displayed in a web browser"
|
||||||
|
data-umami-event="HTML5"
|
||||||
) HTML5
|
) HTML5
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -113,6 +122,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A stylesheet language used to describe the presentation of a document written in HTML or XML",
|
title="A stylesheet language used to describe the presentation of a document written in HTML or XML",
|
||||||
aria-label="A stylesheet language used to describe the presentation of a document written in HTML or XML"
|
aria-label="A stylesheet language used to describe the presentation of a document written in HTML or XML"
|
||||||
|
data-umami-event="CSS3"
|
||||||
) CSS3
|
) CSS3
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -120,6 +130,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A preprocessor scripting language that is interpreted or compiled into CSS",
|
title="A preprocessor scripting language that is interpreted or compiled into CSS",
|
||||||
aria-label="A preprocessor scripting language that is interpreted or compiled into CSS"
|
aria-label="A preprocessor scripting language that is interpreted or compiled into CSS"
|
||||||
|
data-umami-event="Sass"
|
||||||
) Sass
|
) Sass
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -127,6 +138,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A backwards-compatible language extension for CSS",
|
title="A backwards-compatible language extension for CSS",
|
||||||
aria-label="A backwards-compatible language extension for CSS"
|
aria-label="A backwards-compatible language extension for CSS"
|
||||||
|
data-umami-event="Less"
|
||||||
) Less
|
) Less
|
||||||
li Responsive Web Design
|
li Responsive Web Design
|
||||||
li
|
li
|
||||||
@@ -135,6 +147,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A utility-first CSS framework for rapidly building custom designs",
|
title="A utility-first CSS framework for rapidly building custom designs",
|
||||||
aria-label="A utility-first CSS framework for rapidly building custom designs"
|
aria-label="A utility-first CSS framework for rapidly building custom designs"
|
||||||
|
data-umami-event="Tailwindcss"
|
||||||
) Tailwindcss
|
) Tailwindcss
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -142,6 +155,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A design system for enterprise-level products",
|
title="A design system for enterprise-level products",
|
||||||
aria-label="A design system for enterprise-level products"
|
aria-label="A design system for enterprise-level products"
|
||||||
|
data-umami-event="Ant"
|
||||||
) Ant Design
|
) Ant Design
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -149,6 +163,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A design system created by Google",
|
title="A design system created by Google",
|
||||||
aria-label="A design system created by Google"
|
aria-label="A design system created by Google"
|
||||||
|
data-umami-event="Material"
|
||||||
) Material Design
|
) Material Design
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -156,6 +171,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="The world's most popular front-end open source toolkit",
|
title="The world's most popular front-end open source toolkit",
|
||||||
aria-label="The world's most popular front-end open source toolkit"
|
aria-label="The world's most popular front-end open source toolkit"
|
||||||
|
data-umami-event="Bootstrap"
|
||||||
) Bootstrap
|
) Bootstrap
|
||||||
li
|
li
|
||||||
| Bundlers:
|
| Bundlers:
|
||||||
@@ -164,6 +180,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="Next Generation Frontend Tooling",
|
title="Next Generation Frontend Tooling",
|
||||||
aria-label="Next Generation Frontend Tooling"
|
aria-label="Next Generation Frontend Tooling"
|
||||||
|
data-umami-event="Vite"
|
||||||
) Vite
|
) Vite
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -171,6 +188,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A static module bundler for modern JavaScript applications",
|
title="A static module bundler for modern JavaScript applications",
|
||||||
aria-label="A static module bundler for modern JavaScript applications"
|
aria-label="A static module bundler for modern JavaScript applications"
|
||||||
|
data-umami-event="Webpack"
|
||||||
) Webpack
|
) Webpack
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -178,6 +196,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="Blazing fast, zero configuration web application bundler",
|
title="Blazing fast, zero configuration web application bundler",
|
||||||
aria-label="Blazing fast, zero configuration web application bundler"
|
aria-label="Blazing fast, zero configuration web application bundler"
|
||||||
|
data-umami-event="Parcel"
|
||||||
) Parcel
|
) Parcel
|
||||||
li
|
li
|
||||||
| Visualization:
|
| Visualization:
|
||||||
@@ -186,6 +205,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A javaScript library for exploratory data visualization",
|
title="A javaScript library for exploratory data visualization",
|
||||||
aria-label="A javaScript library for exploratory data visualization"
|
aria-label="A javaScript library for exploratory data visualization"
|
||||||
|
data-umami-event="Observable"
|
||||||
) Observable Plot
|
) Observable Plot
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -193,6 +213,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A JavaScript library for manipulating documents based on data",
|
title="A JavaScript library for manipulating documents based on data",
|
||||||
aria-label="A JavaScript library for manipulating documents based on data"
|
aria-label="A JavaScript library for manipulating documents based on data"
|
||||||
|
data-umami-event="D3"
|
||||||
) D3.js
|
) D3.js
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -200,6 +221,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A lightweight JavaScript library for creating particles",
|
title="A lightweight JavaScript library for creating particles",
|
||||||
aria-label="A lightweight JavaScript library for creating particles"
|
aria-label="A lightweight JavaScript library for creating particles"
|
||||||
|
data-umami-event="Particle"
|
||||||
) Particle.js
|
) Particle.js
|
||||||
| ,
|
| ,
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -207,6 +229,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A cross-browser JavaScript library and API used to create and display animated 3D computer graphics",
|
title="A cross-browser JavaScript library and API used to create and display animated 3D computer graphics",
|
||||||
aria-label="A cross-browser JavaScript library and API used to create and display animated 3D computer graphics"
|
aria-label="A cross-browser JavaScript library and API used to create and display animated 3D computer graphics"
|
||||||
|
data-umami-event="Three"
|
||||||
) Three.js
|
) Three.js
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -214,6 +237,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="The React Framework for Production",
|
title="The React Framework for Production",
|
||||||
aria-label="The React Framework for Production"
|
aria-label="The React Framework for Production"
|
||||||
|
data-umami-event="NextJS"
|
||||||
) NextJS(React framework)
|
) NextJS(React framework)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -221,6 +245,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="The Intuitive Vue Framework",
|
title="The Intuitive Vue Framework",
|
||||||
aria-label="The Intuitive Vue Framework"
|
aria-label="The Intuitive Vue Framework"
|
||||||
|
data-umami-event="NuxtJS"
|
||||||
) NuxtJS(Vue framework)
|
) NuxtJS(Vue framework)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -228,6 +253,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="The fastest way to build Svelte apps",
|
title="The fastest way to build Svelte apps",
|
||||||
aria-label="The fastest way to build Svelte apps"
|
aria-label="The fastest way to build Svelte apps"
|
||||||
|
data-umami-event="SvelteKit"
|
||||||
) SvelteKit(Svelte framework)
|
) SvelteKit(Svelte framework)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -235,6 +261,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A React-based open source framework for creating websites and apps",
|
title="A React-based open source framework for creating websites and apps",
|
||||||
aria-label="A React-based open source framework for creating websites and apps"
|
aria-label="A React-based open source framework for creating websites and apps"
|
||||||
|
data-umami-event="Gatsby"
|
||||||
) Gatsby(Static site generator)
|
) Gatsby(Static site generator)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -242,6 +269,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A tool for building UI components and pages in isolation",
|
title="A tool for building UI components and pages in isolation",
|
||||||
aria-label="A tool for building UI components and pages in isolation"
|
aria-label="A tool for building UI components and pages in isolation"
|
||||||
|
data-umami-event="Storybook"
|
||||||
) Storybook(UI component explorer)
|
) Storybook(UI component explorer)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -249,6 +277,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A delightful JavaScript Testing Framework with a focus on simplicity",
|
title="A delightful JavaScript Testing Framework with a focus on simplicity",
|
||||||
aria-label="A delightful JavaScript Testing Framework with a focus on simplicity"
|
aria-label="A delightful JavaScript Testing Framework with a focus on simplicity"
|
||||||
|
data-umami-event="Jest"
|
||||||
) Jest(Testing framework)
|
) Jest(Testing framework)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -256,6 +285,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="Fast, easy and reliable testing for anything that runs in a browser",
|
title="Fast, easy and reliable testing for anything that runs in a browser",
|
||||||
aria-label="Fast, easy and reliable testing for anything that runs in a browser"
|
aria-label="Fast, easy and reliable testing for anything that runs in a browser"
|
||||||
|
data-umami-event="Cypress"
|
||||||
) Cypress(E2E testing)
|
) Cypress(E2E testing)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -263,6 +293,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="Reliable end-to-end testing for modern web apps",
|
title="Reliable end-to-end testing for modern web apps",
|
||||||
aria-label="Reliable end-to-end testing for modern web apps"
|
aria-label="Reliable end-to-end testing for modern web apps"
|
||||||
|
data-umami-event="Playwright"
|
||||||
) Playwright(E2E testing)
|
) Playwright(E2E testing)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -270,6 +301,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A Predictable State Container for JS Apps",
|
title="A Predictable State Container for JS Apps",
|
||||||
aria-label="A Predictable State Container for JS Apps"
|
aria-label="A Predictable State Container for JS Apps"
|
||||||
|
data-umami-event="Redux"
|
||||||
) Redux(State management)
|
) Redux(State management)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -277,6 +309,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="Simple, scalable state management",
|
title="Simple, scalable state management",
|
||||||
aria-label="Simple, scalable state management"
|
aria-label="Simple, scalable state management"
|
||||||
|
data-umami-event="MobX"
|
||||||
) MobX(State management)
|
) MobX(State management)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -284,6 +317,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A small, fast and scalable bearbones state-management solution",
|
title="A small, fast and scalable bearbones state-management solution",
|
||||||
aria-label="A small, fast and scalable bearbones state-management solution"
|
aria-label="A small, fast and scalable bearbones state-management solution"
|
||||||
|
data-umami-event="Zustand"
|
||||||
) Zustand(State management)
|
) Zustand(State management)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -291,6 +325,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A complete state management library for JavaScript apps",
|
title="A complete state management library for JavaScript apps",
|
||||||
aria-label="A complete state management library for JavaScript apps"
|
aria-label="A complete state management library for JavaScript apps"
|
||||||
|
data-umami-event="Apollo"
|
||||||
) Apollo Client(GraphQL client)
|
) Apollo Client(GraphQL client)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -298,6 +333,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="Promise based HTTP client for the browser and node.js",
|
title="Promise based HTTP client for the browser and node.js",
|
||||||
aria-label="Promise based HTTP client for the browser and node.js"
|
aria-label="Promise based HTTP client for the browser and node.js"
|
||||||
|
data-umami-event="Axios"
|
||||||
) Axios(HTTP client)
|
) Axios(HTTP client)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -305,6 +341,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A modern JavaScript utility library delivering modularity, performance & extras",
|
title="A modern JavaScript utility library delivering modularity, performance & extras",
|
||||||
aria-label="A modern JavaScript utility library delivering modularity, performance & extras"
|
aria-label="A modern JavaScript utility library delivering modularity, performance & extras"
|
||||||
|
data-umami-event="Lodash"
|
||||||
) Lodash(Utility library)
|
) Lodash(Utility library)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -312,6 +349,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A library for reactive programming using Observables",
|
title="A library for reactive programming using Observables",
|
||||||
aria-label="A library for reactive programming using Observables"
|
aria-label="A library for reactive programming using Observables"
|
||||||
|
data-umami-event="RxJS"
|
||||||
) RxJS(Reactive programming library)
|
) RxJS(Reactive programming library)
|
||||||
li
|
li
|
||||||
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
a.rounded-sm.text-nls-green.transition.underline-offset-2.underline(
|
||||||
@@ -319,6 +357,7 @@ section.bg-nls-black.text-white
|
|||||||
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
class="focus:outline-none focus:z-10 focus:ring-4 focus:ring-nls-green focus:bg-nls-green focus:text-black hover:text-white focus:no-underline hover:decoration-2",
|
||||||
title="A JavaScript API for rendering interactive 2D and 3D graphics",
|
title="A JavaScript API for rendering interactive 2D and 3D graphics",
|
||||||
aria-label="A JavaScript API for rendering interactive 2D and 3D graphics"
|
aria-label="A JavaScript API for rendering interactive 2D and 3D graphics"
|
||||||
|
data-umami-event="WebGL"
|
||||||
) WebGL(3D graphics)
|
) WebGL(3D graphics)
|
||||||
// endregion
|
// endregion
|
||||||
// region DevOps
|
// region DevOps
|
||||||
@@ -334,6 +373,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A platform for developing, shipping, and running applications",
|
title="A platform for developing, shipping, and running applications",
|
||||||
aria-label="A platform for developing, shipping, and running applications"
|
aria-label="A platform for developing, shipping, and running applications"
|
||||||
|
data-umami-event="Docker"
|
||||||
) Docker
|
) Docker
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -341,6 +381,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open-source system for automating deployment, scaling, and management of containerized applications",
|
title="An open-source system for automating deployment, scaling, and management of containerized applications",
|
||||||
aria-label="An open-source system for automating deployment, scaling, and management of containerized applications"
|
aria-label="An open-source system for automating deployment, scaling, and management of containerized applications"
|
||||||
|
data-umami-event="Kubernetes"
|
||||||
) Kubernetes
|
) Kubernetes
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -348,6 +389,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Microsoft's cloud computing platform",
|
title="Microsoft's cloud computing platform",
|
||||||
aria-label="Microsoft's cloud computing platform"
|
aria-label="Microsoft's cloud computing platform"
|
||||||
|
data-umami-event="Azure"
|
||||||
) Azure
|
) Azure
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -355,6 +397,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Google's suite of cloud computing services",
|
title="Google's suite of cloud computing services",
|
||||||
aria-label="Google's suite of cloud computing services"
|
aria-label="Google's suite of cloud computing services"
|
||||||
|
data-umami-event="Google"
|
||||||
) Google Cloud
|
) Google Cloud
|
||||||
li
|
li
|
||||||
| CI/CD (
|
| CI/CD (
|
||||||
@@ -363,6 +406,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open source automation server",
|
title="An open source automation server",
|
||||||
aria-label="An open source automation server"
|
aria-label="An open source automation server"
|
||||||
|
data-umami-event="Jenkins"
|
||||||
) Jenkins
|
) Jenkins
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -370,6 +414,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="GitLab's built-in Continuous Integration",
|
title="GitLab's built-in Continuous Integration",
|
||||||
aria-label="GitLab's built-in Continuous Integration"
|
aria-label="GitLab's built-in Continuous Integration"
|
||||||
|
data-umami-event="GitLab"
|
||||||
) GitLab CI
|
) GitLab CI
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -377,6 +422,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Automate your workflow from idea to production",
|
title="Automate your workflow from idea to production",
|
||||||
aria-label="Automate your workflow from idea to production"
|
aria-label="Automate your workflow from idea to production"
|
||||||
|
data-umami-event="GitHub"
|
||||||
) GitHub Actions
|
) GitHub Actions
|
||||||
| )
|
| )
|
||||||
li
|
li
|
||||||
@@ -385,6 +431,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open-source infrastructure as code software tool",
|
title="An open-source infrastructure as code software tool",
|
||||||
aria-label="An open-source infrastructure as code software tool"
|
aria-label="An open-source infrastructure as code software tool"
|
||||||
|
data-umami-event="Terraform"
|
||||||
) Terraform
|
) Terraform
|
||||||
li
|
li
|
||||||
| Monitoring (
|
| Monitoring (
|
||||||
@@ -393,6 +440,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open-source monitoring system with a dimensional data model",
|
title="An open-source monitoring system with a dimensional data model",
|
||||||
aria-label="An open-source monitoring system with a dimensional data model"
|
aria-label="An open-source monitoring system with a dimensional data model"
|
||||||
|
data-umami-event="Prometheus"
|
||||||
) Prometheus
|
) Prometheus
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -400,6 +448,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open-source platform for monitoring and observability",
|
title="An open-source platform for monitoring and observability",
|
||||||
aria-label="An open-source platform for monitoring and observability"
|
aria-label="An open-source platform for monitoring and observability"
|
||||||
|
data-umami-event="Grafana"
|
||||||
) Grafana
|
) Grafana
|
||||||
| )
|
| )
|
||||||
li
|
li
|
||||||
@@ -408,6 +457,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A robust, commercial-grade, featureful, and freely-available source code implementation of an HTTP (Web) server",
|
title="A robust, commercial-grade, featureful, and freely-available source code implementation of an HTTP (Web) server",
|
||||||
aria-label="A robust, commercial-grade, featureful, and freely-available source code implementation of an HTTP (Web) server"
|
aria-label="A robust, commercial-grade, featureful, and freely-available source code implementation of an HTTP (Web) server"
|
||||||
|
data-umami-event="Apache"
|
||||||
) Apache
|
) Apache
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -415,6 +465,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache",
|
title="A web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache",
|
||||||
aria-label="A web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache"
|
aria-label="A web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache"
|
||||||
|
data-umami-event="Nginx"
|
||||||
) Nginx
|
) Nginx
|
||||||
li
|
li
|
||||||
| Message Queuing:
|
| Message Queuing:
|
||||||
@@ -423,6 +474,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A distributed streaming platform",
|
title="A distributed streaming platform",
|
||||||
aria-label="A distributed streaming platform"
|
aria-label="A distributed streaming platform"
|
||||||
|
data-umami-event="Kafka"
|
||||||
) Kafka
|
) Kafka
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -430,6 +482,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open-source platform for continuous inspection of code quality",
|
title="An open-source platform for continuous inspection of code quality",
|
||||||
aria-label="An open-source platform for continuous inspection of code quality"
|
aria-label="An open-source platform for continuous inspection of code quality"
|
||||||
|
data-umami-event="Sonarqube"
|
||||||
) Sonarqube
|
) Sonarqube
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -437,6 +490,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Application monitoring and error tracking software",
|
title="Application monitoring and error tracking software",
|
||||||
aria-label="Application monitoring and error tracking software"
|
aria-label="Application monitoring and error tracking software"
|
||||||
|
data-umami-event="Sentry"
|
||||||
) Sentry(Error tracking)
|
) Sentry(Error tracking)
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -444,6 +498,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open-source, automated tool for improving the quality of web pages",
|
title="An open-source, automated tool for improving the quality of web pages",
|
||||||
aria-label="An open-source, automated tool for improving the quality of web pages"
|
aria-label="An open-source, automated tool for improving the quality of web pages"
|
||||||
|
data-umami-event="Lighthouse"
|
||||||
) Lighthouse(Performance, accessibility, and SEO auditing)
|
) Lighthouse(Performance, accessibility, and SEO auditing)
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -451,6 +506,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Website performance and optimization test",
|
title="Website performance and optimization test",
|
||||||
aria-label="Website performance and optimization test"
|
aria-label="Website performance and optimization test"
|
||||||
|
data-umami-event="WebPageTest"
|
||||||
) WebPageTest(Performance testing)
|
) WebPageTest(Performance testing)
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -458,6 +514,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol",
|
title="A Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol",
|
||||||
aria-label="A Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol"
|
aria-label="A Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol"
|
||||||
|
data-umami-event="Puppeteer"
|
||||||
) Puppeteer(Headless browser automation)
|
) Puppeteer(Headless browser automation)
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -465,6 +522,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A portable framework for testing web applications",
|
title="A portable framework for testing web applications",
|
||||||
aria-label="A portable framework for testing web applications"
|
aria-label="A portable framework for testing web applications"
|
||||||
|
data-umami-event="Selenium"
|
||||||
) Selenium(Browser automation)
|
) Selenium(Browser automation)
|
||||||
li
|
li
|
||||||
a.text-nls-blue.transition.underline-offset-2.underline(
|
a.text-nls-blue.transition.underline-offset-2.underline(
|
||||||
@@ -472,6 +530,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Smart, Fast and Extensible Build System",
|
title="Smart, Fast and Extensible Build System",
|
||||||
aria-label="Smart, Fast and Extensible Build System"
|
aria-label="Smart, Fast and Extensible Build System"
|
||||||
|
data-umami-event="Nx"
|
||||||
) Nx(Monorepo tooling)
|
) Nx(Monorepo tooling)
|
||||||
// endregion
|
// endregion
|
||||||
// region Backend
|
// region Backend
|
||||||
@@ -487,6 +546,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A JavaScript runtime built on Chrome's V8 JavaScript engine",
|
title="A JavaScript runtime built on Chrome's V8 JavaScript engine",
|
||||||
aria-label="A JavaScript runtime built on Chrome's V8 JavaScript engine"
|
aria-label="A JavaScript runtime built on Chrome's V8 JavaScript engine"
|
||||||
|
data-umami-event="Node"
|
||||||
) Node.js
|
) Node.js
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -494,6 +554,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Fast, unopinionated, minimalist web framework for Node.js",
|
title="Fast, unopinionated, minimalist web framework for Node.js",
|
||||||
aria-label="Fast, unopinionated, minimalist web framework for Node.js"
|
aria-label="Fast, unopinionated, minimalist web framework for Node.js"
|
||||||
|
data-umami-event="Express"
|
||||||
) Express.js
|
) Express.js
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -501,6 +562,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A popular general-purpose scripting language",
|
title="A popular general-purpose scripting language",
|
||||||
aria-label="A popular general-purpose scripting language"
|
aria-label="A popular general-purpose scripting language"
|
||||||
|
data-umami-event="PHP"
|
||||||
) PHP
|
) PHP
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -508,6 +570,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A web application framework with expressive, elegant syntax",
|
title="A web application framework with expressive, elegant syntax",
|
||||||
aria-label="A web application framework with expressive, elegant syntax"
|
aria-label="A web application framework with expressive, elegant syntax"
|
||||||
|
data-umami-event="Laravel"
|
||||||
) Laravel
|
) Laravel
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -515,6 +578,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A set of reusable PHP components",
|
title="A set of reusable PHP components",
|
||||||
aria-label="A set of reusable PHP components"
|
aria-label="A set of reusable PHP components"
|
||||||
|
data-umami-event="Symfony"
|
||||||
) Symfony
|
) Symfony
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -522,6 +586,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A general-purpose programming language",
|
title="A general-purpose programming language",
|
||||||
aria-label="A general-purpose programming language"
|
aria-label="A general-purpose programming language"
|
||||||
|
data-umami-event="Java"
|
||||||
) Java
|
) Java
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -529,6 +594,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An extension of the Spring framework",
|
title="An extension of the Spring framework",
|
||||||
aria-label="An extension of the Spring framework"
|
aria-label="An extension of the Spring framework"
|
||||||
|
data-umami-event="Spring"
|
||||||
) Spring Boot
|
) Spring Boot
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -536,6 +602,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A Kubernetes Native Java stack",
|
title="A Kubernetes Native Java stack",
|
||||||
aria-label="A Kubernetes Native Java stack"
|
aria-label="A Kubernetes Native Java stack"
|
||||||
|
data-umami-event="Quarkus"
|
||||||
) Quarkus
|
) Quarkus
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -543,6 +610,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A programming language that lets you work quickly and integrate systems more effectively",
|
title="A programming language that lets you work quickly and integrate systems more effectively",
|
||||||
aria-label="A programming language that lets you work quickly and integrate systems more effectively"
|
aria-label="A programming language that lets you work quickly and integrate systems more effectively"
|
||||||
|
data-umami-event="Python"
|
||||||
) Python
|
) Python
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -550,6 +618,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A high-level Python Web framework",
|
title="A high-level Python Web framework",
|
||||||
aria-label="A high-level Python Web framework"
|
aria-label="A high-level Python Web framework"
|
||||||
|
data-umami-event="Django"
|
||||||
) Django
|
) Django
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -557,6 +626,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A lightweight WSGI web application framework",
|
title="A lightweight WSGI web application framework",
|
||||||
aria-label="A lightweight WSGI web application framework"
|
aria-label="A lightweight WSGI web application framework"
|
||||||
|
data-umami-event="Flask"
|
||||||
) Flask
|
) Flask
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -564,6 +634,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A modern, fast (high-performance), web framework for building APIs with Python 3.6+",
|
title="A modern, fast (high-performance), web framework for building APIs with Python 3.6+",
|
||||||
aria-label="A modern, fast (high-performance), web framework for building APIs with Python 3.6+"
|
aria-label="A modern, fast (high-performance), web framework for building APIs with Python 3.6+"
|
||||||
|
data-umami-event="FastAPI"
|
||||||
) FastAPI
|
) FastAPI
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -571,6 +642,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open source programming language that makes it easy to build simple, reliable, and efficient software",
|
title="An open source programming language that makes it easy to build simple, reliable, and efficient software",
|
||||||
aria-label="An open source programming language that makes it easy to build simple, reliable, and efficient software"
|
aria-label="An open source programming language that makes it easy to build simple, reliable, and efficient software"
|
||||||
|
data-umami-event="Go"
|
||||||
) Go
|
) Go
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -578,6 +650,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A language empowering everyone to build reliable and efficient software",
|
title="A language empowering everyone to build reliable and efficient software",
|
||||||
aria-label="A language empowering everyone to build reliable and efficient software"
|
aria-label="A language empowering everyone to build reliable and efficient software"
|
||||||
|
data-umami-event="Rust"
|
||||||
) Rust
|
) Rust
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -585,6 +658,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Representational State Transfer",
|
title="Representational State Transfer",
|
||||||
aria-label="Representational State Transfer"
|
aria-label="Representational State Transfer"
|
||||||
|
data-umami-event="RESTful"
|
||||||
) RESTful APIs
|
) RESTful APIs
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -592,6 +666,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A query language for your API",
|
title="A query language for your API",
|
||||||
aria-label="A query language for your API"
|
aria-label="A query language for your API"
|
||||||
|
data-umami-event="GraphQL"
|
||||||
) GraphQL
|
) GraphQL
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -599,6 +674,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Ultrafast web framework for the Edges",
|
title="Ultrafast web framework for the Edges",
|
||||||
aria-label="Ultrafast web framework for the Edges"
|
aria-label="Ultrafast web framework for the Edges"
|
||||||
|
data-umami-event="Hono"
|
||||||
) Hono
|
) Hono
|
||||||
li
|
li
|
||||||
| Runtimes:
|
| Runtimes:
|
||||||
@@ -607,6 +683,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A fast all-in-one JavaScript runtime",
|
title="A fast all-in-one JavaScript runtime",
|
||||||
aria-label="A fast all-in-one JavaScript runtime"
|
aria-label="A fast all-in-one JavaScript runtime"
|
||||||
|
data-umami-event="Bun"
|
||||||
) Bun
|
) Bun
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -614,6 +691,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A secure runtime for JavaScript and TypeScript",
|
title="A secure runtime for JavaScript and TypeScript",
|
||||||
aria-label="A secure runtime for JavaScript and TypeScript"
|
aria-label="A secure runtime for JavaScript and TypeScript"
|
||||||
|
data-umami-event="Deno"
|
||||||
) Deno
|
) Deno
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -621,6 +699,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A progressive Node.js framework for building efficient and scalable server-side applications",
|
title="A progressive Node.js framework for building efficient and scalable server-side applications",
|
||||||
aria-label="A progressive Node.js framework for building efficient and scalable server-side applications"
|
aria-label="A progressive Node.js framework for building efficient and scalable server-side applications"
|
||||||
|
data-umami-event="NestJS"
|
||||||
) NestJS(Node.js framework)
|
) NestJS(Node.js framework)
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -628,6 +707,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Fast and low overhead web framework, for Node.js",
|
title="Fast and low overhead web framework, for Node.js",
|
||||||
aria-label="Fast and low overhead web framework, for Node.js"
|
aria-label="Fast and low overhead web framework, for Node.js"
|
||||||
|
data-umami-event="Fastify"
|
||||||
) Fastify(Node.js framework)
|
) Fastify(Node.js framework)
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -635,6 +715,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="ORM for TypeScript and JavaScript",
|
title="ORM for TypeScript and JavaScript",
|
||||||
aria-label="ORM for TypeScript and JavaScript"
|
aria-label="ORM for TypeScript and JavaScript"
|
||||||
|
data-umami-event="TypeORM"
|
||||||
) TypeORM(ORM for TypeScript)
|
) TypeORM(ORM for TypeScript)
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -642,6 +723,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Next-generation Node.js and TypeScript ORM",
|
title="Next-generation Node.js and TypeScript ORM",
|
||||||
aria-label="Next-generation Node.js and TypeScript ORM"
|
aria-label="Next-generation Node.js and TypeScript ORM"
|
||||||
|
data-umami-event="Prisma"
|
||||||
) Prisma(Database toolkit)
|
) Prisma(Database toolkit)
|
||||||
li
|
li
|
||||||
a.text-nls-violet.transition.underline-offset-2.underline(
|
a.text-nls-violet.transition.underline-offset-2.underline(
|
||||||
@@ -649,6 +731,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A SQL query builder for JavaScript",
|
title="A SQL query builder for JavaScript",
|
||||||
aria-label="A SQL query builder for JavaScript"
|
aria-label="A SQL query builder for JavaScript"
|
||||||
|
data-umami-event="Knex"
|
||||||
) Knex.js(SQL query builder)
|
) Knex.js(SQL query builder)
|
||||||
// endregion
|
// endregion
|
||||||
// region Data
|
// region Data
|
||||||
@@ -665,12 +748,14 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="The world's most popular open source database",
|
title="The world's most popular open source database",
|
||||||
aria-label="The world's most popular open source database"
|
aria-label="The world's most popular open source database"
|
||||||
|
data-umami-event="MySQL"
|
||||||
) MySQL,
|
) MySQL,
|
||||||
a.text-nls-purple.transition.underline-offset-2.underline(
|
a.text-nls-purple.transition.underline-offset-2.underline(
|
||||||
href="https://www.postgresql.org/",
|
href="https://www.postgresql.org/",
|
||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="The world's most advanced open source database",
|
title="The world's most advanced open source database",
|
||||||
aria-label="The world's most advanced open source database"
|
aria-label="The world's most advanced open source database"
|
||||||
|
data-umami-event="PostgreSQL"
|
||||||
) PostgreSQL
|
) PostgreSQL
|
||||||
| )
|
| )
|
||||||
li
|
li
|
||||||
@@ -680,6 +765,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A general purpose, document-based, distributed database",
|
title="A general purpose, document-based, distributed database",
|
||||||
aria-label="A general purpose, document-based, distributed database"
|
aria-label="A general purpose, document-based, distributed database"
|
||||||
|
data-umami-event="MongoDB"
|
||||||
) MongoDB
|
) MongoDB
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-purple.transition.underline-offset-2.underline(
|
a.text-nls-purple.transition.underline-offset-2.underline(
|
||||||
@@ -687,6 +773,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A free and open-source, distributed, wide column store, NoSQL database management system",
|
title="A free and open-source, distributed, wide column store, NoSQL database management system",
|
||||||
aria-label="A free and open-source, distributed, wide column store, NoSQL database management system"
|
aria-label="A free and open-source, distributed, wide column store, NoSQL database management system"
|
||||||
|
data-umami-event="Cassandra"
|
||||||
) Cassandra
|
) Cassandra
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-purple.transition.underline-offset-2.underline(
|
a.text-nls-purple.transition.underline-offset-2.underline(
|
||||||
@@ -694,6 +781,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="An open source, in-memory data structure store",
|
title="An open source, in-memory data structure store",
|
||||||
aria-label="An open source, in-memory data structure store"
|
aria-label="An open source, in-memory data structure store"
|
||||||
|
data-umami-event="Redis"
|
||||||
) Redis
|
) Redis
|
||||||
| )
|
| )
|
||||||
li
|
li
|
||||||
@@ -702,6 +790,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A distributed, RESTful search and analytics engine",
|
title="A distributed, RESTful search and analytics engine",
|
||||||
aria-label="A distributed, RESTful search and analytics engine"
|
aria-label="A distributed, RESTful search and analytics engine"
|
||||||
|
data-umami-event="Elasticsearch"
|
||||||
) Elasticsearch
|
) Elasticsearch
|
||||||
li Data Analysis & Visualization
|
li Data Analysis & Visualization
|
||||||
// endregion
|
// endregion
|
||||||
@@ -719,6 +808,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Build cross-platform desktop apps with JavaScript, HTML, and CSS",
|
title="Build cross-platform desktop apps with JavaScript, HTML, and CSS",
|
||||||
aria-label="Build cross-platform desktop apps with JavaScript, HTML, and CSS"
|
aria-label="Build cross-platform desktop apps with JavaScript, HTML, and CSS"
|
||||||
|
data-umami-event="Electron"
|
||||||
) Electron
|
) Electron
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-pink.transition.underline-offset-2.underline(
|
a.text-nls-pink.transition.underline-offset-2.underline(
|
||||||
@@ -726,6 +816,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Build smaller, faster, and more secure desktop applications with a web frontend",
|
title="Build smaller, faster, and more secure desktop applications with a web frontend",
|
||||||
aria-label="Build smaller, faster, and more secure desktop applications with a web frontend"
|
aria-label="Build smaller, faster, and more secure desktop applications with a web frontend"
|
||||||
|
data-umami-event="Tauri"
|
||||||
) Tauri
|
) Tauri
|
||||||
li
|
li
|
||||||
| Mobile Apps:
|
| Mobile Apps:
|
||||||
@@ -734,6 +825,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="A framework for building native apps using React",
|
title="A framework for building native apps using React",
|
||||||
aria-label="A framework for building native apps using React"
|
aria-label="A framework for building native apps using React"
|
||||||
|
data-umami-event="React"
|
||||||
) React Native
|
) React Native
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-pink.transition.underline-offset-2.underline(
|
a.text-nls-pink.transition.underline-offset-2.underline(
|
||||||
@@ -741,6 +833,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Google's UI toolkit for building natively compiled applications",
|
title="Google's UI toolkit for building natively compiled applications",
|
||||||
aria-label="Google's UI toolkit for building natively compiled applications"
|
aria-label="Google's UI toolkit for building natively compiled applications"
|
||||||
|
data-umami-event="Flutter"
|
||||||
) Flutter
|
) Flutter
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-pink.transition.underline-offset-2.underline(
|
a.text-nls-pink.transition.underline-offset-2.underline(
|
||||||
@@ -748,6 +841,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Mobile apps with HTML, CSS & JS",
|
title="Mobile apps with HTML, CSS & JS",
|
||||||
aria-label="Mobile apps with HTML, CSS & JS"
|
aria-label="Mobile apps with HTML, CSS & JS"
|
||||||
|
data-umami-event="Cordova"
|
||||||
) Cordova
|
) Cordova
|
||||||
li
|
li
|
||||||
a.text-nls-pink.transition.underline-offset-2.underline(
|
a.text-nls-pink.transition.underline-offset-2.underline(
|
||||||
@@ -755,6 +849,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Websites that took all the right vitamins",
|
title="Websites that took all the right vitamins",
|
||||||
aria-label="Websites that took all the right vitamins"
|
aria-label="Websites that took all the right vitamins"
|
||||||
|
data-umami-event="Progressive"
|
||||||
) Progressive Web Apps (PWAs)
|
) Progressive Web Apps (PWAs)
|
||||||
// endregion
|
// endregion
|
||||||
// region Best Practices
|
// region Best Practices
|
||||||
@@ -770,6 +865,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Web Content Accessibility Guidelines",
|
title="Web Content Accessibility Guidelines",
|
||||||
aria-label="Web Content Accessibility Guidelines"
|
aria-label="Web Content Accessibility Guidelines"
|
||||||
|
data-umami-event="Accessibility"
|
||||||
) Accessibility (a11y): WCAG
|
) Accessibility (a11y): WCAG
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-red.transition.underline-offset-2.underline(
|
a.text-nls-red.transition.underline-offset-2.underline(
|
||||||
@@ -777,6 +873,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Accessible Rich Internet Applications",
|
title="Accessible Rich Internet Applications",
|
||||||
aria-label="Accessible Rich Internet Applications"
|
aria-label="Accessible Rich Internet Applications"
|
||||||
|
data-umami-event="ARIA"
|
||||||
) ARIA
|
) ARIA
|
||||||
li
|
li
|
||||||
| Internationalization (i18n):
|
| Internationalization (i18n):
|
||||||
@@ -785,6 +882,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Internationalization framework",
|
title="Internationalization framework",
|
||||||
aria-label="Internationalization framework"
|
aria-label="Internationalization framework"
|
||||||
|
data-umami-event="i18next"
|
||||||
) i18next
|
) i18next
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-red.transition.underline-offset-2.underline(
|
a.text-nls-red.transition.underline-offset-2.underline(
|
||||||
@@ -792,6 +890,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Web-based continuous localization system",
|
title="Web-based continuous localization system",
|
||||||
aria-label="Web-based continuous localization system"
|
aria-label="Web-based continuous localization system"
|
||||||
|
data-umami-event="Weblate"
|
||||||
) Weblate
|
) Weblate
|
||||||
| ,
|
| ,
|
||||||
a.text-nls-red.transition.underline-offset-2.underline(
|
a.text-nls-red.transition.underline-offset-2.underline(
|
||||||
@@ -799,6 +898,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Translation management platform",
|
title="Translation management platform",
|
||||||
aria-label="Translation management platform"
|
aria-label="Translation management platform"
|
||||||
|
data-umami-event="Localize"
|
||||||
) Localize
|
) Localize
|
||||||
li Performance Optimization
|
li Performance Optimization
|
||||||
li SEO Best Practices
|
li SEO Best Practices
|
||||||
@@ -808,6 +908,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Open Web Application Security Project",
|
title="Open Web Application Security Project",
|
||||||
aria-label="Open Web Application Security Project"
|
aria-label="Open Web Application Security Project"
|
||||||
|
data-umami-event="Web"
|
||||||
) Web Security (OWASP)
|
) Web Security (OWASP)
|
||||||
// endregion
|
// endregion
|
||||||
// region Tracking
|
// region Tracking
|
||||||
@@ -823,6 +924,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Simple, fast, privacy-focused alternative to Google Analytics",
|
title="Simple, fast, privacy-focused alternative to Google Analytics",
|
||||||
aria-label="Simple, fast, privacy-focused alternative to Google Analytics"
|
aria-label="Simple, fast, privacy-focused alternative to Google Analytics"
|
||||||
|
data-umami-event="Umami"
|
||||||
) Umami
|
) Umami
|
||||||
li
|
li
|
||||||
a.text-nls-orange.transition.underline-offset-2.underline(
|
a.text-nls-orange.transition.underline-offset-2.underline(
|
||||||
@@ -830,6 +932,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Web analytics service offered by Google",
|
title="Web analytics service offered by Google",
|
||||||
aria-label="Web analytics service offered by Google"
|
aria-label="Web analytics service offered by Google"
|
||||||
|
data-umami-event="Google"
|
||||||
) Google Analytics
|
) Google Analytics
|
||||||
li
|
li
|
||||||
a.text-nls-orange.transition.underline-offset-2.underline(
|
a.text-nls-orange.transition.underline-offset-2.underline(
|
||||||
@@ -837,6 +940,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Product analytics platform",
|
title="Product analytics platform",
|
||||||
aria-label="Product analytics platform"
|
aria-label="Product analytics platform"
|
||||||
|
data-umami-event="Amplitude"
|
||||||
) Amplitude
|
) Amplitude
|
||||||
li
|
li
|
||||||
a.text-nls-orange.transition.underline-offset-2.underline(
|
a.text-nls-orange.transition.underline-offset-2.underline(
|
||||||
@@ -844,6 +948,7 @@ section.bg-nls-black.text-white
|
|||||||
class="hover:text-white hover:decoration-2",
|
class="hover:text-white hover:decoration-2",
|
||||||
title="Behavior analytics and user feedback platform",
|
title="Behavior analytics and user feedback platform",
|
||||||
aria-label="Behavior analytics and user feedback platform"
|
aria-label="Behavior analytics and user feedback platform"
|
||||||
|
data-umami-event="Hotjar"
|
||||||
) Hotjar
|
) Hotjar
|
||||||
// endregion
|
// endregion
|
||||||
// endregion
|
// endregion
|
||||||
|
|||||||
Reference in New Issue
Block a user