vite 로 설치 하니 추가 설정이 엄청 편하고
실행도 빠르다
npm create @quick-start/electron
npm install --save-dev @electron-toolkit/tsconfig
✔ Select a framework: › react
✔ Add TypeScript? … No / Yes
✔ Add Electron updater plugin? … No / Yes
✔ Enable Electron download mirror proxy? … No / Yes
“Add Electron updater plugin”은 Electron 애플리케이션에 자동 업데이트를 추가하는 것을 의미합니다. Electron 앱에서 자동 업데이트를 구현하는 데 사용되는 주요 플러그인 중 하나는 electron-updater입니다. 이 플러그인은 Electron 앱이 최신 버전을 유지하도록 도와줍니다.
“Enable Electron download mirror proxy”는 Electron을 설치할 때 사용할 수 있는 기능으로, Electron의 바이너리를 다운로드할 때 사용할 미러 서버를 설정하는 것을 의미합니다. 미러 서버는 공식 Electron 저장소가 아닌 다른 서버에서 Electron 바이너리를 다운로드할 수 있도록 해줍니다. 이는 네트워크 연결 문제나 특정 도메인에 대한 접근 제한이 있을 때 유용할 수 있습니다.
미러 서버 사용의 장점
이 기능은 Electron 애플리케이션을 개발할 때 특히 유용하며, 네트워크 환경에 따라 적절히 활용할 수 있습니다.
Vite의 빠른 개발 서버는 프로젝트에 다음과 같은 영향을 미칩니다:
npm install tailwindcss @tailwindcss/vite
electron.vite.config.ts
import tailwindcss from '@tailwindcss/vite';
export default defineConfig({
// ...
renderer: {
plugins: [tailwindcss()],
},
});
tsconfig.node.json
{
"extends": "@electron-toolkit/tsconfig/tsconfig.node.json",
"include": ["electron.vite.config.*", "src/main/**/*", "src/preload/**/*"],
"compilerOptions": {
"composite": true,
"types": ["electron-vite/node"],
"moduleResolution": "bundler"
},
}
tailwind.config.js
module.exports = {
darkMode: ['class'],
content: ['app/**/*.{ts,tsx}', 'components/**/*.{ts,tsx}'],
theme: {
extend: {
// 색상 및 스타일 설정
}
},
plugins: [import('tailwindcss-animate')]
}
tsconfig.json
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@/*": ["./*"]
}
}
}
components.json
{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": false,
"tsx": true,
"tailwind": {
"config": "tailwind.config.js",
"css": "src/index.css",
"baseColor": "zinc",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"ui": "@/components/ui",
"lib": "@/lib",
"hooks": "@/hooks"
},
"iconLibrary": "lucide"
}
touch src/index.css
index.css
@tailwind base;
@tailwind components;
@tailwind utilities;
npx shadcn@latest add button