# .env

.env is a file format for storing environment-variable configuration separately from application code.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## How to Connect Your Twilio Agent to External APIs with PHP

DevFeed: [How to Connect Your Twilio Agent to External APIs with PHP](<https://devfeed.tech/articles/how-to-connect-your-twilio-agent-to-external-apis-with-php-31439.md>)

Original publisher: [Read original article](<https://www.twilio.com/en-us/blog/developers/tutorials/product/how-to-connect-twilio-agent-to-external-apis-php>)

Author: Amanda Lange, Matthew Setter

Published: 2026-09-11T00:00:00Z

Content type: tutorial

Language: en

Sources: [Twilio Blog](<https://devfeed.tech/sources/twilio-blog.md>)

Topics: [PHP](<https://devfeed.tech/topics/php.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [AI Agent](<https://devfeed.tech/topics/ai-agent.md>), [API](<https://devfeed.tech/topics/api.md>), [REST API](<https://devfeed.tech/topics/rest-api.md>), [voice ai](<https://devfeed.tech/topics/voice-ai.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [OpenAI](<https://devfeed.tech/topics/openai.md>), [Composer](<https://devfeed.tech/topics/composer.md>), [ide](<https://devfeed.tech/topics/ide.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [agents](<https://devfeed.tech/tags/agents.md>), [apis](<https://devfeed.tech/tags/apis.md>), [build](<https://devfeed.tech/tags/build.md>), [conversation-relay](<https://devfeed.tech/tags/conversation-relay.md>), [developer-insights](<https://devfeed.tech/tags/developer-insights.md>), [external](<https://devfeed.tech/tags/external.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [openai](<https://devfeed.tech/tags/openai.md>), [openswoole](<https://devfeed.tech/tags/openswoole.md>), [php](<https://devfeed.tech/tags/php.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [voice](<https://devfeed.tech/tags/voice.md>)

### AI overview

This tutorial shows how to use PHP and OpenSwoole with Twilio Conversation Relay to build a voice agent that uses LLM tool calling to retrieve live data from an external REST API. It covers project setup, required packages, and storing an OpenAI API key in a .env file.

### Source excerpt

In this tutorial, you will use PHP and OpenSwoole to build a voice agent using Twilio Conversation Relay.

## Build an AI Voice Assistant with Twilio Voice and Media Streams, OpenAI's GPT-Live API, and Node.js

DevFeed: [Build an AI Voice Assistant with Twilio Voice and Media Streams, OpenAI's GPT-Live API, and Node.js](<https://devfeed.tech/articles/build-an-ai-voice-assistant-with-twilio-voice-and-media-streams-openai-s-gpt-live-api-and-node-js-16093.md>)

Original publisher: [Read original article](<https://www.twilio.com/en-us/blog/developers/tutorials/integrations/voice-ai-assistant-openai-gpt-live-1-node>)

Author: Paul Kamp

Published: 2026-09-10T00:00:00Z

Content type: tutorial

Language: en

Sources: [Twilio Blog](<https://devfeed.tech/sources/twilio-blog.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>), [OpenAI](<https://devfeed.tech/topics/openai.md>), [Streams](<https://devfeed.tech/topics/streams.md>), [API](<https://devfeed.tech/topics/api.md>), [WebSocket](<https://devfeed.tech/topics/websocket.md>), [Fastify](<https://devfeed.tech/topics/fastify.md>), [API keys](<https://devfeed.tech/topics/api-keys.md>), [.env](<https://devfeed.tech/topics/dotenv.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [api](<https://devfeed.tech/tags/api.md>), [audio](<https://devfeed.tech/tags/audio.md>), [developer-insights](<https://devfeed.tech/tags/developer-insights.md>), [env-file-security](<https://devfeed.tech/tags/env-file-security.md>), [js](<https://devfeed.tech/tags/js.md>), [ngrok](<https://devfeed.tech/tags/ngrok.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [openai](<https://devfeed.tech/tags/openai.md>), [sign-up](<https://devfeed.tech/tags/sign-up.md>), [streams](<https://devfeed.tech/tags/streams.md>)

### AI overview

This tutorial explains how to build an AI voice assistant that answers phone calls using Twilio Programmable Voice and Media Streams, OpenAI's GPT-Live-1 API, and a Node.js server. It also covers web search and custom function tool calls.

### Source excerpt

Build an AI voice assistant that answers a phone call with Twilio Programmable Voice and Media Streams, powered by OpenAI's GPT-Live-1.

## How to Confirm Phone Number Ownership with Lookup Identity Match in PHP

DevFeed: [How to Confirm Phone Number Ownership with Lookup Identity Match in PHP](<https://devfeed.tech/articles/how-to-confirm-phone-number-ownership-with-lookup-identity-match-in-php-16101.md>)

Original publisher: [Read original article](<https://www.twilio.com/en-us/blog/developers/tutorials/product/confirm-phone-number-ownership-lookup-identity-match-php>)

Author: Kelley Robinson, Matthew Setter

Published: 2026-08-31T00:00:00Z

Content type: tutorial

Language: en

Sources: [Twilio Blog](<https://devfeed.tech/sources/twilio-blog.md>)

Topics: [PHP](<https://devfeed.tech/topics/php.md>), [API](<https://devfeed.tech/topics/api.md>), [.env](<https://devfeed.tech/topics/dotenv.md>)

Tags: [account](<https://devfeed.tech/tags/account.md>), [and-best-practices](<https://devfeed.tech/tags/and-best-practices.md>), [api](<https://devfeed.tech/tags/api.md>), [code](<https://devfeed.tech/tags/code.md>), [developer-insights](<https://devfeed.tech/tags/developer-insights.md>), [fraud](<https://devfeed.tech/tags/fraud.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [lookup](<https://devfeed.tech/tags/lookup.md>), [php](<https://devfeed.tech/tags/php.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [verification](<https://devfeed.tech/tags/verification.md>), [verify](<https://devfeed.tech/tags/verify.md>), [zero-knowledge](<https://devfeed.tech/tags/zero-knowledge.md>)

### AI overview

This tutorial explains how to use Twilio Lookup Identity Match with PHP to confirm whether details such as a name, address, national ID, or date of birth match a phone number. It covers setup requirements, project configuration, and collecting the information needed for the match.

### Source excerpt

Send details like name, address, or date of birth and the Identity Match API will tell you if they match a provided phone number. Reduce fraud and verify identities quickly in PHP.

## The Pulse: Grok's CLI caught uploading all your local files to the cloud

DevFeed: [The Pulse: Grok's CLI caught uploading all your local files to the cloud](<https://devfeed.tech/articles/the-pulse-grok-s-cli-caught-uploading-all-your-local-files-to-the-cloud-40918.md>)

Original publisher: [Read original article](<https://blog.pragmaticengineer.com/grolk-cli-uploaded-all-your-files-to-the-cloud/>)

Author: Gergely Orosz

Published: 2026-08-19T14:21:33Z

Content type: news

Language: en

Sources: [The Pragmatic Engineer](<https://devfeed.tech/sources/the-pragmatic-engineer-2.md>)

Topics: [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Git](<https://devfeed.tech/topics/git.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Google Cloud Platform (GCP)](<https://devfeed.tech/topics/google-cloud.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [cli](<https://devfeed.tech/tags/cli.md>), [files](<https://devfeed.tech/tags/files.md>), [gcp](<https://devfeed.tech/tags/gcp.md>), [git](<https://devfeed.tech/tags/git.md>), [secret](<https://devfeed.tech/tags/secret.md>)

### AI overview

The article reports claims that the Grok Build coding CLI uploaded local workspace data to cloud storage, including repository contents, Git history, and .env file contents in documented tests.

### Source excerpt

Devs discover that Grok CLI pushed all local files, .env files and git history have been pushed to a GCP bucket, unencrypted. SpaceX's initial reaction? Blame the devs

## Как мы описали 15 000 таблиц за полгода вместо 500 за год -- и перестали писать документацию руками

DevFeed: [Как мы описали 15 000 таблиц за полгода вместо 500 за год -- и перестали писать документацию руками](<https://devfeed.tech/articles/15-000-500-24870.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/yandex/articles/1060882/>)

Author: rgridnev (Яндекс)

Published: 2026-07-29T07:03:01Z

Content type: article

Language: ru

Sources: [Яндекс - Как мы делаем Яндекс / Статьи](<https://devfeed.tech/sources/source.md>)

Topics: [Large Language Model](<https://devfeed.tech/topics/llm.md>), [.env](<https://devfeed.tech/topics/dotenv.md>)

Tags: [dwh](<https://devfeed.tech/tags/dwh.md>), [llm](<https://devfeed.tech/tags/llm.md>), [tag-0d83e6fe8cd5](<https://devfeed.tech/tags/tag-0d83e6fe8cd5.md>), [tag-32a4c9a0ec10](<https://devfeed.tech/tags/tag-32a4c9a0ec10.md>), [tag-61cd5a476b1d](<https://devfeed.tech/tags/tag-61cd5a476b1d.md>), [tag-9d8cf70dc46c](<https://devfeed.tech/tags/tag-9d8cf70dc46c.md>), [tag-dc23c7266507](<https://devfeed.tech/tags/tag-dc23c7266507.md>)

### AI overview

Yandex describes using an LLM to generate draft documentation for data tables, giving analysts a starting point instead of a blank page. Over six months, the approach produced descriptions for 15,000 tables compared with 500 tables documented manually over a year, saving about five years of analyst work. The article also discusses how documentation quality varies across DWH data, analyst data, and raw logs.

### Source excerpt

Годы идут, но что-то остаётся неизменным: писать документацию никто не любит, но тем не менее все почему-то ругают тех, кто её не пишет. В Яндексе одних только таблиц с данными -- десятки миллионов, общим объёмом в экзабайты данных. Даже когда мы оставляем из всего этого количества только самое востребованное, остаётся несколько десятков тысяч таблиц, которые кто-то должен описать словами: что внутри, откуда взялось, можно ли этому доверять. Без таких описаний аналитик не находит данные через поиск, не понимает, что лежит в таблице, и заново собирает то, что уже собрал коллега. И страдает не только человек: ИИ-агенты, которые всё чаще сами решают аналитические задачи, на неописанных данных также теряют в качестве -- чем меньше известно про таблицу, тем хуже результат. Год мы уговаривали людей описывать таблицы вручную -- и собрали описания всего на 500 таблиц из 40 тысяч. Если описывать все данные с такой скоростью (при учёте, что постоянно появляются новые) -- страшно представить, на сколько десятков лет мог бы растянуться этот процесс. Меня зовут Роман Гриднев, я технический менеджер в Яндексе. Расскажу, как мы научились не писать документацию. "Не писать-то все могут", -- скажете вы. Но мы подключили к задаче LLM и дали людям вместо чистого листа черновик: пусть с ошибками, зато не пустую страницу, которая пугает. За полгода мы так описали 15 тысяч таблиц и сэкономили около пяти лет рабочего времени аналитиков. Со временем качество черновиков от LLM доросло до почти полного соответствия описаниям, сделанным людьми. Читать далее

## Building a REST API With Express Framework and MongoDB

DevFeed: [Building a REST API With Express Framework and MongoDB](<https://devfeed.tech/articles/building-a-rest-api-with-express-framework-and-mongodb-21842.md>)

Original publisher: [Read original article](<https://www.thepolyglotdeveloper.com/blog/2026/05/building-a-rest-api-with-express-framework-and-mongodb/>)

Author: Nic Raboy

Published: 2026-05-08T12:00:00Z

Content type: tutorial

Language: en

Sources: [Nic Raboy](<https://devfeed.tech/sources/nic-raboy.md>)

Topics: [Express](<https://devfeed.tech/topics/express.md>), [MongoDB](<https://devfeed.tech/topics/mongodb.md>), [REST API](<https://devfeed.tech/topics/rest-api.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Cross-origin resource sharing (CORS)](<https://devfeed.tech/topics/cors.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [JSON](<https://devfeed.tech/topics/json.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [code](<https://devfeed.tech/tags/code.md>), [cors](<https://devfeed.tech/tags/cors.md>), [database](<https://devfeed.tech/tags/database.md>), [development](<https://devfeed.tech/tags/development.md>), [express](<https://devfeed.tech/tags/express.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [json](<https://devfeed.tech/tags/json.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [nosql](<https://devfeed.tech/tags/nosql.md>), [rest](<https://devfeed.tech/tags/rest.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

A tutorial on building a REST API with Express Framework, MongoDB, and Node.js. It explains how JSON flows between clients, application logic, and MongoDB, then covers prerequisites, dependencies, CORS, environment configuration, and project structure.

### Source excerpt

Almost every modern web application will need a REST API for the frontend to communicate with, and in almost every scenario, that frontend is going to expect to work with JSON data. As a result, the b... The post Building a REST API With Express Framework and MongoDB appeared first on Hevo.

## Validate Environment Variables with Pydantic

DevFeed: [Validate Environment Variables with Pydantic](<https://devfeed.tech/articles/validate-environment-variables-with-pydantic-30865.md>)

Original publisher: [Read original article](<https://www.packetcoders.io/validate-environment-variables-with-pydantic/>)

Author: Rick Donato

Published: 2025-12-02T08:00:19Z

Content type: tutorial

Language: en

Sources: [Packet Coders - Learn Network Automation](<https://devfeed.tech/sources/packet-coders-learn-network-automation.md>)

Topics: [Pydantic](<https://devfeed.tech/topics/pydantic.md>), [Environment Variables](<https://devfeed.tech/topics/environment-variables.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [env-file-security](<https://devfeed.tech/tags/env-file-security.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [python](<https://devfeed.tech/tags/python.md>), [settings](<https://devfeed.tech/tags/settings.md>), [tips](<https://devfeed.tech/tags/tips.md>)

### AI overview

A brief tutorial tip showing how to validate environment variables from .env files with Pydantic before they reach an application. It also notes that this can remove the need to manually call python-dotenv.

### Source excerpt

Tip! Validate your env vars from your .env files before they hit your application by using Pydantic. This also eliminates the need to call python-dotenv manually. Here's an example: # uv add pydantic pydantic-settings python-dotenv from pydantic import Field, AnyHttpUrl, ValidationError from pydantic_settings import BaseSettings,

## Self-Host Your Own Automation Platform with n8n + Docker

DevFeed: [Self-Host Your Own Automation Platform with n8n + Docker](<https://devfeed.tech/articles/self-host-your-own-automation-platform-with-n8n-docker-10609.md>)

Original publisher: [Read original article](<https://technotim.com/posts/n8n-self-hosted/>)

Author: Techno Tim

Published: 2025-07-11T13:00:00Z

Content type: tutorial

Language: en

Sources: [Techno Tim](<https://devfeed.tech/sources/techno-tim.md>)

Topics: [n8n](<https://devfeed.tech/topics/n8n.md>), [Self-hosted](<https://devfeed.tech/topics/self-hosted.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Docker Compose](<https://devfeed.tech/topics/docker-compose.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [workflow automation](<https://devfeed.tech/topics/workflow-automation.md>), [Linux](<https://devfeed.tech/topics/linux.md>)

Tags: [compose](<https://devfeed.tech/tags/compose.md>), [discord](<https://devfeed.tech/tags/discord.md>), [docker](<https://devfeed.tech/tags/docker.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [google](<https://devfeed.tech/tags/google.md>), [linux](<https://devfeed.tech/tags/linux.md>), [n8n](<https://devfeed.tech/tags/n8n.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [workflow-automation](<https://devfeed.tech/tags/workflow-automation.md>)

### AI overview

A tutorial showing how to self-host n8n on Linux with Docker and Docker Compose. It covers environment configuration with a .env file, persistent volumes, optional Traefik integration, startup verification, and building workflows that connect to external services such as Google Sheets and Discord.

### Source excerpt

n8n is a powerful self-hosted workflow automation tool. In this tutorial, I'll show you how to self-host n8n on Linux using Docker. You'll learn how to set up the environment, configure it with a .env file, and build workflows that connect to services like Google Sheets and Discord. We'll start with a simple manual trigger, then create a scheduled workflow, and move on to a more advanced auto...

## Using the 1Password CLI to Manage .env Configuration

DevFeed: [Using the 1Password CLI to Manage .env Configuration](<https://devfeed.tech/articles/op-run-28996.md>)

Original publisher: [Read original article](<https://nshipster.com/1password-cli/>)

Author: Mattt (mattt@nshipster.com)

Published: 2025-01-01T08:00:00Z

Content type: tutorial

Language: en

Sources: [NSHipster](<https://devfeed.tech/sources/nshipster.md>)

Topics: [.env](<https://devfeed.tech/topics/dotenv.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Environment Variables](<https://devfeed.tech/topics/environment-variables.md>), [Development](<https://devfeed.tech/topics/development.md>), [passwords](<https://devfeed.tech/topics/passwords.md>)

Tags: [cli](<https://devfeed.tech/tags/cli.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [development](<https://devfeed.tech/tags/development.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [miscellaneous](<https://devfeed.tech/tags/miscellaneous.md>), [passwords](<https://devfeed.tech/tags/passwords.md>)

### AI overview

This article explains how .env files can create onboarding, multi-environment, and change-tracking problems in development workflows. It introduces the 1Password CLI, or op, as a command-line tool for managing secrets and configuration.

### Source excerpt

.env files can create friction in development workflows -- especially as teams and projects grow over time. If you're feeling this pain, the 1Password CLI (op) might be just what you need.

## Multi-Tenant E-Commerce Architecture with Turso

DevFeed: [Multi-Tenant E-Commerce Architecture with Turso](<https://devfeed.tech/articles/multi-tenant-e-commerce-architecture-with-turso-6007.md>)

Original publisher: [Read original article](<https://turso.tech/blog/multi-tenant-ecommerce-architecture-with-turso>)

Author: Jamie Barton

Published: 2024-11-26T00:00:00Z

Content type: article

Language: en

Sources: [Turso Blog](<https://devfeed.tech/sources/turso-blog.md>)

Topics: [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Multitenancy](<https://devfeed.tech/topics/multitenancy.md>), [Turso](<https://devfeed.tech/topics/turso.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Database](<https://devfeed.tech/topics/database.md>), [Drizzle](<https://devfeed.tech/topics/drizzle.md>), [Vercel](<https://devfeed.tech/topics/vercel.md>), [stripe](<https://devfeed.tech/topics/stripe.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [database](<https://devfeed.tech/tags/database.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [drizzle](<https://devfeed.tech/tags/drizzle.md>), [e-commerce](<https://devfeed.tech/tags/e-commerce.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [schema](<https://devfeed.tech/tags/schema.md>), [stripe](<https://devfeed.tech/tags/stripe.md>), [turso](<https://devfeed.tech/tags/turso.md>), [vercel](<https://devfeed.tech/tags/vercel.md>)

### AI overview

This article presents a multi-tenant e-commerce architecture that uses one codebase for multiple storefronts. Store-specific themes and settings are controlled through environment variables, while each store uses an isolated database and deployment. The approach aims to simplify development and provide a practical balance between tenant separation and scalability, using Turso, Drizzle, Vercel, and dedicated Stripe accounts.

### Source excerpt

Create multiple storefronts using a single codebase while maintaining separation of concerns and scalability.

## Astro 4.10

DevFeed: [Astro 4.10](<https://devfeed.tech/articles/astro-4-10-3189.md>)

Original publisher: [Read original article](<https://astro.build/blog/astro-4100/>)

Author: Matthew Phillips

Published: 2024-06-06T00:00:00Z

Content type: release

Language: en

Sources: [The Astro Blog](<https://devfeed.tech/sources/the-astro-blog.md>)

Topics: [Astro](<https://devfeed.tech/topics/astro.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [astro](<https://devfeed.tech/tags/astro.md>), [cli](<https://devfeed.tech/tags/cli.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [experimental](<https://devfeed.tech/tags/experimental.md>), [http](<https://devfeed.tech/tags/http.md>)

### AI overview

Astro 4.10 introduces experimental type-safe environment variables through the astro:env module and adds enhancements to the Container API and request rewrites. The release also includes broader HTTP-method rewrite support, Astro embedding in server frameworks, and CLI upgrade options.

### Source excerpt

Astro 4.10 is out with experimental type-safe environment variables, as well as enhancements to the Container API and Rewrites.

## Node.js 21.7.0 (Current)

DevFeed: [Node.js 21.7.0 (Current)](<https://devfeed.tech/articles/node-js-21-7-0-current-2752.md>)

Original publisher: [Read original article](<https://nodejs.org/en/blog/release/v21.7.0>)

Published: 2024-03-06T18:38:37Z

Content type: release

Language: en

Sources: [Node.js Blog](<https://devfeed.tech/sources/node-js-blog.md>)

Topics: [Node.js](<https://devfeed.tech/topics/node-js.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [cross-platform](<https://devfeed.tech/topics/cross-platform.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Script](<https://devfeed.tech/topics/script.md>), [Server](<https://devfeed.tech/topics/server.md>), [Web](<https://devfeed.tech/topics/web.md>)

Tags: [command-line](<https://devfeed.tech/tags/command-line.md>), [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [env-file-security](<https://devfeed.tech/tags/env-file-security.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [server](<https://devfeed.tech/tags/server.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

Node.js 21.7.0 is a current release introducing text-formatting functionality, .env file loading and parsing with multiline value support, asset bundling for single-executable applications, VM compilation options, and a one-shot crypto.hash() helper. The release also includes several HTTP/2, build, certificate, and documentation updates.

### Source excerpt

Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts.

## New Year's security resolutions for 2024 from Snyk DevRel, SecRel, and friends

DevFeed: [New Year's security resolutions for 2024 from Snyk DevRel, SecRel, and friends](<https://devfeed.tech/articles/new-year-s-security-resolutions-for-2024-from-snyk-devrel-secrel-and-friends-8031.md>)

Original publisher: [Read original article](<https://snyk.io/blog/new-years-security-resolutions-for-2024/>)

Author: Micah Silverman

Published: 2024-01-18T20:00:00Z

Content type: opinion

Language: en

Sources: [Blog RSS Feed | Snyk](<https://devfeed.tech/sources/blog-rss-feed-snyk.md>)

Topics: [Security](<https://devfeed.tech/topics/security.md>), [Application Security](<https://devfeed.tech/topics/application-security.md>), [snyk-apprisk](<https://devfeed.tech/topics/snyk-apprisk.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [ai security](<https://devfeed.tech/topics/ai-security.md>), [Cryptography](<https://devfeed.tech/topics/cryptography.md>), [Quantum Computing](<https://devfeed.tech/topics/quantum-computing.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-security](<https://devfeed.tech/tags/ai-security.md>), [application-security](<https://devfeed.tech/tags/application-security.md>), [aspm](<https://devfeed.tech/tags/aspm.md>), [blog](<https://devfeed.tech/tags/blog.md>), [ci-cd](<https://devfeed.tech/tags/ci-cd.md>), [devrel](<https://devfeed.tech/tags/devrel.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [env-file-security](<https://devfeed.tech/tags/env-file-security.md>), [passwords](<https://devfeed.tech/tags/passwords.md>), [quantum-computing](<https://devfeed.tech/tags/quantum-computing.md>), [secrel](<https://devfeed.tech/tags/secrel.md>), [secrets](<https://devfeed.tech/tags/secrets.md>), [security](<https://devfeed.tech/tags/security.md>), [snyk](<https://devfeed.tech/tags/snyk.md>), [snyk-platform](<https://devfeed.tech/tags/snyk-platform.md>), [snyk-team](<https://devfeed.tech/tags/snyk-team.md>)

### AI overview

Snyk DevRel, SecRel, and industry security experts share personal and professional security resolutions for 2024. The recommendations cover password-vault hygiene, two-factor authentication, application security, secrets management, automated CI/CD scanning, responsible AI use, AI security training, privacy and ethics, encryption, and awareness of quantum computing.

### Source excerpt

This year, we asked the DevRel and SecRel team at Snyk and security experts from around the industry to drop in their personal and professional New Year's security resolutions for 2024.

## Vercel Integration and Next.js App Router Support

DevFeed: [Vercel Integration and Next.js App Router Support](<https://devfeed.tech/articles/vercel-integration-and-next-js-app-router-support-702.md>)

Original publisher: [Read original article](<https://supabase.com/blog/using-supabase-with-vercel>)

Author: Jonny Summers-Muir; Jon Meyers

Published: 2023-08-10T07:00:00Z

Content type: article

Language: en

Sources: [Supabase Blog](<https://devfeed.tech/sources/supabase-blog.md>)

Topics: [Supabase](<https://devfeed.tech/topics/supabase.md>), [Vercel](<https://devfeed.tech/topics/vercel.md>), [Next.js](<https://devfeed.tech/topics/next-js.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Game Off](<https://devfeed.tech/topics/game-off.md>), [Database](<https://devfeed.tech/topics/database.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>)

Tags: [authentication](<https://devfeed.tech/tags/authentication.md>), [database](<https://devfeed.tech/tags/database.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [monorepo](<https://devfeed.tech/tags/monorepo.md>), [net-11](<https://devfeed.tech/tags/net-11.md>), [next-js](<https://devfeed.tech/tags/next-js.md>), [vercel](<https://devfeed.tech/tags/vercel.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

Supabase describes improvements to its integration with Vercel and Next.js, including streamlined application creation and deployment, monorepo connections, automatic environment-variable and authentication redirect management, starter kits, database migrations, and database branching for preview deployments.

### Source excerpt

Using Supabase with Vercel and Next.js is now a lot easier.

## Vercel setup guide

DevFeed: [Vercel setup guide](<https://devfeed.tech/articles/vercel-setup-guide-6095.md>)

Original publisher: [Read original article](<https://turso.tech/blog/vercel-setup-guide-1c72f65b>)

Author: James Sinkala

Published: 2023-04-11T00:00:00Z

Content type: tutorial

Language: en

Sources: [Turso Blog](<https://devfeed.tech/sources/turso-blog.md>)

Topics: [Vercel](<https://devfeed.tech/topics/vercel.md>), [Turso](<https://devfeed.tech/topics/turso.md>), [libSQL](<https://devfeed.tech/topics/libsql.md>), [Nuxt.js](<https://devfeed.tech/topics/nuxt.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [CI/CD](<https://devfeed.tech/topics/cicd.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [SQL](<https://devfeed.tech/topics/sql.md>)

Tags: [cli](<https://devfeed.tech/tags/cli.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [github](<https://devfeed.tech/tags/github.md>), [guide](<https://devfeed.tech/tags/guide.md>), [libsql](<https://devfeed.tech/tags/libsql.md>), [sql](<https://devfeed.tech/tags/sql.md>), [turso](<https://devfeed.tech/tags/turso.md>), [typescript](<https://devfeed.tech/tags/typescript.md>), [vercel](<https://devfeed.tech/tags/vercel.md>)

### AI overview

A setup guide for deploying a Nuxt web application backed by Turso on Vercel. It covers preparing and seeding the database, configuring environment variables for the libSQL TypeScript client, deploying from GitHub, verifying the deployed app, and enabling continuous deployments.

### Source excerpt

Setup guide for configuring Turso using environment variables in an application deployed to Vercel.

## Netlify setup guide

DevFeed: [Netlify setup guide](<https://devfeed.tech/articles/netlify-setup-guide-6010.md>)

Original publisher: [Read original article](<https://turso.tech/blog/netlify-setup-guide-9f7338fa>)

Author: James Sinkala

Published: 2023-04-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [Turso Blog](<https://devfeed.tech/sources/turso-blog.md>)

Topics: [Netlify](<https://devfeed.tech/topics/netlify.md>), [Turso](<https://devfeed.tech/topics/turso.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [deployment](<https://devfeed.tech/tags/deployment.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [guide](<https://devfeed.tech/tags/guide.md>), [netlify](<https://devfeed.tech/tags/netlify.md>), [turso](<https://devfeed.tech/tags/turso.md>)

### AI overview

A setup guide for configuring Turso with environment variables in an application deployed to Netlify. The article also notes that the referenced Turso version is outdated and directs readers to current Turso resources.

### Source excerpt

Setup guide for configuring Turso using environment variables in an application deployed to Netlify.

## Firebase 2022 Recap!

DevFeed: [Firebase 2022 Recap!](<https://devfeed.tech/articles/firebase-2022-recap-16677.md>)

Original publisher: [Read original article](<https://firebase.blog/recaps/2022>)

Author: David East Developer Advocate Frank van Puffelen Engineer

Published: 2023-02-15T00:00:00Z

Content type: article

Language: en

Sources: [Firebase Blog](<https://devfeed.tech/sources/firebase-blog.md>)

Topics: [Firebase](<https://devfeed.tech/topics/firebase.md>), [Firestore](<https://devfeed.tech/topics/firestore.md>), [Flutter](<https://devfeed.tech/topics/flutter.md>), [Google Cloud Platform (GCP)](<https://devfeed.tech/topics/google-cloud.md>), [Realtime Database](<https://devfeed.tech/topics/realtime-database.md>), [Cloud Functions](<https://devfeed.tech/topics/cloud-functions.md>), [Dart](<https://devfeed.tech/topics/dart.md>), [VPC](<https://devfeed.tech/topics/vpc.md>), [BigQuery](<https://devfeed.tech/topics/bigquery.md>), [.env](<https://devfeed.tech/topics/dotenv.md>)

Tags: [bigquery](<https://devfeed.tech/tags/bigquery.md>), [cloud-functions](<https://devfeed.tech/tags/cloud-functions.md>), [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [dart](<https://devfeed.tech/tags/dart.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [features](<https://devfeed.tech/tags/features.md>), [firebase](<https://devfeed.tech/tags/firebase.md>), [flutter](<https://devfeed.tech/tags/flutter.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [recap](<https://devfeed.tech/tags/recap.md>), [releases](<https://devfeed.tech/tags/releases.md>), [upgrades](<https://devfeed.tech/tags/upgrades.md>)

### AI overview

A recap of Firebase features and improvements released in 2022, including Firestore access through VPC configuration, Flutter configuration in Dart code, Realtime Database iteration, Test Lab result views, Firestore Key Visualizer, and .env and secrets support for Cloud Functions.

### Source excerpt

A giant list off features, upgrades, and other stuff we shipped in 2022!

## An over-engineered Home Lab with Docker and Kubernetes.

DevFeed: [An over-engineered Home Lab with Docker and Kubernetes.](<https://devfeed.tech/articles/an-over-engineered-home-lab-with-docker-and-kubernetes-34673.md>)

Original publisher: [Read original article](<http://fernandocejas.com/blog/engineering/2023-01-06-over-engineered-home-lab-docker-kubernetes/>)

Author: Fernando Cejas (me@fernandocejas.com)

Published: 2023-01-06T00:00:00Z

Content type: article

Language: en

Sources: [Fernando Cejas Blog](<https://devfeed.tech/sources/fernando-cejas-blog.md>)

Topics: [Homelab](<https://devfeed.tech/topics/homelab.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [Network Attached Storage (NAS)](<https://devfeed.tech/topics/network-attached-storage-nas.md>), [Network](<https://devfeed.tech/topics/network.md>), [Security, Privacy and Abuse Prevention](<https://devfeed.tech/topics/security-privacy-and-abuse-prevention.md>), [Virtual Private Network](<https://devfeed.tech/topics/vpn.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [culture](<https://devfeed.tech/tags/culture.md>), [data-privacy](<https://devfeed.tech/tags/data-privacy.md>), [development](<https://devfeed.tech/tags/development.md>), [docker](<https://devfeed.tech/tags/docker.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [home-lab](<https://devfeed.tech/tags/home-lab.md>), [home-server](<https://devfeed.tech/tags/home-server.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [internet](<https://devfeed.tech/tags/internet.md>), [ios](<https://devfeed.tech/tags/ios.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [linux](<https://devfeed.tech/tags/linux.md>), [maintenance](<https://devfeed.tech/tags/maintenance.md>), [network](<https://devfeed.tech/tags/network.md>), [network-attached-storage-nas](<https://devfeed.tech/tags/network-attached-storage-nas.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [openwrt](<https://devfeed.tech/tags/openwrt.md>), [programming](<https://devfeed.tech/tags/programming.md>), [python](<https://devfeed.tech/tags/python.md>), [rust](<https://devfeed.tech/tags/rust.md>), [scala](<https://devfeed.tech/tags/scala.md>), [software](<https://devfeed.tech/tags/software.md>), [software-development](<https://devfeed.tech/tags/software-development.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

A personal account of building a private home lab using two Intel NUC Mini PCs, a modem/router, an OpenWRT router, and a NAS. The article compares Kubernetes and Docker, discusses maintenance and troubleshooting costs, and explains that the author ultimately chose a plain Docker setup.

### Source excerpt

**Setting up a personal Home Lab is not a task for lazy people**: it incurrs a **big cost of maintenance** and **issues arise** even though we might use the **best IT-Infrastructure practices...** but we can always **learn a lot** out of it and make it also **super fun**. In this post I would like to share **my journey** and share some **tips and tricks and issues** I bumped into. **Let's jump in!**

## Encrypt Your Sensitive Information Before Storing It - Encrypting with Mozilla SOPS and AGE

DevFeed: [Encrypt Your Sensitive Information Before Storing It - Encrypting with Mozilla SOPS and AGE](<https://devfeed.tech/articles/encrypt-your-sensitive-information-before-storing-it-encrypting-with-mozilla-sops-and-age-10661.md>)

Original publisher: [Read original article](<https://technotim.com/posts/secret-encryption-sops/>)

Author: Techno Tim

Published: 2022-10-01T14:00:00Z

Content type: tutorial

Language: en

Sources: [Techno Tim](<https://devfeed.tech/sources/techno-tim.md>)

Topics: [Encryption](<https://devfeed.tech/topics/encryption.md>), [Git](<https://devfeed.tech/topics/git.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [JSON](<https://devfeed.tech/topics/json.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [YAML](<https://devfeed.tech/topics/yaml.md>), [kubectl](<https://devfeed.tech/topics/kubectl.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [Azure](<https://devfeed.tech/topics/azure.md>)

Tags: [aws](<https://devfeed.tech/tags/aws.md>), [azure](<https://devfeed.tech/tags/azure.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [env-file-security](<https://devfeed.tech/tags/env-file-security.md>), [format](<https://devfeed.tech/tags/format.md>), [git](<https://devfeed.tech/tags/git.md>), [homelab](<https://devfeed.tech/tags/homelab.md>), [kubectl](<https://devfeed.tech/tags/kubectl.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [other](<https://devfeed.tech/tags/other.md>), [passwords](<https://devfeed.tech/tags/passwords.md>), [secrets](<https://devfeed.tech/tags/secrets.md>), [tokens](<https://devfeed.tech/tags/tokens.md>)

### AI overview

A tutorial on encrypting secrets before committing them to Git repositories using Mozilla SOPS and age. It covers supported file formats, key creation, encryption and decryption workflows, Kubernetes secrets, environment files, VS Code integration, and Flux-based GitOps workflows.

### Source excerpt

Committing secrets to your Git Repo can expose information like passwords, access tokens, and other types of sensitive information.Some might think that committing secrets to a private Git Repo is OK, but I am here to tell you it's not.If you're going to commit secrets to a git repo, private or public, you should encrypt them first using Mozilla SOPS (Secret Operations) and AGE.SOPS is an edito...

## Randomizing MongoDB Document Fields on a Repeating Timer with Node.js

DevFeed: [Randomizing MongoDB Document Fields on a Repeating Timer with Node.js](<https://devfeed.tech/articles/randomizing-mongodb-document-fields-on-a-repeating-timer-with-node-js-21818.md>)

Original publisher: [Read original article](<https://www.thepolyglotdeveloper.com/blog/2022/08/randomizing-mongodb-document-fields-repeating-timer-nodejs/>)

Author: Nic Raboy

Published: 2022-08-12T13:00:00Z

Content type: tutorial

Language: en

Sources: [Nic Raboy](<https://devfeed.tech/sources/nic-raboy.md>)

Topics: [MongoDB](<https://devfeed.tech/topics/mongodb.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Unity](<https://devfeed.tech/topics/unity.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [nosql](<https://devfeed.tech/tags/nosql.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

This tutorial explains how to update MongoDB documents on a repeating timer using Node.js. It presents a standalone example inspired by a MongoDB and Unity game demo, with setup requirements and Node.js project dependency configuration.

### Source excerpt

About a year ago I created a game with MongoDB and Unity and wrote about it in a previous tutorial. The idea was to demonstrate how features within the game could be synchronized to each player in nea... The post Randomizing MongoDB Document Fields on a Repeating Timer with Node.js appeared first on The Polyglot Developer.

## Laravel Forge: Real-Time Deployment Output

DevFeed: [Laravel Forge: Real-Time Deployment Output](<https://devfeed.tech/articles/laravel-forge-real-time-deployment-output-3768.md>)

Original publisher: [Read original article](<https://laravel.com/blog/laravel-forge-realtime-deployment-output>)

Author: James Brooks

Published: 2022-06-10T15:07:00Z

Content type: release

Language: en

Sources: [Laravel Blog](<https://devfeed.tech/sources/laravel-blog.md>)

Topics: [Deployment](<https://devfeed.tech/topics/deployment.md>), [PHP](<https://devfeed.tech/topics/php.md>), [Livewire](<https://devfeed.tech/topics/livewire.md>), [Server](<https://devfeed.tech/topics/server.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>), [Redis](<https://devfeed.tech/topics/redis.md>), [.env](<https://devfeed.tech/topics/dotenv.md>)

Tags: [applications](<https://devfeed.tech/tags/applications.md>), [database](<https://devfeed.tech/tags/database.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [php](<https://devfeed.tech/tags/php.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [redis](<https://devfeed.tech/tags/redis.md>), [servers](<https://devfeed.tech/tags/servers.md>)

### AI overview

Laravel Forge now provides real-time deployment output in the Deployments panel while a site is actively deploying.

### Source excerpt

Today we're pleased to announce that you can now see the real-time output from your deployments as they happen. You can see the live deployment output in the Deployments panel of any site that is actively deploying.

## How Companies Without Racists Perpetuate Racism

DevFeed: [How Companies Without Racists Perpetuate Racism](<https://devfeed.tech/articles/how-companies-without-racists-perpetuate-racism-29672.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/how-companies-without-racists-perpetuate-racism/>)

Author: info@goteleport.com (Kafi Payne)

Published: 2020-06-09T00:00:00Z

Content type: opinion

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [systems](<https://devfeed.tech/topics/systems.md>), [.env](<https://devfeed.tech/topics/dotenv.md>)

Tags: [equity](<https://devfeed.tech/tags/equity.md>), [hiring](<https://devfeed.tech/tags/hiring.md>), [inclusion](<https://devfeed.tech/tags/inclusion.md>), [organizational-culture](<https://devfeed.tech/tags/organizational-culture.md>), [policies](<https://devfeed.tech/tags/policies.md>)

### AI overview

The article argues that companies can perpetuate racism even without explicitly racist employees or policies when they respond to racial injustice with statements but fail to address systemic racism through sustained anti-racist action. It uses Teleport's own shortcomings in diversity, equity, and inclusion as a candid example.

### Source excerpt

It is not enough to not be racist. We need to actively be anti-racist. Teleport is committing to diversity - Black Lives Matter.

## Docker, Rancher, Kubernetes... Minecraft? (Setup and Install Tutorial)

DevFeed: [Docker, Rancher, Kubernetes... Minecraft? (Setup and Install Tutorial)](<https://devfeed.tech/articles/docker-rancher-kubernetes-minecraft-setup-and-install-tutorial-10529.md>)

Original publisher: [Read original article](<https://technotim.com/posts/docker-rancher-kubernetes/>)

Author: Techno Tim

Published: 2020-04-09T14:00:00Z

Content type: tutorial

Language: en

Sources: [Techno Tim](<https://devfeed.tech/sources/techno-tim.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [.env](<https://devfeed.tech/topics/dotenv.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [docker](<https://devfeed.tech/tags/docker.md>), [homelab](<https://devfeed.tech/tags/homelab.md>), [install](<https://devfeed.tech/tags/install.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [rancher](<https://devfeed.tech/tags/rancher.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

A step-by-step video tutorial explains how to install and configure Rancher, Docker, and Kubernetes for a home lab, including setting up a Minecraft server and guidance for running other Docker containers.

### Source excerpt

If you want to set up Kubernetes at home using Rancher to run Docker containers, this is the guide for you. This is a step by step tutorial of how to install and configure Rancher, Docker, and Kubernetes for your homelab.In this video we set up and configure a Minecraft server in just a matter of minutes with some enterprise like features.You can use this same process to spin up other Docker co...

## Flat Multi-Environment Config for Craft CMS 3

DevFeed: [Flat Multi-Environment Config for Craft CMS 3](<https://devfeed.tech/articles/flat-multi-environment-config-for-craft-cms-3-31286.md>)

Original publisher: [Read original article](<https://nystudio107.com/blog/multi-environment-configuration-for-craft-cms-3>)

Author: andrew@nystudio107.com (Andrew Welch)

Published: 2020-02-29T15:29:00Z

Content type: tutorial

Language: en

Sources: [nystudio107 | Articles on modern web development.](<https://devfeed.tech/sources/nystudio107-articles-on-modern-web-development.md>)

Topics: [Content Management System](<https://devfeed.tech/topics/cms.md>), [.env](<https://devfeed.tech/topics/dotenv.md>), [Environment Variables](<https://devfeed.tech/topics/environment-variables.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [aliases](<https://devfeed.tech/tags/aliases.md>), [api-keys](<https://devfeed.tech/tags/api-keys.md>), [approach](<https://devfeed.tech/tags/approach.md>), [article](<https://devfeed.tech/tags/article.md>), [cms](<https://devfeed.tech/tags/cms.md>), [config](<https://devfeed.tech/tags/config.md>), [configs](<https://devfeed.tech/tags/configs.md>), [craft](<https://devfeed.tech/tags/craft.md>), [database](<https://devfeed.tech/tags/database.md>), [docker](<https://devfeed.tech/tags/docker.md>), [environment](<https://devfeed.tech/tags/environment.md>), [environment-variables](<https://devfeed.tech/tags/environment-variables.md>), [file](<https://devfeed.tech/tags/file.md>), [files](<https://devfeed.tech/tags/files.md>), [flat](<https://devfeed.tech/tags/flat.md>), [git](<https://devfeed.tech/tags/git.md>), [heroku](<https://devfeed.tech/tags/heroku.md>), [insights](<https://devfeed.tech/tags/insights.md>), [multi-environment](<https://devfeed.tech/tags/multi-environment.md>), [need](<https://devfeed.tech/tags/need.md>), [presents](<https://devfeed.tech/tags/presents.md>), [secrets](<https://devfeed.tech/tags/secrets.md>), [sorts](<https://devfeed.tech/tags/sorts.md>), [variables](<https://devfeed.tech/tags/variables.md>)

### AI overview

A tutorial on configuring Craft CMS 3 across development, staging, and production environments using aliases, environment variables, .env files, and configuration files. It presents a flat configuration approach and discusses keeping environment-specific credentials and secrets separate from source code and databases.

### Source excerpt

Multi-environment configs for Craft CMS are a mix of aliases, environment variables, and config files. This article sorts it all out, and presents a flat config file approach

[Next page](<https://devfeed.tech/topics/dotenv.md?cursor=WyIyMDIwLTAyLTI5VDE1OjI5OjAwKzAwOjAwIiwgIjBlNGFlNWJhLTUzZTQtNGQ4Yy1hYTVmLWVhM2Q5M2M0MmIwZiJd>)