<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Evanderson Vasconcelos de Souza</title>
    <description>The latest articles on DEV Community by Evanderson Vasconcelos de Souza (@evandersonvasconcelos).</description>
    <link>https://dev.to/evandersonvasconcelos</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F197113%2Fa2f7e2c1-7f75-4642-9d74-215fe0ee68b0.jpeg</url>
      <title>DEV Community: Evanderson Vasconcelos de Souza</title>
      <link>https://dev.to/evandersonvasconcelos</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/evandersonvasconcelos"/>
    <language>en</language>
    <item>
      <title>Nven - Secret manager</title>
      <dc:creator>Evanderson Vasconcelos de Souza</dc:creator>
      <pubDate>Fri, 22 May 2026 14:04:31 +0000</pubDate>
      <link>https://dev.to/evandersonvasconcelos/nven-secret-manager-b15</link>
      <guid>https://dev.to/evandersonvasconcelos/nven-secret-manager-b15</guid>
      <description>&lt;p&gt;🔐 Você realmente precisa de um secrets manager?&lt;/p&gt;

&lt;p&gt;Se você já trabalhou com:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;.env&lt;/code&gt; diferente entre máquinas&lt;/li&gt;
&lt;li&gt;variáveis faltando em produção&lt;/li&gt;
&lt;li&gt;secrets compartilhadas no WhatsApp/Slack&lt;/li&gt;
&lt;li&gt;deploy quebrando por configuração&lt;/li&gt;
&lt;li&gt;múltiplos ambientes (&lt;code&gt;dev&lt;/code&gt;, &lt;code&gt;staging&lt;/code&gt;, &lt;code&gt;prod&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;arquivos &lt;code&gt;.env&lt;/code&gt; espalhados em pastas&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;… então provavelmente sim.&lt;/p&gt;

&lt;p&gt;Foi pensando exatamente nesses problemas do dia a dia que criei o &lt;strong&gt;NVEN&lt;/strong&gt; 🚀&lt;/p&gt;

&lt;p&gt;A proposta do NVEN não é complicar o fluxo do desenvolvedor com processos gigantescos.&lt;/p&gt;

&lt;p&gt;A ideia é justamente o contrário:&lt;br&gt;
fazer o gerenciamento de variáveis de ambiente acontecer de forma natural dentro do terminal e do fluxo que já usamos diariamente.&lt;/p&gt;




&lt;h2&gt;
  
  
  💡 Como funciona o fluxo no dia a dia?
&lt;/h2&gt;

&lt;p&gt;Imagine que você começou um novo projeto.&lt;/p&gt;

&lt;h3&gt;
  
  
  1️⃣ Crie o projeto no NVEN
&lt;/h3&gt;

&lt;p&gt;Você organiza:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;projeto&lt;/li&gt;
&lt;li&gt;ambientes&lt;/li&gt;
&lt;li&gt;secrets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tudo centralizado.&lt;/p&gt;




&lt;h3&gt;
  
  
  2️⃣ Conecte o projeto local
&lt;/h3&gt;

&lt;p&gt;Com a CLI:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;inicializa o projeto&lt;/li&gt;
&lt;li&gt;conecta ao workspace&lt;/li&gt;
&lt;li&gt;sincroniza o &lt;code&gt;.env&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sem precisar copiar arquivos manualmente.&lt;/p&gt;




&lt;h3&gt;
  
  
  3️⃣ Trabalhe normalmente
&lt;/h3&gt;

&lt;p&gt;Durante o desenvolvimento:&lt;/p&gt;

&lt;p&gt;✅ atualiza secrets&lt;br&gt;
✅ sincroniza ambientes&lt;br&gt;
✅ acompanha alterações&lt;br&gt;
✅ mantém tudo versionado e organizado&lt;/p&gt;

&lt;p&gt;Tudo sem sair do terminal.&lt;/p&gt;




&lt;h3&gt;
  
  
  4️⃣ Use múltiplos ambientes com segurança
&lt;/h3&gt;

&lt;p&gt;Exemplo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;dev&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;staging&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;prod&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cada ambiente possui suas próprias variáveis e histórico.&lt;/p&gt;

&lt;p&gt;Isso evita:&lt;br&gt;
❌ deploy com variável errada&lt;br&gt;
❌ &lt;code&gt;.env&lt;/code&gt; duplicado&lt;br&gt;
❌ configuração manual toda vez&lt;/p&gt;




&lt;h3&gt;
  
  
  5️⃣ Analise o projeto localmente
&lt;/h3&gt;

&lt;p&gt;O comando &lt;code&gt;nven analyze&lt;/code&gt; ajuda a identificar:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;variáveis ausentes&lt;/li&gt;
&lt;li&gt;possíveis secrets hardcoded&lt;/li&gt;
&lt;li&gt;providers utilizados no projeto&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tudo localmente e sem upload de código 🔒&lt;/p&gt;




&lt;h2&gt;
  
  
  🤔 Por que usar o NVEN?
&lt;/h2&gt;

&lt;p&gt;Porque variáveis de ambiente normalmente só recebem atenção quando algo dá errado.&lt;/p&gt;

&lt;p&gt;O objetivo do NVEN é transformar isso em algo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;organizado&lt;/li&gt;
&lt;li&gt;previsível&lt;/li&gt;
&lt;li&gt;seguro&lt;/li&gt;
&lt;li&gt;simples de manter&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sem burocracia desnecessária.&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚙️ O foco do NVEN
&lt;/h2&gt;

&lt;p&gt;O NVEN foi pensado principalmente para:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;desenvolvedores independentes&lt;/li&gt;
&lt;li&gt;freelancers&lt;/li&gt;
&lt;li&gt;pequenos times&lt;/li&gt;
&lt;li&gt;startups&lt;/li&gt;
&lt;li&gt;projetos pessoais&lt;/li&gt;
&lt;li&gt;equipes que querem mais organização sem perder velocidade&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;🌐 &lt;a href="https://nven.tech" rel="noopener noreferrer"&gt;https://nven.tech&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feedbacks nessa fase inicial estão ajudando muito a evoluir a plataforma 🙌&lt;/p&gt;

&lt;h1&gt;
  
  
  devtools #cli #softwareengineering #webdevelopment #javascript #typescript #java #reactjs #springboot #cybersecurity #developers #programming #saas
&lt;/h1&gt;

</description>
      <category>cli</category>
      <category>security</category>
      <category>showdev</category>
      <category>tooling</category>
    </item>
    <item>
      <title>Variáveis de ambiente em equipe</title>
      <dc:creator>Evanderson Vasconcelos de Souza</dc:creator>
      <pubDate>Fri, 22 May 2026 14:03:16 +0000</pubDate>
      <link>https://dev.to/evandersonvasconcelos/variaveis-de-ambiente-em-equipe-4hm3</link>
      <guid>https://dev.to/evandersonvasconcelos/variaveis-de-ambiente-em-equipe-4hm3</guid>
      <description>&lt;p&gt;🔐 A melhor forma de gerenciar variáveis de ambiente em equipe&lt;/p&gt;

&lt;p&gt;Quando o projeto cresce, o famoso &lt;code&gt;.env&lt;/code&gt; manual começa a virar um problema:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;arquivos desatualizados&lt;/li&gt;
&lt;li&gt;secrets vazando em chats&lt;/li&gt;
&lt;li&gt;onboarding demorado&lt;/li&gt;
&lt;li&gt;diferenças entre ambientes&lt;/li&gt;
&lt;li&gt;deploy quebrando por variável errada&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;E normalmente o fluxo acaba sendo algo como:&lt;/p&gt;

&lt;p&gt;❌ compartilhar &lt;code&gt;.env&lt;/code&gt; no Slack&lt;br&gt;
❌ copiar arquivo de outro desenvolvedor&lt;br&gt;
❌ subir &lt;code&gt;.env&lt;/code&gt; sem querer no Git&lt;/p&gt;

&lt;p&gt;Foi exatamente pensando nesses problemas que criei o &lt;strong&gt;NVEN&lt;/strong&gt; 🚀&lt;/p&gt;

&lt;p&gt;A ideia é simples:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Ter uma única fonte da verdade para variáveis de ambiente e secrets.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Com o NVEN, o fluxo do time fica muito mais organizado:&lt;/p&gt;

&lt;p&gt;✅ variáveis centralizadas&lt;br&gt;
✅ secrets protegidas&lt;br&gt;
✅ ambientes separados (&lt;code&gt;dev&lt;/code&gt;, &lt;code&gt;staging&lt;/code&gt;, &lt;code&gt;prod&lt;/code&gt;)&lt;br&gt;
✅ sincronização via CLI&lt;br&gt;
✅ onboarding muito mais rápido&lt;/p&gt;

&lt;p&gt;Fluxo ideal:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;conectar o projeto ao workspace&lt;/li&gt;
&lt;li&gt;selecionar o ambiente&lt;/li&gt;
&lt;li&gt;sincronizar o &lt;code&gt;.env&lt;/code&gt; localmente&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Resultado:&lt;br&gt;
um novo desenvolvedor consegue rodar o projeto em minutos, sem precisar pedir arquivos manualmente para outros membros do time.&lt;/p&gt;

&lt;p&gt;O objetivo do NVEN não é adicionar burocracia.&lt;/p&gt;

&lt;p&gt;É justamente remover o caos que normalmente aparece quando equipes começam a crescer.&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://nven.tech" rel="noopener noreferrer"&gt;https://nven.tech&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  devtools #cli #softwareengineering #webdevelopment #javascript #typescript #java #reactjs #springboot #cybersecurity #developers #programming #saas
&lt;/h1&gt;

</description>
    </item>
    <item>
      <title>Pitch: Nven - Sync secrets. Ship faster.</title>
      <dc:creator>Evanderson Vasconcelos de Souza</dc:creator>
      <pubDate>Fri, 22 May 2026 14:00:46 +0000</pubDate>
      <link>https://dev.to/evandersonvasconcelos/pitch-nven-sync-secrets-ship-faster-1o6g</link>
      <guid>https://dev.to/evandersonvasconcelos/pitch-nven-sync-secrets-ship-faster-1o6g</guid>
      <description>&lt;p&gt;I’ve been working on a small developer tool called NVEN.&lt;/p&gt;

&lt;p&gt;The idea came from a problem I kept seeing across projects and teams:&lt;br&gt;
managing &lt;code&gt;.env&lt;/code&gt; files manually becomes chaotic very quickly.&lt;/p&gt;

&lt;p&gt;Different versions between machines, secrets shared in chats, outdated variables, onboarding friction, production configs drifting over time…&lt;/p&gt;

&lt;p&gt;So I started building a CLI-first secrets manager focused on keeping the workflow simple and developer-friendly.&lt;/p&gt;

&lt;p&gt;Some things I’ve been focusing on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;encrypted secrets&lt;/li&gt;
&lt;li&gt;multi-environment support&lt;/li&gt;
&lt;li&gt;audit logs&lt;/li&gt;
&lt;li&gt;local project analysis&lt;/li&gt;
&lt;li&gt;environment synchronization through CLI&lt;/li&gt;
&lt;li&gt;avoiding manual &lt;code&gt;.env&lt;/code&gt; sharing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One feature I recently added is a local analyze command that helps detect:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;missing env vars&lt;/li&gt;
&lt;li&gt;provider usage&lt;/li&gt;
&lt;li&gt;possible hardcoded secrets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Everything runs locally during analysis, so source code is not uploaded anywhere.&lt;/p&gt;

&lt;p&gt;I’m still in the early stages and currently validating workflows, DX and usability.&lt;/p&gt;

&lt;p&gt;Would genuinely love feedback from other developers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What is your current workflow for managing environment variables?&lt;/li&gt;
&lt;li&gt;What frustrates you most about &lt;code&gt;.env&lt;/code&gt; management today?&lt;/li&gt;
&lt;li&gt;Would you trust a centralized secrets workflow for personal/small team projects?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Trying to learn what real developers actually need before expanding further.&lt;/p&gt;

</description>
      <category>cli</category>
      <category>security</category>
      <category>showdev</category>
      <category>tooling</category>
    </item>
    <item>
      <title>Simple configuration Babel + Node</title>
      <dc:creator>Evanderson Vasconcelos de Souza</dc:creator>
      <pubDate>Mon, 08 Jun 2020 17:02:24 +0000</pubDate>
      <link>https://dev.to/evandersonvasconcelos/simple-configuration-babel-node-171h</link>
      <guid>https://dev.to/evandersonvasconcelos/simple-configuration-babel-node-171h</guid>
      <description>&lt;h2&gt;
  
  
  Hello, I'm Evanderson, this is my second post and this I will you go to teach how to configure the Babel + Node in a simple way, let's go!
&lt;/h2&gt;




&lt;h3&gt;
  
  
  🚀 First step:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Initialize your papckage.json&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;yarn init -y

or

npm init -y
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;






&lt;h3&gt;
  
  
  📂 Install devDependecies:
&lt;/h3&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;yarn add babel-cli babel-preset-env nodemon rimraf &lt;span class="nt"&gt;-D&lt;/span&gt;

  or

npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--save-dev&lt;/span&gt; babel-cli babel-preset-env nodemon rimraf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;






&lt;h3&gt;
  
  
  📄 Create file &lt;code&gt;.babelrc&lt;/code&gt; in root path:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Insert the code:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;presets&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;env&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;node&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;current&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;}]&lt;/span&gt;
  &lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;






&lt;h3&gt;
  
  
  📄 Create three scripts in &lt;code&gt;package.json&lt;/code&gt;:
&lt;/h3&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"scripts"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"dev"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"nodemon -w src --exec &lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s2"&gt;babel-node src --presets env&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"build"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"rimraf build &amp;amp;&amp;amp; babel src -s -D -d build --presets env"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"start"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"node build"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;obs ⚠&lt;/strong&gt;: In your project you should have a folder &lt;code&gt;src&lt;/code&gt; and a file &lt;code&gt;index.js&lt;/code&gt; into the folder, if not, you should configure the &lt;code&gt;package.json&lt;/code&gt; in accord with your directories.&lt;/p&gt;




&lt;h3&gt;
  
  
  💻 It's already done:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;With this simple configuration, you can use import/export and several actualities of the syntax&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  if did you like, comment and share ok? bye!
&lt;/h2&gt;

</description>
    </item>
    <item>
      <title>How to use the syntax import/export on NodeJS</title>
      <dc:creator>Evanderson Vasconcelos de Souza</dc:creator>
      <pubDate>Tue, 03 Dec 2019 19:17:45 +0000</pubDate>
      <link>https://dev.to/evandersonvasconcelos/how-to-use-the-syntax-import-export-on-nodejs-o5b</link>
      <guid>https://dev.to/evandersonvasconcelos/how-to-use-the-syntax-import-export-on-nodejs-o5b</guid>
      <description>&lt;p&gt;Hey devs, Wellcome on my first post in DEV Community and sorry that my English, because is don't very good ok?&lt;/p&gt;

&lt;p&gt;Let's go!&lt;/p&gt;

&lt;p&gt;In this post I go to teach you how to use the syntax import/export of simple way using the module Sucrase.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;First step: You need to import the modules using 'npm install sucrase nodemon -D' or 'yarn add sucrase nodemon -D';&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Second step: You need to create a file of configuration 'nodemon.json' and inside him you need to write these lines:&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;{&lt;br&gt;
"execMap": {&lt;br&gt;
    "js": "sucrase-node"&lt;br&gt;
  }&lt;br&gt;
}&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Third step: In file 'package.json' you need to create the field 'scripts' like this: &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;"scripts": {&lt;br&gt;
  "dev": "nodemon PATH_TO_FILE_MAIN"&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;After that you can already use the syntax, see some ways it should stay:&lt;/p&gt;

&lt;p&gt;BEFORE: &lt;br&gt;
  const express = require('express')&lt;/p&gt;

&lt;p&gt;AFTER:&lt;br&gt;
  import express from 'express'&lt;/p&gt;

&lt;p&gt;BEFORE: &lt;br&gt;
  const express = require('express')&lt;br&gt;
  const routes = express.Router()&lt;/p&gt;

&lt;p&gt;AFTER:&lt;br&gt;
  import { Router } from 'express'&lt;/p&gt;

&lt;p&gt;BEFORE:&lt;br&gt;
  module.exports = routes&lt;/p&gt;

&lt;p&gt;AFTER:&lt;br&gt;
  export default routes&lt;/p&gt;

&lt;p&gt;And then it's very easy? Did you like this post? comment in below ok, have a nice day.&lt;/p&gt;

</description>
      <category>node</category>
      <category>sucrase</category>
      <category>syntax</category>
      <category>import</category>
    </item>
  </channel>
</rss>
