A full-stack project generator and CLI workflow built on top of jdm-cli.
This template combines:
- Electron (desktop shell)
- Flask (Python backend)
- React + Vite (frontend)
It provides a complete development and build pipeline out of the box.
This project is generated via:
jdm-cli electron-flask create
It scaffolds a full working environment with:
- Backend API (Flask)
- Frontend UI (React + Vite)
- Desktop wrapper (Electron)
- CLI automation for dev, build, and packaging
backend/ → Flask API + business logic
frontend/ → React (Vite) application
electron/ → Electron app wrapper
run.bat → Quick command shortcuts
backend/
app/
api/ → routes
core/ → services / logic
models/ → database models
utils/ → helpers
run.py → development entry
production_run.py → production entry
frontend/
src/
layout/ → UI structure
routes/ → pages
lib/ → utilities
electron/
main.js → main process
resources/ → packaged backend EXE
Start full development environment:
jdm-cli electron-flask dev
Or using shortcut:
run dev
This will:
- Start Flask backend (new terminal)
- Start frontend dev server
jdm-cli electron-flask install
Full production build:
jdm-cli electron-flask compile
This runs:
- Frontend build
- Backend → EXE (PyInstaller)
- Electron packaging
jdm-cli electron-flask toexe
jdm-cli electron-flask clean
After creation:
-
.env.exampleis automatically converted to.env -
Configure environment variables in:
backend/.envfrontend/.env
Future support:
jdm-cli electron-flask implement <feature>
Examples:
implement sequelize
implement sql
implement auth
This will:
- Install dependencies
- Generate boilerplate
- Update project config
- Node.js (18+ recommended)
- Python (3.10+)
- pip
- Git
- PyInstaller (
pip install pyinstaller)
- Backend runs independently (Flask)
- Frontend communicates via API
- Electron bundles backend EXE for production
This project aims to:
- Remove repetitive setup
- Standardize full-stack desktop apps
- Provide a clean CLI-driven workflow
- Enable modular feature expansion
- Feature modules (auth, DB, sockets)
- Plugin ecosystem
- Project manifest (
jdm.json) - Better process management
- Cross-platform improvements
MIT