<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Kristiyan Velkov</title>
    <description>The latest articles on DEV Community by Kristiyan Velkov (@kristiyanvelkov).</description>
    <link>https://dev.to/kristiyanvelkov</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F975859%2Fbbea00d0-837b-43f0-889d-76d221499235.jpeg</url>
      <title>DEV Community: Kristiyan Velkov</title>
      <link>https://dev.to/kristiyanvelkov</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kristiyanvelkov"/>
    <language>en</language>
    <item>
      <title>My Docker examples are now part of the official Next.js Documentation</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Wed, 04 Mar 2026 07:14:58 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/my-docker-examples-are-now-part-of-the-official-nextjs-documentation-3kbg</link>
      <guid>https://dev.to/kristiyanvelkov/my-docker-examples-are-now-part-of-the-official-nextjs-documentation-3kbg</guid>
      <description>&lt;p&gt;I've always believed in the power of open source. Many of the tools we use every day exist because developers choose to share their work with the world. Being able to contribute back is something I value deeply.&lt;br&gt;
Today, I'm happy to share that my Docker examples for containerizing Next.js applications were merged into the official Next.js repository and part of official Next.js documentation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiya2pe88ec122rteycmw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiya2pe88ec122rteycmw.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;👉 PR: &lt;a href="https://github.com/vercel/next.js/pull/87069" rel="noopener noreferrer"&gt;https://github.com/vercel/next.js/pull/87069&lt;/a&gt;&lt;br&gt;
These examples demonstrate production-grade best practices for running Next.js with Docker, helping developers build reliable and scalable deployments.&lt;/p&gt;




&lt;p&gt;These examples demonstrate production-grade best practices for running Next.js with Docker, helping developers build reliable and scalable deployments.&lt;br&gt;
Contributing to ecosystems like Docker and Vercel is incredibly rewarding, and I'm proud that my work can help developers ship better systems&lt;br&gt;
If you like what I'm doing consider giving me a ⭐️ in github.com and support me → &lt;a href="https://github.com/kristiyan-velkov" rel="noopener noreferrer"&gt;https://github.com/kristiyan-velkov&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;What Was Added&lt;br&gt;
Two comprehensive Docker examples are now part of the Next.js repo:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;with-docker (Modernized)
This example was completely modernized and now reflects how real Next.js applications should be built and deployed in 2026.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Key Improvements:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Uses App Router&lt;/li&gt;
&lt;li&gt;Fully written in TypeScript&lt;/li&gt;
&lt;li&gt;Styled with Tailwind CSS v4&lt;/li&gt;
&lt;li&gt;Multi-stage Docker builds&lt;/li&gt;
&lt;li&gt;Node.js and Bun runtime options&lt;/li&gt;
&lt;li&gt;Docker Compose with profiles&lt;/li&gt;
&lt;li&gt;BuildKit cache mounts&lt;/li&gt;
&lt;li&gt;Production-grade documentation&lt;/li&gt;
&lt;li&gt;Security hardening with non-root users&lt;/li&gt;
&lt;li&gt;Clear explanation of Node.js image choices (Slim vs Alpine)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It replaces and absorbs the old with-docker-standalone-output example.&lt;/p&gt;

&lt;p&gt;This is no longer a minimal demo. It is a reference architecture.&lt;br&gt;
🔗 Link to documentation: &lt;a href="https://nextjs.org/docs/app/getting-started/deploying" rel="noopener noreferrer"&gt;https://nextjs.org/docs/app/getting-started/deploying&lt;/a&gt;&lt;/p&gt;




&lt;ol&gt;
&lt;li&gt;with-docker-export-output (New)
This example demonstrates a different deployment strategy:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Using:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;output: "export" to generate a fully static site.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;It provides two production-ready serving options:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Option A - Nginx (Production-grade)&lt;/li&gt;
&lt;li&gt;Uses nginxinc/nginx-unprivileged&lt;/li&gt;
&lt;li&gt;Optimized nginx.conf&lt;/li&gt;
&lt;li&gt;Gzip compression&lt;/li&gt;
&lt;li&gt;Proper caching headers&lt;/li&gt;
&lt;li&gt;Security-focused configuration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Option B - Node.js serve with serve npm package&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Simpler setup&lt;/li&gt;
&lt;li&gt;Node-based serving&lt;/li&gt;
&lt;li&gt;Ideal for lightweight deployments&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Both include:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Multi-stage builds&lt;/li&gt;
&lt;li&gt;BuildKit cache mounts&lt;/li&gt;
&lt;li&gt;Docker Compose profiles&lt;/li&gt;
&lt;li&gt;Detailed documentation explaining trade-offs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔗 Link to documentation: &lt;a href="https://nextjs.org/docs/app/getting-started/deploying" rel="noopener noreferrer"&gt;https://nextjs.org/docs/app/getting-started/deploying&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Contributing to the Next.js ecosystem and seeing these Docker examples become part of the official repository is a meaningful milestone for me. I'm a person behind many Docker sample guides including React.js, Angular, Vue.js , Node.js and more.&lt;br&gt;
My goal with these examples was simple: to bring the gap between front-end developer and DevOps.&lt;/p&gt;

&lt;p&gt;If you enjoy this kind of work, consider supporting it. Give a ⭐ on GitHub and check out my latest book for developers who want to master Docker in modern front-end environments.&lt;/p&gt;

&lt;p&gt;If you want to learn more about Docker journey take a look the latest blog post in Docker -&amp;gt; &lt;a href="https://www.docker.com/blog/from-the-captains-chair-kristiyan-velkov" rel="noopener noreferrer"&gt;https://www.docker.com/blog/from-the-captains-chair-kristiyan-velkov&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Buy my new book
&lt;/h2&gt;

&lt;p&gt;Learn Docker directly from person who contribute to Docker and Next.js via examples and knowledge.&lt;/p&gt;

&lt;p&gt;If you're serious about mastering Docker as a front-end developer, understanding Docker Engine is non-negotiable. He we cover just 5% of what you can learn from my book for Docker Engine.&lt;br&gt;
Grab my book and build real production knowledge! Stop be the developer who don't know Docker!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F91batz2uzceacvyy7uz6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F91batz2uzceacvyy7uz6.png" alt=" " width="720" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Grab my book today and I will teach you everything you need to know about Docker! 🎁 20% discount code for you: DOCKER20&lt;br&gt;
Book website -&amp;gt; &lt;a href="//www.dockerfrontend.com"&gt;www.dockerfrontend.com&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;@Copyrights &lt;a href="https://www.linkedin.com/in/kristiyan-velkov-763130b3/" rel="noopener noreferrer"&gt;Kristiyan Velkov&lt;/a&gt; | 2026&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Front-end Developers don’t know Docker! Let’s fix that!</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Mon, 09 Feb 2026 07:54:40 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/front-end-developers-dont-know-docker-lets-fix-that-6a1</link>
      <guid>https://dev.to/kristiyanvelkov/front-end-developers-dont-know-docker-lets-fix-that-6a1</guid>
      <description>&lt;p&gt;Hello everyone! My name is Kristiyan Velkov, and I’m passionate about Front-end development and DevOps.&lt;/p&gt;

&lt;p&gt;These days, many job postings expect developers to have basic Docker skills. That’s fair.&lt;br&gt;
But here’s the real question: where do you actually learn Docker as a front-end developer?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx1rgoww1va4rdf7ekq6x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx1rgoww1va4rdf7ekq6x.png" alt=" " width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Most Docker resources are either:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;too generic&lt;/li&gt;
&lt;li&gt;too backend-focused&lt;/li&gt;
&lt;li&gt;or assume DevOps experience from day one&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are very few materials that explain Docker through real front-end use cases — how to containerize React, Angular, or Vue apps, how builds work, how environments differ, and how your code actually reaches production.&lt;/p&gt;

&lt;p&gt;That gap is exactly what motivated me to focus on Docker from a front-end perspective. Learn Docker, use github actions, deploy your React.js application to AWS. 450 pages explaining everything you need to know about Docker to shine.&lt;/p&gt;

&lt;p&gt;This book changes that, because I know your pain! I was there!&lt;br&gt;
Written by a Docker Captain with 11+ years of experience in Front-end and DevOps. Author behind the official Docker guides for React, Angular, Vue.js, Node.js, and more.&lt;/p&gt;

&lt;p&gt;📘 Full Table of Contents: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.dockerfrontend.com/#table-of-contents" rel="noopener noreferrer"&gt;https://www.dockerfrontend.com/#table-of-contents&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Get the Book with 20% discount!&lt;/p&gt;

&lt;p&gt;🎉 &lt;a href="https://www.dockerfrontend.com/" rel="noopener noreferrer"&gt;https://www.dockerfrontend.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The “It Works on My Machine” excuse ends today.&lt;/p&gt;

&lt;p&gt;©2026 Kristiyan Velkov. All rights reserved.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Dockerize a TanStack Start React app step by step for production</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Tue, 27 Jan 2026 10:06:30 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/how-to-dockerize-a-tanstack-start-react-app-step-by-step-for-production-2l93</link>
      <guid>https://dev.to/kristiyanvelkov/how-to-dockerize-a-tanstack-start-react-app-step-by-step-for-production-2l93</guid>
      <description>&lt;p&gt;Many of you asked me how to &lt;strong&gt;Dockerize TanStack Start applications&lt;/strong&gt; properly, so I finally sat down and wrote a complete, hands-on guide based on real-world experience. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvayxhocpbs8bm7swryof.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvayxhocpbs8bm7swryof.png" alt=" " width="800" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📦 In this article, you’ll learn:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;How to Dockerize a TanStack Start React app step by step&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The most common mistakes developers make (and how to avoid them)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Production-ready patterns that actually scale 🚀&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clean, maintainable Docker setups for modern React apps&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔗 &lt;a href="https://frontendworld.substack.com/p/the-complete-guide-to-dockerizing" rel="noopener noreferrer"&gt;Front-end World&lt;/a&gt;&lt;br&gt;
🔗 &lt;a href="https://kristiyanvelkov.medium.com/the-complete-guide-to-dockerizing-tanstack-start-applications-c43d62edb9b3" rel="noopener noreferrer"&gt;Medium:&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  ReactJS #Docker #TanStack #Frontend #WebDevelopment #DevOps #JavaScript
&lt;/h1&gt;

</description>
      <category>react</category>
      <category>docker</category>
      <category>programming</category>
      <category>code</category>
    </item>
    <item>
      <title>Angular version 21 — Everything you need to know</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Fri, 21 Nov 2025 05:50:00 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/angular-version-21-everything-you-need-to-know-45b9</link>
      <guid>https://dev.to/kristiyanvelkov/angular-version-21-everything-you-need-to-know-45b9</guid>
      <description>&lt;h2&gt;
  
  
  1. Signal Forms (Experimental) - Finally, Reactive Forms Done Right
&lt;/h2&gt;

&lt;p&gt;Forms have always been a pain point. Angular 21 answers that with Signal Forms, a new experimental API built directly on top of Signals.&lt;br&gt;
You define your form with a signal. Angular automatically syncs between the UI and your model - with full type-safety and clean validation.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { form, Field } from '@angular/forms/signals';

@Component({
    imports: [Field],
    template: `
        Email: &amp;lt;input [field]="loginForm.email"&amp;gt;
        Password: &amp;lt;input [field]="loginForm.password"&amp;gt;
    `
})

export class LoginForm {
    login = signal({
        email: '',
        password: '',
    });

    loginForm = form(this.login);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;🔗 Learn more: &lt;a href="https://angular.dev/essentials/signal-forms" rel="noopener noreferrer"&gt;https://angular.dev/essentials/signal-forms&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Signal Forms are still experimental, but they're powerful - and they'll likely become the future of Angular forms.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Angular Aria (Developer Preview) - Headless, Accessible UI Components
&lt;/h2&gt;

&lt;p&gt;Angular now ships with Angular Aria, a headless UI library focused entirely on accessibility.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Angular Aria ?&lt;/strong&gt;&lt;br&gt;
Angular Aria is a collection of headless, accessible directives that implement common WAI-ARIA patterns. The directives handle keyboard interactions, ARIA attributes, focus management, and screen reader support. All you have to do is provide the HTML structure, CSS styling, and business logic!&lt;/p&gt;

&lt;p&gt;The initial release includes 8 patterns - Accordion, Combobox, Grid, Listbox, Menu, Tabs, Toolbar, Tree - totaling 13 components.&lt;/p&gt;

&lt;p&gt;This gives developers full flexibility while following WCAG-compliant patterns out of the box.&lt;/p&gt;

&lt;p&gt;🔗 Learn more: &lt;a href="https://angular.dev/guide/aria/overview" rel="noopener noreferrer"&gt;https://angular.dev/guide/aria/overview&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  3. MCP Server Goes Stable - AI-Ready Angular Development
&lt;/h2&gt;

&lt;p&gt;Angular wants to play nicely with AI agents, so the MCP (Model Context Protocol) server is now stable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It gives your AI tools access to:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Angular best practices&lt;/li&gt;
&lt;li&gt;Workspace project discovery&lt;/li&gt;
&lt;li&gt;Documentation search&lt;/li&gt;
&lt;li&gt;Modern examples&lt;/li&gt;
&lt;li&gt;Zoneless + OnPush migration planning&lt;/li&gt;
&lt;li&gt;Interactive AI tutor for learning Angular&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔗 Learn more: &lt;a href="https://angular.dev/ai/mcp" rel="noopener noreferrer"&gt;https://angular.dev/ai/mcp&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This closes the knowledge-cutoff gap - meaning AI can assist with brand-new Angular features like Signals, Signal Forms, and Angular Aria from day one.&lt;/p&gt;


&lt;h2&gt;
  
  
  4. Vitest Is Now the Default Test Runner
&lt;/h2&gt;

&lt;p&gt;Angular 21 makes Vitest the default and stable test runner. Personally my favorite think in the release. &lt;/p&gt;

&lt;p&gt;Faster startup, instant watch mode, better DX.If you're on an older Angular project, there's an experimental migration:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ng g @schematics/angular:refactor-jasmine-vitest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Jest and Web Test Runner support have been deprecated and will be removed in v22.&lt;/p&gt;

&lt;p&gt;To use Vitest in a new Angular application just run the ng test command. The console output will look like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fazmeg7pt1xpdzrlsyumb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fazmeg7pt1xpdzrlsyumb.png" alt=" " width="700" height="238"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔗 Learn more: &lt;a href="https://angular.dev/guide/testing" rel="noopener noreferrer"&gt;https://angular.dev/guide/testing&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  5. Zoneless Change Detection Is Now the Default
&lt;/h2&gt;

&lt;p&gt;Zone.js is no longer included in new Angular projects. Finnally! &lt;br&gt;
Signals made it unnecessary - and the performance gains speak for themselves.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits include:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Better Core Web Vitals&lt;/li&gt;
&lt;li&gt;Smaller bundles&lt;/li&gt;
&lt;li&gt;No monkey-patching&lt;/li&gt;
&lt;li&gt;Cleaner debugging&lt;/li&gt;
&lt;li&gt;More predictable async behavior&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thousands of production apps (including inside Google) already run zoneless without issues.&lt;/p&gt;

&lt;p&gt;🔗 Learn more: &lt;a href="https://www.npmjs.com/package/zone.js?activeTab=readme" rel="noopener noreferrer"&gt;https://www.npmjs.com/package/zone.js?activeTab=readme&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  6. Documentation Overhaul - With a New AI Section
&lt;/h2&gt;

&lt;p&gt;The Angular team didn't just add features - they rebuilt the doc experience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;New or refreshed guides include:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full routing overhaul&lt;/li&gt;
&lt;li&gt;Improved dependency injection explanations&lt;/li&gt;
&lt;li&gt;Tailwind CSS guide&lt;/li&gt;
&lt;li&gt;Material theming&lt;/li&gt;
&lt;li&gt;A complete Signals tutorial
angular.dev/ai - dedicated AI app development resources&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The docs are now aligned with modern Angular, not the Angular of 2016.&lt;/p&gt;

&lt;p&gt;🔗 Take a look: &lt;a href="https://angular.dev/" rel="noopener noreferrer"&gt;https://angular.dev/&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  7. Regular expressions in templates
&lt;/h2&gt;

&lt;p&gt;Angular now support regular expressions in templates:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@let isValidNumber = /\d+/.test(someValue);
@if (!isValidNumber) {
  &amp;lt;p&amp;gt;{{someValue}} is not a valid number!&amp;lt;/p&amp;gt;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;🔗 Learn more: &lt;a href="https://github.com/angular/angular/pull/63857" rel="noopener noreferrer"&gt;https://github.com/angular/angular/pull/63857&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  8. Other Noteworthy Improvements
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;A few more upgrades worth mentioning:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;(better currency/date formatting)&lt;/li&gt;
&lt;li&gt;New built-in Signals formatter for debugging&lt;/li&gt;
&lt;li&gt;Customizable IntersectionObserver options for &lt;a class="mentioned-user" href="https://dev.to/defer"&gt;@defer&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;SimpleChanges is now generic (finally!)&lt;/li&gt;
&lt;li&gt;Optional keys supported by KeyValue pipe&lt;/li&gt;
&lt;li&gt;New Material Design utility classes as an alternative to CSS variables&lt;/li&gt;
&lt;li&gt;CDK overlays built on native popovers&lt;/li&gt;
&lt;li&gt;Ton of smaller stability, performance, and accessibility improvements&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  A Strong Foundation for the Future
&lt;/h2&gt;

&lt;p&gt;The framework is clearly moving toward a cleaner, signal-driven future with less magic and more control - without abandoning the stability teams rely on.&lt;br&gt;
If you haven't upgraded yet, now's the time.&lt;br&gt;
&lt;strong&gt; Run:&lt;/strong&gt; &lt;code&gt;ng update&lt;/code&gt;&lt;br&gt;
And start building apps your users - and your future self - will appreciate.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;&lt;a href="https://frontendworld.substack.com/" rel="noopener noreferrer"&gt;© 2025 Kristiyan Velkov All rights reserved&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Buy my new book and master the React.js Interviews
&lt;/h2&gt;

&lt;p&gt;After the success of my first book for junior developers - a success I honestly didn't expect - it's time for the next step. This book is written for experienced React developers who are ready to level up and tackle real-world challenges and help you with topics hard to find.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxfaccsxk4v089z2xwn5m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxfaccsxk4v089z2xwn5m.png" alt=" " width="700" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🎁 Buy the book from with 20% Discount (Promo code: PROMO20) 🎁:&lt;br&gt;
My website: &lt;a href="https://kristiyanvelkov.com/b/react-js-interviews" rel="noopener noreferrer"&gt;https://kristiyanvelkov.com/b/react-js-interviews&lt;/a&gt; use PROMO20 for -20% discount.&lt;br&gt;
Leanpub - &lt;a href="https://leanpub.com/mastering-reactjs-interviews/c/promo-20" rel="noopener noreferrer"&gt;https://leanpub.com/mastering-reactjs-interviews/c/promo-20&lt;/a&gt;&lt;/p&gt;

</description>
      <category>angular</category>
      <category>programming</category>
      <category>webdev</category>
      <category>ai</category>
    </item>
    <item>
      <title>Database Selection Guide for Front-End Developers (2025)</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Tue, 30 Sep 2025 07:49:50 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/database-selection-guide-for-front-end-developers-2025-chb</link>
      <guid>https://dev.to/kristiyanvelkov/database-selection-guide-for-front-end-developers-2025-chb</guid>
      <description>&lt;h2&gt;
  
  
  📘 Take a look at my last article and learn what DB to use for your next Front-end project
&lt;/h2&gt;

&lt;p&gt;👉 &lt;a href="https://frontendworld.substack.com/p/database-selection-guide-for-front" rel="noopener noreferrer"&gt;Database Selection Guide for Front-End Developers (2025)&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this guide, I break down the best database choices for modern front-end projects, with a focus on performance ⚡, scalability 📈, and developer experience 💻.&lt;/p&gt;




&lt;p&gt;© 2025 &lt;a href="https://frontendworld.substack.com/" rel="noopener noreferrer"&gt;Kristiyan Velkov&lt;/a&gt; . All rights reserved.&lt;/p&gt;

</description>
      <category>database</category>
      <category>supabase</category>
      <category>frontend</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The Paradox of the Internet PRICE: Easy to Pay for Junk, Hard to Pay for Value</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Wed, 24 Sep 2025 07:31:57 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/the-paradox-of-the-internet-price-easy-to-pay-for-junk-hard-to-pay-for-value-5ci</link>
      <guid>https://dev.to/kristiyanvelkov/the-paradox-of-the-internet-price-easy-to-pay-for-junk-hard-to-pay-for-value-5ci</guid>
      <description>&lt;h2&gt;
  
  
  The Strange Reality of Online Spending
&lt;/h2&gt;

&lt;p&gt;We live in strange times. People swipe their cards every day for things that bring no lasting value — streaming another series they’ll forget in a week, buying overpriced lattes, or paying for digital extras that add nothing to their lives.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnmhkwhwm0jifbqln2pjl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnmhkwhwm0jifbqln2pjl.png" alt=" " width="720" height="764"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But the moment it comes to spending just $5 per month on something that could actually change their career, increase their skills, and even help them earn more money — suddenly it’s “too expensive.”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;That’s the paradox of the internet PRICE!&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  My Perspective as a Blogger
&lt;/h2&gt;

&lt;p&gt;I know this because I’ve been on both sides. As a front-end developer with over a decade of experience, I’ve spent years building real-world applications with React, Next.js, Angular, DevOps and more. Along the way, I started blogging, sharing lessons learned, and helping developers avoid the mistakes I once made.&lt;/p&gt;

&lt;p&gt;Writing online showed me two things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;People crave practical, actionable knowledge.&lt;/li&gt;
&lt;li&gt;Very few are willing to invest even the smallest amount to get some knowledge and many invest in stupid thinks.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Why I Continue Writing Front-end World
&lt;/h2&gt;

&lt;p&gt;I started my newsletter, &lt;a href="https://frontendworld.substack.com/subscribe" rel="noopener noreferrer"&gt;Front-end World&lt;/a&gt;, with one clear goal: to share the practical, real-world knowledge I’ve gained from production projects — knowledge you won’t find in generic tutorials or free blog posts — so you don’t have to struggle the way I once did.&lt;/p&gt;

&lt;p&gt;I’ve spent years building my knowledge as a front-end developer. On top of that, I dedicate countless hours to writing blog posts, creating guides, maintaining open-source projects, and even speaking at conferences — all to share that knowledge with others.&lt;/p&gt;

&lt;p&gt;And all I ask in return is $5 per month.&lt;/p&gt;

&lt;p&gt;Now, let me ask you a question: How much is your time worth per hour?&lt;/p&gt;

&lt;p&gt;For me, the time I spend crafting a blog post comes out to less than $5 an hour. And remember — platform fees take another 15% off that.&lt;/p&gt;

&lt;p&gt;So next time you think $5 per month is “too much,” put yourself in the shoes of the writer. Compare it to the value of your own hour, and you’ll see just how small the investment really is compared to the effort behind it.&lt;/p&gt;




&lt;h2&gt;
  
  
  The $5 Question
&lt;/h2&gt;

&lt;p&gt;Here’s the reality: $5 isn’t much. Most people spend more than that daily on coffee, snacks, or delivery fees without a second thought. Yet, when it comes to investing in themselves, $5 suddenly feels like a “big decision.”&lt;/p&gt;

&lt;p&gt;But let’s put it in perspective:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;$5 on entertainment is gone the same day.&lt;/li&gt;
&lt;li&gt;$5 on growth can translate into $1,000 more in your career.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That’s the mindset shift I continue writing for — to show developers that small, consistent investments in learning can create outsized returns.&lt;/p&gt;




&lt;p&gt;🔥&lt;strong&gt;Support and subscribe&lt;/strong&gt; 🚀&lt;/p&gt;

&lt;p&gt;👉 If you’d like to support me and join Front-end World, you’ll get access to everything new in Front-end and DevOps plus 200+ blog posts filled with practical lessons.&lt;/p&gt;

&lt;p&gt;💡 Right now, you can get $20 off your first year — that’s just $44 for 12 months, which comes out to less than $3.70 per month.&lt;/p&gt;

&lt;p&gt;🔗 &lt;a href="https://frontendworld.substack.com/subscribe?coupon=5fa255b7&amp;amp;group=true&amp;amp;utm_content=174262018" rel="noopener noreferrer"&gt;Subscribe to Front-end World with 20% off here&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Closing Thoughts
&lt;/h2&gt;

&lt;p&gt;If you’re serious about your career as a front-end developer, stop treating learning as an expense and start seeing it as an investment. The paradox of the internet is that people often undervalue the very things that could transform their future, while pouring money into distractions instead of knowledge.&lt;/p&gt;

&lt;p&gt;© 2025 &lt;a href="https://kristiyanvelkov.medium.com/" rel="noopener noreferrer"&gt;Kristiyan Velkov&lt;/a&gt; . All rights reserved.&lt;/p&gt;

</description>
      <category>frontend</category>
      <category>programming</category>
      <category>devops</category>
      <category>webmonetization</category>
    </item>
    <item>
      <title>The Hidden Life of a URL: From Browser to Server and Back</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Tue, 19 Aug 2025 06:10:31 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/the-hidden-life-of-a-url-from-browser-to-server-and-back-2cnn</link>
      <guid>https://dev.to/kristiyanvelkov/the-hidden-life-of-a-url-from-browser-to-server-and-back-2cnn</guid>
      <description>&lt;p&gt;Ever typed a web address, hit Enter, and watched a website appear almost instantly?&lt;br&gt;
It feels like magic — but under the hood, your browser is sprinting through a series of complex steps to make it happen.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7c9op1ijsqtdw73q5m2a.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7c9op1ijsqtdw73q5m2a.webp" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s break down what really happens in that blink of an eye, from the moment you press Enter to the moment the page is ready in front of you.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. DNS Lookup – Finding the Real Address
&lt;/h2&gt;

&lt;p&gt;You typed &lt;a href="https://kristiyanvelkov.com" rel="noopener noreferrer"&gt;https://kristiyanvelkov.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But browsers don’t understand names — they understand IP addresses.&lt;br&gt;
So your browser asks the DNS (Domain Name System): “Where can I find this domain?”&lt;br&gt;
The DNS server responds with something like 192.0.2.1 — the real address of the server hosting your site.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Making the Connection
&lt;/h2&gt;

&lt;p&gt;With the IP in hand, your browser opens a TCP connection to that server.&lt;br&gt;
If the site uses HTTPS (which it should), it also performs a TLS handshake — encrypting your data and securing the connection (that’s the little lock in your browser).&lt;/p&gt;




&lt;h2&gt;
  
  
  ** Read full article: ** : &lt;a href="https://frontendworld.substack.com/p/the-hidden-life-of-a-url-from-browser" rel="noopener noreferrer"&gt;https://frontendworld.substack.com/p/the-hidden-life-of-a-url-from-browser&lt;/a&gt;
&lt;/h2&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>code</category>
      <category>kristiyanvelkov</category>
    </item>
    <item>
      <title>🚀 Docker &amp; AI: A Live Panel with Docker Captains</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Thu, 14 Aug 2025 06:18:08 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/docker-ai-a-live-panel-with-docker-captains-4omg</link>
      <guid>https://dev.to/kristiyanvelkov/docker-ai-a-live-panel-with-docker-captains-4omg</guid>
      <description>&lt;p&gt;On August 14 at 5:00 PM CEST, I’ll be joining an incredible panel of Docker Captains for a live, community-led discussion on how Docker is evolving for the AI era.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6sh26nn46bpv4xrxqltp.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6sh26nn46bpv4xrxqltp.jpeg" alt=" " width="800" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This event, hosted by &lt;a href="https://www.youtube.com/c/FrancescoCiulla" rel="noopener noreferrer"&gt;Francesco Ciulla&lt;/a&gt;, brings together experts from across the globe to explore one of the most exciting frontiers in tech — the intersection of containerization and artificial intelligence.&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 What to Expect
&lt;/h2&gt;

&lt;p&gt;The session will cover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Opportunities &amp;amp; Challenges — How AI is transforming the way we think about containerized development, and the real-world obstacles we need to address.&lt;/li&gt;
&lt;li&gt;Emerging Tools &amp;amp; Best Practices — From lightweight local setups to large-scale AI pipelines, we’ll discuss the tools and workflows that are making a difference.&lt;/li&gt;
&lt;li&gt;Live Q&amp;amp;A — Your chance to ask questions directly to the Captains and join the conversation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🎙️ Meet the Panel
&lt;/h2&gt;

&lt;p&gt;I’m honored to share the virtual stage with:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.linkedin.com/in/kristiyanvelkov/" rel="noopener noreferrer"&gt;Kristiyan Velkov&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/pradumnasaraf/" rel="noopener noreferrer"&gt;Pradumna Saraf&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/timostark/" rel="noopener noreferrer"&gt;Timo Stark&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/jorgearteiro/" rel="noopener noreferrer"&gt;Jorge Arteiro&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/angelborroy/" rel="noopener noreferrer"&gt;Angel Borroy López&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Together, we’ll be diving into how Docker is powering innovation in AI, from development environments to deployment pipelines.&lt;/p&gt;
&lt;h2&gt;
  
  
  📅 Event Details
&lt;/h2&gt;

&lt;p&gt;Date &amp;amp; Time: August 14, 5:00 PM CEST&lt;br&gt;
Watch Live:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://www.youtube.com/watch?v=QUPKu-LZAis
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  🌍 Why This Matters
&lt;/h2&gt;

&lt;p&gt;AI is reshaping industries at an unprecedented pace, and Docker remains one of the most important tools for developers building and deploying these solutions. Whether you’re experimenting with AI locally or orchestrating large-scale deployments, understanding how to integrate Docker into your AI workflow is critical.&lt;/p&gt;

&lt;p&gt;Join us as we discuss how Docker is helping shape the future of AI development — and what that means for developers, businesses, and the broader tech community.&lt;/p&gt;

&lt;h2&gt;
  
  
  Don’t forget to subscribe to Front-end WORLD.
&lt;/h2&gt;

&lt;p&gt;If you enjoy staying up to date with the latest in front-end development, Docker tips, and AI workflows, make sure to subscribe to my newsletter — Front-end World. Every week, I share actionable insights, tools, and techniques to help you stay ahead in the fast-moving world of web development.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Subscribe to Front-end World&lt;/strong&gt;: &lt;a href="https://frontendworld.substack.com/subscribe" rel="noopener noreferrer"&gt;https://frontendworld.substack.com/subscribe&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;JavaScript | TypeScript | React.js | Next.js | Vue.js | Angular | Analog | HTML | CSS | SASS | Tailwind CSS | Docker | DevOPS&lt;/strong&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Introducing Docker Offload</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Thu, 10 Jul 2025 10:17:28 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/introducing-docker-offload-3dgj</link>
      <guid>https://dev.to/kristiyanvelkov/introducing-docker-offload-3dgj</guid>
      <description>&lt;p&gt;&lt;strong&gt;Docker Offload is a fully managed service that lets you execute Docker builds and run containers in the cloud while maintaining your familiar local development experience.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsozj8zzgq4yxq8vn7vzx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsozj8zzgq4yxq8vn7vzx.png" alt=" " width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It provides on-demand cloud infrastructure for fast, consistent builds and compute-intensive workloads like running LLMs, machine learning pipelines, and GPU-accelerated applications.This is ideal if you want to leverage cloud resources or if your local machine doesn't meet the hardware requirements to run the model locally.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why use Docker Offload?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Docker Offload is designed to support modern development teams working across local and cloud environments. It helps you:&lt;/li&gt;
&lt;li&gt;Offload heavy builds and runs to fast, scalable infrastructure&lt;/li&gt;
&lt;li&gt;Accelerate feedback loops in development and testing&lt;/li&gt;
&lt;li&gt;Run containers that require more resources than your local setup can provide&lt;/li&gt;
&lt;li&gt;Use Docker Compose to manage complex, multi-service apps that need cloud resources&lt;/li&gt;
&lt;li&gt;Docker Offload is ideal for high-velocity development workflows that need the flexibility of the cloud without sacrificing the simplicity of local tools.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  How to get started?
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 1: Sign up and subscribe to Docker Offload for access&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;To access Docker Offload, you must sign up and subscribe.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 2: Start Docker Offload&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Start Docker Desktop and sign in with your account.&lt;/p&gt;

&lt;p&gt;Open a terminal and run the following command to start Docker Offload:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ docker offload start&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;When prompted, select your Docker account to use for Docker Offload. This account will consume credits for your Docker Offload usage.&lt;/p&gt;

&lt;p&gt;When prompted, select whether to enable GPU support. If you choose to enable GPU support, Docker Offload will run in an instance with an NVIDIA L4 GPU, which is useful for machine learning or compute-intensive workloads.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbcicc7mvhsy2hvg7bt9u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbcicc7mvhsy2hvg7bt9u.png" alt=" " width="641" height="159"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Enabling GPU support consumes more budget. For more details, see Docker Offload usage.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Run a container with Docker Offload
&lt;/h3&gt;

&lt;p&gt;After starting Docker Offload, Docker Desktop connects to a secure cloud environment that mirrors your local experience. When you run builds or containers, they execute remotely, but behave just like local ones.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo3lliwtxsjez94tdfeo0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo3lliwtxsjez94tdfeo0.png" alt=" " width="692" height="122"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To verify that Docker Offload is working, run a container:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ docker run --rm hello-world
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you enabled GPU support, you can also run a GPU-enabled container:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ docker run --rm --gpus all hello-world
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If Docker Offload is working, you'll see Hello from Docker! in the terminal output.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: Stop Docker Offload
&lt;/h3&gt;

&lt;p&gt;When you're done using Docker Offload, you can stop it. When stopped, you build images and run containers locally.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ docker offload stop
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To start Docker Offload again, run the docker offload start command. That's easy it is!&lt;/p&gt;




&lt;p&gt;Full post: &lt;a href="https://open.substack.com/pub/frontendworld/p/introducing-docker-offload?r=2uxgw9&amp;amp;utm_campaign=post&amp;amp;utm_medium=web&amp;amp;showWelcomeOnShare=true" rel="noopener noreferrer"&gt;https://open.substack.com/pub/frontendworld/p/introducing-docker-offload?r=2uxgw9&amp;amp;utm_campaign=post&amp;amp;utm_medium=web&amp;amp;showWelcomeOnShare=true&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Docker Hardened Images: Secure, Minimal, and Ready for Production</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Mon, 19 May 2025 14:45:16 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/docker-hardened-images-secure-minimal-and-ready-for-production-29b5</link>
      <guid>https://dev.to/kristiyanvelkov/docker-hardened-images-secure-minimal-and-ready-for-production-29b5</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fonlzr19usfiatk82o1a1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fonlzr19usfiatk82o1a1.png" alt="Image description" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From the very beginning, Docker has been dedicated to empowering developers to build, share, and run applications efficiently and securely. With over 14 million container images and more than 11 billion monthly pulls, Docker Hub stands as a global cornerstone in modern software delivery. This reach gives us unmatched insight into the evolving security landscape and the challenges developers face daily.&lt;/p&gt;

&lt;p&gt;Today, we’re doubling down on our commitment to developer-first supply chain security.&lt;/p&gt;

&lt;p&gt;Announcing Docker Hardened Images (DHI)&lt;br&gt;
Docker Hardened Images are a new class of secure-by-default containers — engineered specifically for modern production environments. Unlike generic minimal images, DHI images offer:&lt;/p&gt;

&lt;p&gt;Up to 95% reduction in attack surface&lt;br&gt;
Zero known CVEs, maintained and patched continuously.&lt;br&gt;
Support for popular distros like Alpine and Debian&lt;br&gt;
Seamless integration with your existing workflows and CI/CD tools&lt;br&gt;
From the OS layer up, these images are curated, stripped of risk-prone components, and hardened to deliver the strongest security posture without breaking compatibility.&lt;/p&gt;

&lt;p&gt;Read more: &lt;a href="https://medium.com/docker-world/docker-hardened-images-secure-minimal-and-ready-for-production-115893468543" rel="noopener noreferrer"&gt;https://medium.com/docker-world/docker-hardened-images-secure-minimal-and-ready-for-production-115893468543&lt;/a&gt;&lt;/p&gt;

</description>
      <category>docker</category>
      <category>productivity</category>
      <category>security</category>
      <category>kristiyanvelkov</category>
    </item>
    <item>
      <title>AD0-E128 AEM Sites Developer: How to Learn &amp; Prepare</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Tue, 06 May 2025 08:21:46 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/ad0-e128-aem-sites-developer-how-to-learn-prepare-21hj</link>
      <guid>https://dev.to/kristiyanvelkov/ad0-e128-aem-sites-developer-how-to-learn-prepare-21hj</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fodrotrkkpycjlrb77qb4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fodrotrkkpycjlrb77qb4.png" alt="Image description" width="800" height="452"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;After months of hands-on experience and structured study, I'm proud to announce that I am now officially an Adobe Certified Professional - Adobe Experience Manager Developer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Link:&lt;/strong&gt; &lt;a href="https://certification.adobe.com/credential/verify/64fc82a4-223e-11f0-9883-42010a40002a" rel="noopener noreferrer"&gt;https://certification.adobe.com/credential/verify/64fc82a4-223e-11f0-9883-42010a40002a&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🎯 What Helped Me Pass - Highly Recommended
&lt;/h2&gt;

&lt;p&gt;If you're preparing for this certification or considering it in 2025, I want to share what helped me succeed - and what didn't.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. &lt;a href="https://www.udemy.com/course/aem-sites-developer-professional-ado-e128/?couponCode=ST6MT60525G1" rel="noopener noreferrer"&gt;AEM Sites Developer Professional (AD0-E128)–2025 PREP TESTS on Udemy&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Let me be blunt: this course was gold.&lt;/p&gt;

&lt;p&gt;It's not just a practice quiz. Some of the exact same questions from the official exam were in this course. That's rare, and it made a huge difference. The instructor clearly knows the certification inside out.&lt;/p&gt;

&lt;p&gt;If you're serious about passing - don't think twice. This is the one resource I would recommend above all.&lt;/p&gt;

&lt;p&gt;🔗 Link: &lt;a href="https://www.udemy.com/course/aem-sites-developer-professional-ado-e128/?couponCode=ST6MT60525G1" rel="noopener noreferrer"&gt;https://www.udemy.com/course/aem-sites-developer-professional-ado-e128/?couponCode=ST6MT60525G1&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  2. The Official AEM Documentation
&lt;/h3&gt;

&lt;p&gt;🔗 Link: &lt;a href="https://experienceleague.adobe.com/docs/experience-manager.html" rel="noopener noreferrer"&gt;https://experienceleague.adobe.com/docs/experience-manager.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AEM's documentation is dense - but don't skip it. The exam expects real-world understanding, and the docs are the best way to fill in knowledge gaps. I recommend studying everything in the documentation for AEM, especially this topics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sling Models &amp;amp; HTL integration&lt;/li&gt;
&lt;li&gt;Core components and their extension&lt;/li&gt;
&lt;li&gt;OSGi configurations and annotations&lt;/li&gt;
&lt;li&gt;Dispatcher configuration best practices&lt;/li&gt;
&lt;li&gt;Experience and Content Fragments&lt;/li&gt;
&lt;li&gt;Authentication setups (IMS vs SAML)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What Didn't Help Me Much ?
&lt;/h2&gt;

&lt;p&gt;Adobe offers official training and practice tests - but let me be honest: not a single question from those appeared on my actual exam.&lt;br&gt;
They're useful to understand general concepts and structure. But if you rely solely on that, you'll be underprepared.&lt;/p&gt;




&lt;h2&gt;
  
  
  My Strategy
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Took the Udemy tests - several times.&lt;/li&gt;
&lt;li&gt;Reviewed answers I got wrong. Learned why.&lt;/li&gt;
&lt;li&gt;Went deep into the Adobe docs to fill gaps.&lt;/li&gt;
&lt;li&gt;Took the exam - and passed with confidence.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;If you're aiming for the AD0-E128 certification, know this: it's not about memorizing - it's about understanding how AEM works under the hood. Real-life experience helps, but the right resources make all the difference.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnorqih0hfr1ixxvp9p5i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnorqih0hfr1ixxvp9p5i.png" alt="Image description" width="800" height="452"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💰 Buy now, just for 20$ -&amp;gt; &lt;a href="https://payhip.com/products" rel="noopener noreferrer"&gt;https://payhip.com/products&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;© 2025 &lt;a href="https://www.linkedin.com/in/kristiyanvelkov/" rel="noopener noreferrer"&gt;Kristiyan Velkov&lt;/a&gt;. All rights reserved.&lt;/p&gt;

</description>
      <category>adobe</category>
      <category>adoe128</category>
      <category>aem</category>
      <category>programming</category>
    </item>
    <item>
      <title>My React.js Guide Is Now Officially Part of Docker Documentation</title>
      <dc:creator>Kristiyan Velkov</dc:creator>
      <pubDate>Tue, 29 Apr 2025 07:57:28 +0000</pubDate>
      <link>https://dev.to/kristiyanvelkov/my-reactjs-guide-is-now-officially-part-of-docker-documentation-2416</link>
      <guid>https://dev.to/kristiyanvelkov/my-reactjs-guide-is-now-officially-part-of-docker-documentation-2416</guid>
      <description>&lt;p&gt;My React.js Guide Is Now Officially Part of Docker Documentation&lt;br&gt;
I'm proud to share a milestone that reflects dedication, tradition, and a commitment to quality work: my React.js 19 Docker documentation has been officially added to the Docker Samples.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Link:&lt;/strong&gt; &lt;a href="https://docs.docker.com/guides/reactjs/" rel="noopener noreferrer"&gt;https://docs.docker.com/guides/reactjs/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy84bugxnfko2xlq9ocrz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy84bugxnfko2xlq9ocrz.png" alt="Image description" width="720" height="420"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  What will you learn?
&lt;/h2&gt;

&lt;p&gt;In this guide, you will learn how to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Containerize and run a React.js application using Docker.&lt;/li&gt;
&lt;li&gt;Set up a local development environment for React.js inside a container.&lt;/li&gt;
&lt;li&gt;Run tests for your React.js application within a Docker container.&lt;/li&gt;
&lt;li&gt;Configure a CI/CD pipeline using GitHub Actions for your containerized app.&lt;/li&gt;
&lt;li&gt;Deploy the containerized React.js application to a local Kubernetes cluster for testing and debugging.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To begin, you'll start by containerizing an existing React.js application.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Journey Behind It
&lt;/h2&gt;

&lt;p&gt;For years, Docker has been the bedrock for containerizing applications across industries. React.js, likewise, has become the modern standard for building robust front-end experiences. Seeing a gap in clear, traditional, straightforward documentation for setting up React.js projects with Docker, I decided to step in.&lt;/p&gt;

&lt;p&gt;I crafted a practical guide - not filled with buzzwords, but built the old-fashioned way: clean, tested, proven instructions that developers could trust. No shortcuts. No confusing detours. Just a solid foundation for running React.js apps in Docker containers, based on timeless engineering values: clarity, reliability, and discipline.&lt;/p&gt;




&lt;h2&gt;
  
  
  A Thank You to the Community
&lt;/h2&gt;

&lt;p&gt;This milestone is not the end, but a foundation for the future. I'm deeply grateful to the Docker team and the broader open-source community who understand that timeless principles - like precision, clarity, and consistency - deserve a place even in today's fast-evolving ecosystem.&lt;/p&gt;

&lt;p&gt;If you want to build React.js applications the right way with Docker, you now have an official guide to follow.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;The tools may evolve. The frameworks may change. But the commitment to doing things right - that never goes out of style.&lt;/p&gt;

&lt;p&gt;"Tradition is not the worship of ashes, but the preservation of fire." - Gustav Mahler&lt;/p&gt;

&lt;p&gt;© 2025 &lt;a href="https://www.linkedin.com/in/kristiyanvelkov/" rel="noopener noreferrer"&gt;Kristiyan Velkov&lt;/a&gt;. All rights reserved.&lt;/p&gt;

</description>
      <category>docker</category>
      <category>programming</category>
      <category>devops</category>
      <category>react</category>
    </item>
  </channel>
</rss>
