React
How to create an Electron app with React and Electron Forge
Adding React support to the Webpack template doesn't require a complicated boilerplate to get started.
The following guide has been tested with React 17, Babel 7, and Webpack 5.
Create the app with the Webpack template. Add the following packages to your
devDependencies
so that JSX and other React features can be used properly:Yarn
NPM
yarn add --dev @babel/core @babel/preset-react babel-loader
npm install --save-dev @babel/core @babel/preset-react babel-loader
webpack.rules.js
module.exports = [
// ... existing loader config ...
{
test: /\.jsx?$/,
use: {
loader: 'babel-loader',
options: {
exclude: /node_modules/,
presets: ['@babel/preset-react']
}
}
},
// ... existing loader config ...
]
Add the basic React packages to your
dependencies
:Yarn
NPM
yarn add react react-dom
npm install --save react react-dom
You should now be able to start writing and using React components in your Electron app. The following is a very minimal example of how to start to add React code:
src/app.jsx
src/renderer.js
import * as React from 'react';
import * as ReactDOM from 'react-dom';
function render() {
ReactDOM.render(<h2>Hello from React!</h2>, document.body);
}
render();
// Add this to the end of the existing file
import './app.jsx';
Last modified 1yr ago