Easy-to-manage touch screens
Free, open-source touch screens. Guided USB setup, a drag-and-drop editor and local control. Made for Home Assistant.
A calm place for your family's days, meals, and routines.
LifestyleSwift · TypeScriptGitHub @jstnhbbsOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Native iOS/iPadOS port of Home Hub (Swift). Web app reference history preserved; new development targets this repo.
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗A family dashboard for native iOS calendars, routines, chores, notes, and weekly meal planning. Tugboat is optimized for family iPhone and iPad use, with a web dashboard for shared household management.
Install dependencies and create the environment file:
npm install
cp .env.example .env.local
Fill the secrets in .env.local. Generate independent values with openssl rand -base64 32.
Create the local database and run the app:
npm run db:migrate
npm run dev
Open http://localhost:3000, create a parent account, then create or join a household.
Tugboat does not store calendar provider credentials. Add iCloud, Google, or other calendar accounts to Apple Calendar on each device, then grant Tugboat calendar access in the iOS app and choose which device calendars to show.
TURSO_DATABASE_URL and TURSO_AUTH_TOKEN locally, then run npm run db:migrate.BLOB_READ_WRITE_TOKEN automatically..env.example to Vercel. Set BETTER_AUTH_URL and trusted origins to the production HTTPS URL.vercel.json runs npm run db:migrate before the build for production deployments only, so TURSO_DATABASE_URL and TURSO_AUTH_TOKEN must be set for the Production environment. Preview deployments skip migrations.To see what a migration run would do against a database without changing it, run node scripts/check-migrations.mjs with TURSO_DATABASE_URL and TURSO_AUTH_TOKEN set.
Install the native app through Xcode or TestFlight. See the iOS setup guide for build and backend configuration. The website provides account and household management; the family dashboard runs in the native app.
Email confirmation: a new account is emailed a one-time link (valid 24 hours) that confirms its address. An unconfirmed address can still sign in and use everything; the app and the web settings page remind them and offer to send it again. Email goes out through Resend: set RESEND_API_KEY and EMAIL_FROM (an address on a domain you have verified with Resend) in the deployment's environment. Without them production sends nothing (and logs a warning), and development prints the email, including the link, in the server log.
Household export: owners and parents can save a JSON copy of their household from the iOS app (Settings → General → Export Household Data). It leaves out invite codes and member email addresses.
Database backup: for a full copy of the production database, run this while signed in to the Turso CLI:
mkdir -p backups && turso db shell homehub .dump > backups/homehub-$(date +%F).sql
The backups/ folder is gitignored. A dump contains password hashes and session tokens, so keep it private. To restore into a new database: turso db create homehub-restored --from-dump backups/<file>.sql.
Point-in-time restore: Turso can restore a database to an earlier moment, but how far back depends on your plan. Check the Turso dashboard for your window, and note that delete protection is enabled on the production database, so removing it requires running turso db config delete-protection disable homehub first.
npm run lint
npm run typecheck
npm test
npm run build
npm run build:with-migrate
npm run test:e2e