A modern and feature-rich boilerplate for building cross-platform desktop applications with Electron, React, and Express.
This boilerplate provides a solid foundation for building desktop applications with:
- Modern Stack: React + Vite for fast development
- Full-Stack Ready: Express.js backend included
- Developer Experience: Hot reload and TypeScript support
- Production Ready: Optimized build and packaging configuration
-
Complete Architecture
- Frontend with React + Vite
- Backend with Express.js
- SQLite database integration
- IPC communication setup
-
Pre-built Components
- Dashboard with statistics and KPIs
- Customer management system
- Order tracking interface
- Settings and configuration pages
-
Developer Tools
- TypeScript configuration
- ESLint setup
- Hot reload support
- Debug configuration
- Frontend: React, Vite, SCSS
- Backend: Express.js
- Desktop: Electron
- Database: SQLite (better-sqlite3)
- Build: Electron Forge
- Node.js (v16 or higher)
- npm or yarn
- Clone the boilerplate:
git clone https://github.com/nahtandev/electron-playground.git
cd electron-playground²²
- Install dependencies:
npm install
- Start development server:
npm run start:dev
npm run start:dev
: Start the app in development modenpm run build
: Build the applicationnpm run package
: Package the app for the current platformnpm run make
: Create installersnpm run publish
: Publish the application
electron-playground/
├── client/ # React frontend source
│ ├── src/
│ ├── index.html
│ └── vite.config.ts
├── server/ # Express backend source
│ ├── ./
│ └── vite.config.ts
├── preloader/ # Electron preload scripts
├── data/ # Data and configuration
├── config.ts # Application configuration
└── forge.config.ts # Electron Forge configuration
- Create a
.env
file in the root directory:
NODE_ENV=development
- Customize
forge.config.ts
for your build requirements - Adjust
config.ts
for application settings
- Frontend: Modify React components in
client/src/
- Backend: Add API routes in
server/
For more information about the technologies used:
nahtandev
- Email: [email protected]
- GitHub: @nahtandev
This project is MIT licensed.