PostgreSQL, Tauri, Actix Web, Leptos. Also, Tailwind CSS and SQLx.
cd client-tauri; cargo tauri dev
cargo run --bin server
You can run each concurrently in the same terminal with runcc.
You can also use cargo-watch to "live-reload" the actix web server.
cargo install runcc watch
cargo runcc \
'cd client-tauri; cargo tauri dev' \
'cargo watch -x "run --bin server"' \
'make tailwind-dev'
There is also a Makefile for setting up and tearing down a local PostgreSQL
container in docker. The intention is for dev databases to be ephemeral, and
for you to maintain the ./init.sql
script to setup tables and mock data as
necessary.
Make Rule | Description |
---|---|
build (default) |
Build everything! |
start-db |
Start a PostgreSQL instance on localhost:5432 inside Docker using the Docker CLI |
stop-db |
Stop and destroy the PostgreSQL database |
reset-db |
stop-db , start-db ; do this after every change to initdb.sql |
watch-db |
Stream the database logs to your console |
tailwind-dev |
Run tailwind codegen CLI in development ("watch") mode |
tailwind-build |
Build the minified tailwind CSS file |
There is also a make dev
rule to do the steps mentioned in runninig them
concurrently.
There is an env-template
file. Out of the box, you can just cp env-template .env
and get started. It contains credentials for your local PostgreSQL
database, but if you use make start-db
to spin up a local PostgreSQL
instance inside Docker, it'll be initialized with the same boilerplate
variables we provide in the env-template
.
There are make rules for tailwind; you shouldn't have to think about this at all. You may customize the tailwind config file at the root of this repo.