1.5.1 • Published 2 years ago

next-runtime-dotenv v1.5.1

Weekly downloads
1,846
License
MIT
Repository
github
Last release
2 years ago

next-runtime-dotenv

Expose environment variables to the runtime config of Next.js

npm version codecov XO code style

CI

Tests Release

Getting started

$ yarn add next-runtime-dotenv

This Next.js plugin uses dotenv to expose environment variables to the Next.js runtime configuration. It requires next@5.1.0.

Usage

This module exposes a function that allows to configure a Next.js plugin.

In your next.config.js:

const nextRuntimeDotenv = require('next-runtime-dotenv')

const withConfig = nextRuntimeDotenv({
  // path: '.env',
  public: [
    'MY_API_URL'
  ],
  server: [
    'GITHUB_TOKEN'
  ]
})

module.exports = withConfig({
  // Your Next.js config.
})

Then in your page, use the configuration values as such:

import getConfig from 'next/config'

const {
  publicRuntimeConfig: {MY_API_URL},  // Available both client and server side
  serverRuntimeConfig: {GITHUB_TOKEN} // Only available server side
} = getConfig()

function HomePage() {
  // Will display the variable on the server’s console
  // Will display undefined into the browser’s console
  console.log(GITHUB_TOKEN)

  return (
    <div>
      My API URL is {MY_API_URL}
    </div>
  )
}

export default HomePage

Serverless deployment

This module is not compatible with serverless deployment as publicRuntimeConfig and serverRuntimeConfig from next/config will not be exposed. You should use build-time configuration.

Phases

This plugin leverages next@5.1.0 and build phases. It exposes a plugin function in order to run the plugin only when running the server (PHASE_DEVELOPMENT_SERVER and PHASE_PRODUCTION_SERVER).

License

MIT

Miscellaneous

    ╚⊙ ⊙╝
  ╚═(███)═╝
 ╚═(███)═╝
╚═(███)═╝
 ╚═(███)═╝
  ╚═(███)═╝
   ╚═(███)═╝
1.5.1

2 years ago

1.5.0

2 years ago

1.4.0

3 years ago

1.3.0

4 years ago

1.2.0

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.2

5 years ago

1.0.1

6 years ago

1.0.0

6 years ago