git clone https://github.com/rikurainio/Juu.git
npm install
package.json
includes scripts for drizzle-kit operations, building, linting, etc.
- Build-tooling: Electron-Vite, Vite
- UI: React
- Styling: TailwindCSS
- Process communication: Electron-tRPC, tRPC
- Routing: TanStack Router
- State management: TanStack Query
- Local Database: Better-sqlite3
- ORM: Drizzle
- Linting, formatting: Biome
- There is some crazy stuff happening with drizzle-kit and better-sqlite3 module. Since bs3 needs to be built for electron, it breaks some drizzle-kit scripts. The dirty workaround right now is that the db:* scripts just reinstall drizzle-kit and bs3 for drizzle-kit operations. It makes them a bit slower and messy, but at least now it's not in the way of development.
- Figure out better way to handle initial routing on built app. As a quick fix the app manually navigates the user to the root path on initial mount.
I'd love to work on this template with people. I have a lot to learn about Electron and the tooling around it, and native modules. If you have suggestions feel free to contact, make a PR.