How do hide secret key information in React application
The application makes API calls which API calls need secret keys. These keys are not committed to the code repository.
This tutorial covers how to hide the secret keys hiding in React applications created with the create-react-app command.
For example, If you are creating react Twilio plugin, you need secret keys such as ACCOUNT_SID and AUTH_TOKEN details.
For example, React application is created with the create-react-app command.
Hide API key details in react application
first, install the latest dotenv npm library using the npm command
npm install dotenv
Create a .env file in the application root directory
.env file
ACCOUNT_SID=xxxxxxxxxx
AUTH_TOKEN=YYYYYYY
Next, add the .env file to the .gitignore
file that is not committed to the git repository.
.gitignore file
.env
node_modules
Once you created the env file and added API key details, you can access the using process.env file. process.env is a process object for accessing environment variables.
In react components you can access the API keys as seen below.
console.log(process.env.ACCOUNT_SID);
console.log(process.env.AUTH_TOKEN);
Hide API key information with the create-react-app command
In this dotenv npm, dependency is not required, As the create-react-app tool handles the adding environment files differently.
Assume the application is created with the create-react-app CLI command
.
At the root of the project, Create a .env
file
.env
REACT_APP_ACCOUNT_ID=123456
REACT_APP_AUTH_KEY=abckey
each key is appended with REACTAPP_notation for creating a key, if you don’t add REACT_APP to keys, It returns empty while accessing in react components.
Access the key using the process.env object.
console.log(process.env.REACT_APP_ACCOUNT_ID)
console.log(process.env.REACT_APP_AUTH_KEY)
Finally, You can add the .env file to the .gitignore file to ignore the file while committing changes.
Wrap up
Hiding API key details can be achieved with the .env file which is not committed to the git repository.