Demo project that explores the use of Genkit to manage a hypothetical smarthome.
The backend uses:
https://firebase.google.com/docs/genkit/
https://swagger-autogen.github.io/docs
The frontend uses:
https://picnicss.com/documentation
First - create a .env file with your Google AI Studio API Key:
GOOGLE_GENAI_API_KEY=YourKeyHere
To debug flows with Genkit UI
npm i -g genkit
genkit start
To run the web application
npm install
npm run server
Temporarily hosted at https://smarthome.aaronblondeau.com/
Install caddy:
https://caddyserver.com/docs/install
Setup caddy by editing /etc/caddy/Caddyfile
Add these lines to the end of the file
smarthome.aaronblondeau.com {
reverse_proxy localhost:3000
}
Make sure .env file is in place and then launch the service with docker compose
docker compose up -d
Setup DNS records for smarthome.aaronblondeau.com (and wait a few)
Then finally, reload caddy config
sudo caddy reload
To update to new code:
git pull origin main
docker compose up -d --no-deps --build genkit-smarthome
Process audio commands directly in browser?