Papu’s Home — a real home robot, built on RedwoodJS
What is Papushome?
Papu is a home assistant that lives in my house; self hosted on an old gaming pc. A RedwoodJS app controls the the crud app, messaging service, and talks to a local LLM hosted on an old rtx 2070, the hardware and smart devices code live outside of redwoodJS core, but are organized in the same monorepo structure.
I started this project when I wanted to ask a chatbot to water my plants. Eventually I added a lot more microcontrollers around the house and needed a more manageable framework for administering the web app that gave me controls, monitoring, ui, etc. I tried the RedwoodJS tutorial and decided to adopt it instead of the vanilla express ts, hand-rolled db functions stack I was using
What does papushome do?
Conversational assistant — chat or voice, backed by a local Ollama model (qwen2.5:7b) calls tools, learns about the household, interacts with hardware
- Controls things — smart lights via Home Assistant, a plant-watering system over MQTT, tank-level and environment sensors on custom ESP32 firmware
- Knows the household — a Postgres + pgvector knowledge base of facts about the family, searched semantically
- Books things — yoga/fitness classes via Mindbody’s Public API, dental appointments via a Cognito-backed integration I reverse-engineered and published as tend-mcp (both an MCP server and a plain library)
- Reads calendars — Google Calendar plus the NYC DOE school calendar
- Observability — Loki/Promtail/Grafana for app and hardware logging
- Hardware - a fleet of ESP32 boards reporting over MQTT (plant-watering towers, tank sensors, environment sensors, an RGB status display). Built enough flash/OTA tooling around it that I split that out into its own package too: pio-flash-cli.
Why RedwoodJS
RedwoodJS was the seamless tutorial that I have worked with since trying Vue many years ago. The framework makes it so easy to wire up a powerful crud app with the least amount of manual boilerplate management.
Try it / poke around
Open source: GitHub - nries1/papushome · GitHub
Thanks to the Redwood team and community — this would’ve been a lot more scaffolding and less “actually building the interesting part” without Redwood handling GraphQL/Prisma/deploy for me.
Happy to answer questions about any piece — tool-calling, MQTT/hardware, or the booking integrations. Let me know what you’d want to hear more about!