{"id":1332,"date":"2025-11-27T10:24:17","date_gmt":"2025-11-27T10:24:17","guid":{"rendered":"https:\/\/razvanvancea.ro\/blog\/?p=1332"},"modified":"2025-11-27T11:07:41","modified_gmt":"2025-11-27T11:07:41","slug":"nodejs-v20-added-native-support-for-reading-environment-variables","status":"publish","type":"post","link":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/","title":{"rendered":"NodeJS v20 added native support for reading environment variables"},"content":{"rendered":"<div id=\"bsf_rt_marker\"><\/div>\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"1332\" class=\"elementor elementor-1332\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-76bfac3 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"76bfac3\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1debabf\" data-id=\"1debabf\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1fee831 elementor-widget elementor-widget-text-editor\" data-id=\"1fee831\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv).<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-b62d020 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"b62d020\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-865b657\" data-id=\"865b657\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-64ebe6d elementor-widget elementor-widget-heading\" data-id=\"64ebe6d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">What are environment variables?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e430f7c elementor-widget elementor-widget-text-editor\" data-id=\"e430f7c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Environment variables let you store configuration values <em data-start=\"722\" data-end=\"731\">outside<\/em> your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through process.env<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-d88a9b2 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"d88a9b2\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-433f024\" data-id=\"433f024\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b03448e elementor-widget elementor-widget-image\" data-id=\"b03448e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"640\" height=\"69\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-1024x111.png\" class=\"attachment-large size-large wp-image-1334\" alt=\"process-env-env-var\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-1024x111.png 1024w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-300x33.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-768x84.png 768w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-850x92.png 850w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-24x3.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-36x4.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34-48x5.png 48w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.27.34.png 1030w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9cf886c elementor-widget elementor-widget-heading\" data-id=\"9cf886c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Setting environment variables<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4382b44 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4382b44\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0ebb6ac\" data-id=\"0ebb6ac\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-3ea049d elementor-widget elementor-widget-text-editor\" data-id=\"3ea049d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>You can pass environment variables directly when you run your app in the terminal.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-de39190 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"de39190\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ef5c80f\" data-id=\"ef5c80f\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9f61c4c elementor-widget elementor-widget-image\" data-id=\"9f61c4c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"640\" height=\"72\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-1024x115.png\" class=\"attachment-large size-large wp-image-1335\" alt=\"env-var-cli\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-1024x115.png 1024w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-300x34.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-768x86.png 768w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-1536x172.png 1536w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-850x95.png 850w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-24x3.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-36x4.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02-48x5.png 48w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.28.02.png 1599w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-da662a4 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"da662a4\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-fb29b16\" data-id=\"fb29b16\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c1e80ab elementor-widget elementor-widget-text-editor\" data-id=\"c1e80ab\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>In this example, Node receives <code data-start=\"1278\" data-end=\"1287\">USER_ID<\/code> and <code data-start=\"1292\" data-end=\"1302\">USER_KEY<\/code>, and you can read them using <code data-start=\"1332\" data-end=\"1345\">process.env<\/code> inside your app<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-b298bb4 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"b298bb4\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8b588dd\" data-id=\"8b588dd\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5b15fe8 elementor-widget elementor-widget-heading\" data-id=\"5b15fe8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Using .env files<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-06e9f55 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"06e9f55\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-496a1d2\" data-id=\"496a1d2\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bae5d31 elementor-widget elementor-widget-text-editor\" data-id=\"bae5d31\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Starting from Node.js 20, there\u2019s <em data-start=\"1481\" data-end=\"1512\">built-in experimental support<\/em> for <code data-start=\"1517\" data-end=\"1523\">.env<\/code> files &#8211; no external libraries needed.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-baeaf32 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"baeaf32\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-063ca9e\" data-id=\"063ca9e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6a08355 elementor-widget elementor-widget-image\" data-id=\"6a08355\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"640\" height=\"79\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38.png\" class=\"attachment-large size-large wp-image-1336\" alt=\"\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38.png 934w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38-300x37.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38-768x95.png 768w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38-850x105.png 850w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38-24x3.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38-36x4.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.29.38-48x6.png 48w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1d67e82 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1d67e82\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e0ab297\" data-id=\"e0ab297\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b17d140 elementor-widget elementor-widget-text-editor\" data-id=\"b17d140\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<pre>To load this file, run Node with --env-file flag<\/pre>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-10896f7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"10896f7\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-56f9a9c\" data-id=\"56f9a9c\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-dd81d0f elementor-widget elementor-widget-image\" data-id=\"dd81d0f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"51\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-1024x81.png\" class=\"attachment-large size-large wp-image-1337\" alt=\"env-file-node\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-1024x81.png 1024w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-300x24.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-768x61.png 768w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-850x67.png 850w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-24x2.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-36x3.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28-48x4.png 48w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.30.28.png 1389w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-209640e elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"209640e\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-72d3cfb\" data-id=\"72d3cfb\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-669a44b elementor-widget elementor-widget-text-editor\" data-id=\"669a44b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>And just like before, you can access the value with<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-2b7a34b elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"2b7a34b\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-96293c6\" data-id=\"96293c6\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-dac3e2f elementor-widget elementor-widget-image\" data-id=\"dac3e2f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"559\" height=\"38\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.31.36.png\" class=\"attachment-large size-large wp-image-1338\" alt=\"\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.31.36.png 559w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.31.36-300x20.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.31.36-24x2.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.31.36-36x2.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.31.36-48x3.png 48w\" sizes=\"(max-width: 559px) 100vw, 559px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-cee95d8 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"cee95d8\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-76890e3\" data-id=\"76890e3\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f5dd50b elementor-widget elementor-widget-text-editor\" data-id=\"f5dd50b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>You can even load multiple .env files<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-bb18f3a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"bb18f3a\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1eb2fe7\" data-id=\"1eb2fe7\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-404b5c0 elementor-widget elementor-widget-image\" data-id=\"404b5c0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"25\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-1024x40.png\" class=\"attachment-large size-large wp-image-1339\" alt=\"\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-1024x40.png 1024w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-300x12.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-768x30.png 768w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-1536x60.png 1536w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-850x33.png 850w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-24x1.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-36x1.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48-48x2.png 48w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.32.48.png 1621w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5a8a9e0 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5a8a9e0\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a045a59\" data-id=\"a045a59\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-23db40f elementor-widget elementor-widget-text-editor\" data-id=\"23db40f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If you want Node to load a <code data-start=\"2361\" data-end=\"2367\">.env<\/code> file only if it exists, without throwing an error, use<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-47985fc elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"47985fc\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2f5a3de\" data-id=\"2f5a3de\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7048210 elementor-widget elementor-widget-image\" data-id=\"7048210\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"167\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-1024x267.png\" class=\"attachment-large size-large wp-image-1340\" alt=\"\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-1024x267.png 1024w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-300x78.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-768x200.png 768w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-850x221.png 850w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-24x6.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-36x9.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32-48x12.png 48w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.33.32.png 1529w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-c60610b elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"c60610b\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-cee24eb\" data-id=\"cee24eb\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-80ec4eb elementor-widget elementor-widget-heading\" data-id=\"80ec4eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Loading .env Programatically<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-42c645a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"42c645a\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d23353e\" data-id=\"d23353e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-287adf8 elementor-widget elementor-widget-text-editor\" data-id=\"287adf8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>You can also load <code data-start=\"2599\" data-end=\"2605\">.env<\/code> files directly from your code using <code data-start=\"2642\" data-end=\"2665\">process.loadEnvFile()<\/code>\u00a0 &#8211; no command-line flags needed.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-b0e59d7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"b0e59d7\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1c2b382\" data-id=\"1c2b382\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-0e9d30b elementor-widget elementor-widget-image\" data-id=\"0e9d30b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"215\" src=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-1024x344.png\" class=\"attachment-large size-large wp-image-1341\" alt=\"env-programatic\" srcset=\"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-1024x344.png 1024w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-300x101.png 300w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-768x258.png 768w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-850x286.png 850w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-24x8.png 24w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-36x12.png 36w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53-48x16.png 48w, https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-12.34.53.png 1035w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-3de6422 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"3de6422\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-4cdf442\" data-id=\"4cdf442\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-511d748 elementor-widget elementor-widget-text-editor\" data-id=\"511d748\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<pre>This works just like using the <code data-start=\"2841\" data-end=\"2853\">--env-file<\/code> flag, but you trigger it inside your script.<\/pre>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ebeff28 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ebeff28\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-73efa91\" data-id=\"73efa91\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c500136 elementor-widget elementor-widget-video\" data-id=\"c500136\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;youtube_url&quot;:&quot;https:\\\/\\\/www.youtube.com\\\/watch?v=dFpopF7hcvQ&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}\" data-widget_type=\"video.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-wrapper elementor-open-inline\">\n\t\t\t<div class=\"elementor-video\"><\/div>\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-72d13c9 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"72d13c9\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c584dfe\" data-id=\"c584dfe\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-07d054f elementor-widget elementor-widget-spacer\" data-id=\"07d054f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-6c72cb4 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"6c72cb4\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-07e5014\" data-id=\"07e5014\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e7553ed elementor-widget elementor-widget-text-editor\" data-id=\"e7553ed\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Enjoyed this article? Make sure to subscribe to my\u00a0<em><a href=\"https:\/\/www.youtube.com\/@LearnwithRV\" target=\"_blank\" rel=\"noopener\">YouTube Channel<\/a><\/em>\u00a0for more Test Automation tutorials, and follow me on\u00a0<a href=\"https:\/\/www.linkedin.com\/in\/razvanvancea\/\" target=\"_blank\" rel=\"noopener\"><em>LinkedIn<\/em><\/a>\u00a0and\u00a0<em><a href=\"https:\/\/twitter.com\/razvanvancea\" target=\"_blank\" rel=\"noopener\">Twitter<\/a><\/em>\u00a0for regular insights.<span style=\"font-weight: bold;\"><br \/>Looking to improve your test automation skills?<br \/><\/span>I&#8217;ve created a<span style=\"font-weight: bold;\">\u00a0personalized 1-on-1 Mentoring program\u00a0<\/span>refined to<span style=\"font-weight: bold;\">\u00a0boost YOUR CURRENT skills.\u00a0<\/span>Reach out at\u00a0<a rel=\"noopener\">iamrv@razvanvancea.ro<\/a>\u00a0for more details and\u00a0<span style=\"font-weight: bold;\">together\u00a0<\/span>will create a<span style=\"font-weight: bold;\">\u00a0learning path\u00a0<\/span>adapted to\u00a0<span style=\"font-weight: bold;\">your skills and goals\u00a0<\/span>that you are aiming for<span style=\"font-weight: bold;\">,<\/span>\u00a0in a<span style=\"font-weight: bold;\">\u00a0timely-efficient manner\ud83d\ude80<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Starting with NodeJS v20, there is an experimental feature that allows us using environment variables&#8230;<\/p>\n","protected":false},"author":2,"featured_media":1345,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[10],"tags":[],"class_list":["post-1332","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programming"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Razvan Vancea\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Learn with RV - Tech Blog - #testautomation #qa #programming #linux #devops\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog\" \/>\n\t\t<meta property=\"og:description\" content=\"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-11-27T10:24:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-11-27T11:07:41+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/razvanvancea\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@RazvanVancea\" \/>\n\t\t<meta name=\"twitter:title\" content=\"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@RazvanVancea\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#blogposting\",\"name\":\"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog\",\"headline\":\"NodeJS v20 added native support for reading environment variables\",\"author\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/11\\\/Screenshot-2025-11-27-at-13.05.58.png\",\"width\":791,\"height\":763,\"caption\":\"photo-img-node-vars\"},\"datePublished\":\"2025-11-27T10:24:17+00:00\",\"dateModified\":\"2025-11-27T11:07:41+00:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#webpage\"},\"articleSection\":\"Programming\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/programming\\\/#listItem\",\"name\":\"Programming\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/programming\\\/#listItem\",\"position\":2,\"name\":\"Programming\",\"item\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/programming\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#listItem\",\"name\":\"NodeJS v20 added native support for reading environment variables\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#listItem\",\"position\":3,\"name\":\"NodeJS v20 added native support for reading environment variables\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/category\\\/programming\\\/#listItem\",\"name\":\"Programming\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#person\",\"name\":\"RV\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#personImage\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/91ce41471f9ba5f15b3ef99e7deed87c.jpg?ver=1785997097\",\"width\":96,\"height\":96,\"caption\":\"RV\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/razvanvancea\\\/\",\"https:\\\/\\\/twitter.com\\\/RazvanVancea\",\"https:\\\/\\\/www.youtube.com\\\/@LearnwithRV\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/razvanvancea\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/\",\"name\":\"Razvan Vancea\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#authorImage\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/356548feb901191539c03dd4a0498f58.jpg?ver=1785997099\",\"width\":96,\"height\":96,\"caption\":\"Razvan Vancea\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#webpage\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/\",\"name\":\"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog\",\"description\":\"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\\u2019re all available through\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/author\\\/iamrv\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/11\\\/Screenshot-2025-11-27-at-13.05.58.png\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#mainImage\",\"width\":791,\"height\":763,\"caption\":\"photo-img-node-vars\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/2025\\\/11\\\/27\\\/nodejs-v20-added-native-support-for-reading-environment-variables\\\/#mainImage\"},\"datePublished\":\"2025-11-27T10:24:17+00:00\",\"dateModified\":\"2025-11-27T11:07:41+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/\",\"name\":\"Learn with RV - Tech Blog\",\"description\":\"#testautomation #qa #programming #linux #devops\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/razvanvancea.ro\\\/blog\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog","description":"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through","canonical_url":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#blogposting","name":"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog","headline":"NodeJS v20 added native support for reading environment variables","author":{"@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author"},"publisher":{"@id":"https:\/\/razvanvancea.ro\/blog\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-13.05.58.png","width":791,"height":763,"caption":"photo-img-node-vars"},"datePublished":"2025-11-27T10:24:17+00:00","dateModified":"2025-11-27T11:07:41+00:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#webpage"},"isPartOf":{"@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#webpage"},"articleSection":"Programming"},{"@type":"BreadcrumbList","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog#listItem","position":1,"name":"Home","item":"https:\/\/razvanvancea.ro\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/category\/programming\/#listItem","name":"Programming"}},{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/category\/programming\/#listItem","position":2,"name":"Programming","item":"https:\/\/razvanvancea.ro\/blog\/category\/programming\/","nextItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#listItem","name":"NodeJS v20 added native support for reading environment variables"},"previousItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#listItem","position":3,"name":"NodeJS v20 added native support for reading environment variables","previousItem":{"@type":"ListItem","@id":"https:\/\/razvanvancea.ro\/blog\/category\/programming\/#listItem","name":"Programming"}}]},{"@type":"Person","@id":"https:\/\/razvanvancea.ro\/blog\/#person","name":"RV","image":{"@type":"ImageObject","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#personImage","url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/litespeed\/avatar\/91ce41471f9ba5f15b3ef99e7deed87c.jpg?ver=1785997097","width":96,"height":96,"caption":"RV"},"sameAs":["https:\/\/www.facebook.com\/razvanvancea\/","https:\/\/twitter.com\/RazvanVancea","https:\/\/www.youtube.com\/@LearnwithRV","https:\/\/www.linkedin.com\/in\/razvanvancea"]},{"@type":"Person","@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author","url":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/","name":"Razvan Vancea","image":{"@type":"ImageObject","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#authorImage","url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/litespeed\/avatar\/356548feb901191539c03dd4a0498f58.jpg?ver=1785997099","width":96,"height":96,"caption":"Razvan Vancea"}},{"@type":"WebPage","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#webpage","url":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/","name":"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog","description":"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/razvanvancea.ro\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#breadcrumblist"},"author":{"@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author"},"creator":{"@id":"https:\/\/razvanvancea.ro\/blog\/author\/iamrv\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-13.05.58.png","@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#mainImage","width":791,"height":763,"caption":"photo-img-node-vars"},"primaryImageOfPage":{"@id":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/#mainImage"},"datePublished":"2025-11-27T10:24:17+00:00","dateModified":"2025-11-27T11:07:41+00:00"},{"@type":"WebSite","@id":"https:\/\/razvanvancea.ro\/blog\/#website","url":"https:\/\/razvanvancea.ro\/blog\/","name":"Learn with RV - Tech Blog","description":"#testautomation #qa #programming #linux #devops","inLanguage":"en-US","publisher":{"@id":"https:\/\/razvanvancea.ro\/blog\/#person"}}]},"og:locale":"en_US","og:site_name":"Learn with RV - Tech Blog - #testautomation #qa #programming #linux #devops","og:type":"article","og:title":"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog","og:description":"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through","og:url":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/","article:published_time":"2025-11-27T10:24:17+00:00","article:modified_time":"2025-11-27T11:07:41+00:00","article:publisher":"https:\/\/www.facebook.com\/razvanvancea","twitter:card":"summary_large_image","twitter:site":"@RazvanVancea","twitter:title":"NodeJS v20 added native support for reading environment variables - Learn with RV - Tech Blog","twitter:description":"Starting with NodeJS v20, there is an experimental feature that allows us using environment variables natively in nodejs applications, without needing to install additional packages (e.g. dotenv). What are environment variables? Environment variables let you store configuration values outside your code. Things like API keys, ports, and database URLs. In Node.js, they\u2019re all available through","twitter:creator":"@RazvanVancea"},"aioseo_meta_data":{"post_id":"1332","title":null,"description":null,"keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"titles":[],"descriptions":[],"socialPosts":{"email":[],"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2025-11-27 10:24:17","updated":"2025-11-27 11:12:31","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/razvanvancea.ro\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/razvanvancea.ro\/blog\/category\/programming\/\" title=\"Programming\">Programming<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tNodeJS v20 added native support for reading environment variables\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/razvanvancea.ro\/blog"},{"label":"Programming","link":"https:\/\/razvanvancea.ro\/blog\/category\/programming\/"},{"label":"NodeJS v20 added native support for reading environment variables","link":"https:\/\/razvanvancea.ro\/blog\/2025\/11\/27\/nodejs-v20-added-native-support-for-reading-environment-variables\/"}],"jetpack_featured_media_url":"https:\/\/razvanvancea.ro\/blog\/wp-content\/uploads\/2025\/11\/Screenshot-2025-11-27-at-13.05.58.png","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts\/1332","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/comments?post=1332"}],"version-history":[{"count":7,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts\/1332\/revisions"}],"predecessor-version":[{"id":1348,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/posts\/1332\/revisions\/1348"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/media\/1345"}],"wp:attachment":[{"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/media?parent=1332"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/categories?post=1332"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/razvanvancea.ro\/blog\/wp-json\/wp\/v2\/tags?post=1332"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}