Testing Only
Role:

Senior Living Signage & Mesh Control

Multi-Tenant Tailscale Network for Raspberry Pi Displays

User: {{ user.email || email }}
{{ user.email || email }}

{{ showSettingsModal === 'info' ? 'Account Information' : 'White-Glove Concierge Service Plan' }}

Email: {{ user.email || email }}

Role: {{ user.role || currentRole }}

Tenant ID: {{ user.tenant_id || 'N/A' }}

Manager Mode: {{ isManagerMode ? 'Enabled (Team Admin)' : 'Restricted (Staff)' }}

ℹ️ Platform Access: 100% Free for senior living communities and activity directors.

✨ White-Glove Concierge Service Plan

$79 / month

Hands-off white-glove service where our admin staff handles all content scheduling, slide uploads, and schedule curation directly via emailβ€”requiring zero management effort from community staff.

Request a New Director App

Describe the new features you're looking for and our product team will build it for your senior community.

Submitting as: {{ user.email || email }}

Sign In (Senior Living Portal)

Raspberry Pi Fleet Health & Content Ratio Telemetry

Monitor connected Pi display nodes and register new hardware by IP or Tailscale IP.

Register New Raspberry Pi Node

Device Name Assigned Location Tailscale IP Status Content Ratio (Ads vs Community) Last Heartbeat Actions
{{ dev.name }}
Key: {{ dev.unique_key }}
{{ dev.location ? dev.location.name : 'Main Lobby Display' }}
{{ dev.ip_address || 'Pending...' }} β†— Web:8088
{{ dev.status }} {{ dev.content_ratio || '75% Community / 25% Ads' }} {{ formatTimeAgo(dev.last_seen) }}

Senior Communities Overview

Community Name Community Address Number of Screens Active Slides Inactive Slides Number of Advertisers / Ads
{{ loc.name.split(' - ')[0] }} {{ loc.address || '100 Senior Way' }} 2 {{ scheduleItems.filter(i => i.active).length }} {{ scheduleItems.filter(i => !i.active).length }} {{ assets.filter(a => a.is_advertiser).length }}

Community Activity Directors

Name / Staff Email Community Scope Billing Control
Sarah Jenkins [email protected] Oakridge Senior Living Enabled

Advertisers & Sponsor Companies

Person (Contact) Company / Sponsor Email Billing Status Active Ad Assets
Dr. Marcus Vance Downtown Family Dental [email protected] Active (Billing Admin) 2 Assets Uploaded

Admin App Manager (Pre-approved Trivia Banks)

Curate categories and pre-approved trivia questions available to community directors.

{{ bank.category }}

Q: {{ bank.question }} | Answer: {{ bank.answer }}

Admin Tier & Tool Availability Configuration

Configure which Director apps and advanced tools are unlocked for Bronze, Silver, and Gold account tiers.

Feature / App Module Bronze Silver Gold Banner Ad
{{ feature.name }}
✨ Platform Free Access (100% Free for Communities)
Community Subscription Plan Level: πŸ”’ Locked (Only Director Managers can change plan levels)

Always free, no matter the level

πŸŽ‰

Happy Birthday

Celebrate resident birthdays with high-contrast banners.

Bronze
πŸ”’
πŸ“…

Events Calendar

Display daily activity schedules and room locations.

Silver
πŸ”’
🍽️

Dining Menu of the Day

Upload menu PDF/image or enter itemized text for meals.

Gold
πŸ”’
🧠

Timed Senior Trivia

Interactive slide templates with timed answer reveals.

Gold
πŸ”’
πŸ”

Lost & Found

Quickly post a photo and details of a found item.

Gold

{{ editingScheduleId ? 'Editing Schedule Item' : 'Configuring App' }}: {{ selectedApp.replace('_', ' & ') }}

Live 16:9 Canvas Preview
πŸŽ‚

Happy Birthday, {{ bdayName || 'Resident Name' }}!

{{ bdayMsg || 'Wishing you a wonderful day.' }}

πŸ“…

{{ eventTitle || 'Activity Title' }}

{{ eventTime || '2:00 PM - Main Hall' }}

🧠

{{ triviaQ || 'Trivia Question Here?' }}

Answer: {{ triviaA || '-' }}

🍽️ DINING MENU

Breakfast: {{ menuBreakfast || 'Scrambled Eggs, Toast' }}

Lunch: {{ menuLunch || 'Roast Turkey, Potatoes' }}

Dinner: {{ menuDinner || 'Baked Salmon, Asparagus' }}

πŸ” LOST & FOUND
No Photo

{{ lfItemName || 'Item Name' }}

Found: {{ lfLocation || 'Lobby' }}

⭐ Featured Schedule Priority Card (3 Community Slots) Tier: {{ accountTier.toUpperCase() }}

Manage your community's featured posts across 3 fixed priority slots.

Slot #1
{{ featuredScheduleItems[0].name }}
{{ featuredScheduleItems[0].category }} Duration: {{ featuredScheduleItems[0].duration }}s
Empty Featured Slot 1 (Toggle 'Featured' on any schedule app below)
Slot #2
πŸ”’ Locked (Upgrade to Silver or Gold Tier)
{{ featuredScheduleItems[1].name }}
{{ featuredScheduleItems[1].category }} Duration: {{ featuredScheduleItems[1].duration }}s
Empty Featured Slot 2 (Toggle 'Featured' on any schedule app below)
Slot #3
πŸ”’ Locked (Upgrade to Gold Tier)
{{ featuredScheduleItems[2].name }}
{{ featuredScheduleItems[2].category }} Duration: {{ featuredScheduleItems[2].duration }}s
Empty Featured Slot 3 (Toggle 'Featured' on any schedule app below)

⭐ Featured Schedule Priority Card (3 Community Slots) Tier: {{ accountTier.toUpperCase() }}

Manage your community's featured posts across 3 fixed priority slots.

Slot #1
{{ featuredScheduleItems[0].name }}
{{ featuredScheduleItems[0].category }} Duration: {{ featuredScheduleItems[0].duration }}s
Empty Featured Slot 1 (Toggle 'Featured' on any schedule app below)
Slot #2
πŸ”’ Locked (Upgrade to Silver or Gold Tier)
{{ featuredScheduleItems[1].name }}
{{ featuredScheduleItems[1].category }} Duration: {{ featuredScheduleItems[1].duration }}s
Empty Featured Slot 2 (Toggle 'Featured' on any schedule app below)
Slot #3
πŸ”’ Locked (Upgrade to Gold Tier)
{{ featuredScheduleItems[2].name }}
{{ featuredScheduleItems[2].category }} Duration: {{ featuredScheduleItems[2].duration }}s
Empty Featured Slot 3 (Toggle 'Featured' on any schedule app below)

Q: {{ triviaQ || '-' }} | A: {{ triviaA || '-' }}

🎨 Typography & Layout

Community Schedule & Featured Priority Cards
{{ selectedScheduleIds.length }} selected

Editing Schedule Item: {{ selectedApp.replace('_', ' & ') }}

Live 16:9 Canvas Preview
πŸŽ‚

Happy Birthday, {{ bdayName || 'Resident Name' }}!

{{ bdayMsg || 'Wishing you a wonderful day.' }}

πŸ“…

{{ eventTitle || 'Activity Title' }}

{{ eventTime || '2:00 PM - Main Hall' }}

🧠

{{ triviaQ || 'Trivia Question Here?' }}

Answer: {{ triviaA || '-' }}

🍽️ DINING MENU

Breakfast: {{ menuBreakfast || 'Scrambled Eggs, Toast' }}

Lunch: {{ menuLunch || 'Roast Turkey, Potatoes' }}

Dinner: {{ menuDinner || 'Baked Salmon, Asparagus' }}

πŸ” LOST & FOUND
No Photo

{{ lfItemName || 'Item Name' }}

Found: {{ lfLocation || 'Lobby' }}

Q: {{ triviaQ || '-' }} | A: {{ triviaA || '-' }}

🎨 Typography & Layout

Active Featured Edit Category Duration Schedule Item / App Expires On Date Added Delete

Community Subscription & Invoicing

Manage billing payment methods, screen license seats, and invoice history for this senior community.

Current Plan: Professional Multi-Screen Tier ($199/mo)

Next billing cycle: October 1, 2026. Payment method: Visa ending in 4242.

{{ canBill ? 'Primary Advertiser Sponsor Portal' : 'Third-Party Marketing Agency Upload Portal' }}

Select your ad format, upload media assets, or paste YouTube links for zero-buffer local Pi playback.

πŸ“Š Daily Ad Appearance Tracker

Real-time daily impression appearances across active community displays.

1,420 Appearances Today

Step 1: Select Ad Format

🏷️ Bottom Banner Ad (1/5th Height)

Sponsor banner occupying the bottom 20% of regular community slides.

πŸ–ΌοΈ Full Page Ad

Dedicated full-screen standalone visual or video ad asset.

Step 2: Ad Configuration & Upload (Format: {{ adFormat === 'bottom_banner' ? 'Bottom Banner Ad' : 'Full Page Ad' }})

Submitted Ad Assets & Approval Status

Preview Asset Name / Source Format Approval Status Actions
YT/VID
{{ asset.name }} {{ adFormat.replace('_', ' ') }} {{ asset.approval_status || 'Pending Review' }}