A batteries-included Electron boilerplate with React, TypeScript, and more. Based on the Electron React Boilerplate, this project includes a demo app showcasing basic functionality and inter-process communication between the main and renderer processes.
Clone this repository
git clone https://github.com/lacymorrow/electron-hotplate.git
Go into the repository
cd electron-hotplate
Install dependencies
npm install
Start the development server
npm run start
src/main
: Contains the main process codesrc/renderer
: Contains the renderer process code (React components)src/config
: Contains configuration filessrc/utils
: Contains utility functionsnpm run start
: Start the app in development modenpm run package
: Build the app for productionnpm run lint
: Run the linternpm run test
: Run testsAfter publishing your first version, you can enable auto-update by uncommenting the update
function contents in src/main/auto-update.ts
.
We use Tailwind CSS for styling. See the Tailwind CSS docs for more information.
Some Tailwind plugins have been added for convenience:
tailwindcss-animate
@tailwindcss/container-queries
child:w-xl
group
(Parent) group-hover:bg-gray-100
(Child)Shadcn is a UI component library for React. See the Shadcn docs for more information.
Use npx shadcn@latest add button ...
to add a component to your project.
Current installation command (to update all ui components):
npx shadcn@latest add button checkbox dropdown-menu form input menubar radio-group scroll-area select separator sonner switch textarea
To list components with updates: npx shadcn@latest diff
Based on the Electron React Boilerplate, this boilerplate adds UI components from Shadcn, styling with Tailwind CSS, persistance with electron-store, and a structured React context that promotes a data flow from the top down: Main process -> Renderer process.
# Clone this repository
git clone https://github.com/lacymorrow/electron-hotplate.git
# Go into the repository
cd electron-hotplate
# Install dependencies
yarn
# Run the app
yarn start
After publishing your first version, you can enable auto-update by uncommenting the update
function contents in src/main/auto-update.ts
.
We use Tailwind CSS for styling. See the Tailwind CSS docs for more information.
Some Tailwind plugins have been added for convenience:
tailwindcss-animate
@tailwindcss/container-queries
child:w-xl
group
(Parent) group-hover:bg-gray-100
(Child)Shadcn is a UI component library for React. See the Shadcn docs for more information.
Use npx shadcn-ui@latest add accordion ...
to add a component to your project.
Current installation command (to update all ui components):
npx shadcn-ui@latest add button checkbox dropdown-menu form input menubar radio-group scroll-area select separator sonner switch textarea
To list components with updates: npx shadcn-ui@latest diff
npm run package
src/main/auto-update.ts
file is where the auto-updater is configured. Uncomment the update
function to enable auto-update after publishing your first version.npm run package
to get a new icon.Contributions are welcome! Please feel free to submit a Pull Request.
See the Electron React Boilerplate docs and guides here
This project is licensed under the CC-BY-NC-SA-4.0 License.