基于 electron-react-boilerplate 进行开发:一个跨平台的桌面应用 boilerplate
based on Electron, React, Redux, React Router, Webpack and React Hot Loader for rapid application development (HMR).
通过git同步到本地
git clone --depth 1 --single-branch --branch master https://github.com/electron-react-boilerplate/electron-react-boilerplate.git your-project-name
使用 yarn 安装依赖.
$ cd your-project-name
$ yarn
运行在开发环境,这样渲染进行在hot-module-replacement 模式;这样会开启一个webpack dev server 会及时更新热更细到渲染进程,让你看到最新到编写的程序运行效果;
$ yarn dev
如果不关心文件到变化,可以使用下面到命令,在最小化运行 run dev
with env START_MINIMIZED=true
:
$ START_MINIMIZED=true yarn dev
基于当前开发环境进行打包: mac开发环境会打包dmg ,win会打包exe ,Linux 会打包zip
$ yarn package
打包全平台:
首先到 Multi Platform Build docs 解决依赖问题.
然后运行,
$ yarn package-all
打包到制定平台请使用 option参数:
$ yarn package --[option]
To run End-to-End Test
$ yarn build-e2e
$ yarn test-e2e
# Running e2e tests in a minimized window
$ START_MINIMIZED=true yarn build-e2e
$ yarn test-e2e
💡 You can debug your production build with devtools by simply setting the DEBUG_PROD
env variable:
DEBUG_PROD=true yarn package
This boilerplate is configured to use css-modules out of the box.
All .css
file extensions will use css-modules unless it has .global.css
.
If you need global styles, stylesheets with .global.css
will not go through the
css-modules loader. e.g. app.global.css
If you want to import global css libraries (like bootstrap
), you can just write the following code in .global.css
:
@import '~bootstrap/dist/css/bootstrap.css';
If you want to use Sass in your app, you only need to import .sass
files instead of .css
once:
import './app.global.scss';
This project comes with Flow support out of the box! You can annotate your code with types, get Flow errors as ESLint errors, and get type errors during runtime during development. Types are completely optional.
If your application is a fork from this repo, you can add this repo to another git remote:
git remote add upstream https://github.com/electron-react-boilerplate/electron-react-boilerplate.git
Then, use git to merge some latest commits:
git pull upstream master
Support us with a monthly donation and help us continue our activities. [Become a backer]
Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]