@nuxtjs/dotenv

A nuxt.js module that loads your .env file into your context options

Usage no npm install needed!

<script type="module">
  import nuxtjsDotenv from 'https://cdn.skypack.dev/@nuxtjs/dotenv';
</script>

README

@nuxtjs/dotenv

npm version npm downloads Circle CI Codecov License

A nuxt.js module that loads your .env file into your context options

📖 Release Notes

Features

The module loads variables from your .env file directly into your nuxt.js application context and process.env.

Setup

  1. Add @nuxtjs/dotenv dependency to your project
yarn add @nuxtjs/dotenv # or npm install @nuxtjs/dotenv
  1. Add @nuxtjs/dotenv to the modules section of nuxt.config.js
{
  modules: [
    // Simple usage
    '@nuxtjs/dotenv',

    // With options
    ['@nuxtjs/dotenv', { /* module options */ }]
  ]
}

Using top level options

{
  modules: [
    '@nuxtjs/dotenv'
  ],
  dotenv: {
    /* module options */
  }
}

Options

only

  • Default: null

If you want to restrict what's accessible into the context, you can can pass to the module options an only array with the keys you want to allow.

{
  modules: [
    ['@nuxtjs/dotenv', { only: ['some_key'] }]
  ]
}

path

  • Default: srcDir

By default, the we'll be loading the .env file from the root of your project. If you want to change the path of the folder where we can find the .env file, then use the path option.

{
  modules: [
    ['@nuxtjs/dotenv', { path: '/path/to/my/global/env/' }]
  ]
}

Note: that this is the path to the folder where the .env file live, not to the .env file itself.

The path can be absolute or relative.

systemvars

  • Default: false

By default this is false and variables from your system will be ignored. Setting this to true will allow your system set variables to work.

{
  modules: [
    ['@nuxtjs/dotenv', { systemvars: true }]
  ]
}

filename

  • Default: .env

We can override the filename when we need to use different config files for different environments.

{
  modules: [
    ['@nuxtjs/dotenv', { filename: '.env.prod' }]
  ]
}

Usage

After creating your .env file in the project root, simply run your usual yarn dev or npm run dev. The variable inside the .env file will be added to the context (context.env) and process (process.env)

Using .env file in nuxt.config.js

This module won't overload the environment variables of the process running your build.

If you need to use variables from your .env file at this moment, just append require('dotenv').config() to your nuxt.config.js :

require('dotenv').config()

module.exports = {
  // your usual nuxt config.
}

This will works thanks to the dotenv library provided by this module as a dependency. If you decided to ignore some values from your .env file in the module configuration, this won't apply here.

Development

  1. Clone this repository
  2. Install dependencies using yarn install or npm install
  3. Start development server using npm run dev

License

MIT License

Copyright (c) Nuxt Community