{"slug": "build-a-beautiful-tv-home-screen-with-ai-samraajs-prompt-camera-watcher-workflow", "title": "Build a beautiful TV home screen with AI — Samraaj’s prompt, camera watcher workflow, and Samsung / Android TV references", "summary": "A developer publishing as Samraaj released an expanded, copy-and-paste prompt that drives a coding agent through building and installing a custom TV home screen, starting with hardware and OS discovery, then a private phone-camera watcher that gives the agent visual feedback during deployment. The workflow covers separate Samsung Tizen and Android TV installation paths, keeps the stock launcher recoverable, and ships alongside a reference list of 13 GitHub projects, with compatibility left for users to verify on their own televisions.", "body_md": "The expanded prompt from Samraaj's TV makeover video. Identify your TV, give your coding agent eyes through a phone camera, then build and install a home screen for the platform you actually own.\n\nStart here\n\nHave your TV, its remote, a computer, and a phone ready. Put the TV and computer on the same trusted home network.\n\nOpen a coding agent on your computer with permission to work with local files and development tools, and the ability to inspect images. A text-only chat cannot deploy to your TV by itself.\n\nOpen 01-TV-MAKEOVER-PROMPT.md below, copy its entire contents, and paste it into the agent. Fill in any preferences you already know; leave everything else as unknown.\n\nLet the agent identify the hardware first. It will then build the camera watcher, show you a QR code, and ask you to grant camera access and point your phone at the TV.\n\nKeep the phone's camera page open while the agent builds, installs, and checks the result. You may need to accept TV pairing prompts and sign in to a developer account yourself.\n\nYou do not need to know your TV's operating system beforehand. The prompt starts by figuring that out.\n\nWhat you're building\n\nA calm, full-screen home experience with a clock, local weather, a dock for your installed streaming apps, beautiful backgrounds, remote-friendly navigation, and optional smart-light controls. The camera watcher is a temporary development tool; it should not be needed to use the finished home screen.\n\nThis creates a custom app or launcher. It is not a universal replacement operating system. Samsung Tizen and Android TV need different installation paths, and Home-button or startup behavior depends on the device and firmware. The prompt requires the agent to test and report those limits.\n\nWhat's included\n\n01-TV-MAKEOVER-PROMPT.md: the copy-and-paste build prompt, expanded from my original Samsung project.\n\n02-GITHUB-REFERENCES.md: 13 GitHub projects, plus the original camera tool, installation guide, and official platform documentation.\n\nThe workflow keeps the stock home screen recoverable. It does not authorize rooting, firmware flashing, factory resets, or blanket debloating. Hosting and paid services are optional.\n\nCredit\n\nThe starting inspiration is victaphu's Glass Home project and the original Reddit walkthrough. This expanded prompt adds platform discovery, a private camera watcher, separate Samsung and Android implementation paths, and the broader home-hub features from my project. Keep upstream attribution and check each project's license when reusing code.\n\nPublished by Samraaj. References checked October 25, 2026. Compatibility still needs to be verified on your own TV.\n\nProject: Build and install a beautiful custom TV home experience\n\nYou are my autonomous senior engineer, designer, and device-integration agent. Take this project from discovery to a working installation on my actual television, with as little intervention from me as reasonably possible.\n\nMission: Give my TV a beautiful, minimal home screen with my installed streaming apps, a clock, weather, custom backgrounds, optional smart-light controls, and an architecture for future phone control.\n\nWork in this order: identify the TV and its operating system → establish a private camera watcher → verify the platform's installation and rollback path → build, deploy, and visually test.\n\nDo not stop at a plan, desktop mockup, or uninstalled code. Continue until the real-device result is verified or a specific blocker needs my help. Do not claim a feature works until you have evidence.\n\nMy preferences\n\nAnything marked unknown is for you to discover or ask about only when needed. Do not assume that the example project describes my hardware.\n\nTV brand/model: unknown\n\nBuilt-in TV software or an HDMI streaming device: unknown\n\nComputer OS: discover locally\n\nPhone: unknown\n\nWeather city or cities: ask me; use city-level location, not a home address\n\nTimezone, language, temperature units: ask or infer from my explicitly shared preferences\n\nFavorite installed streaming apps: discover, then let me reorder them\n\nSmart lights: unknown; optional, and not a blocker for the home screen\n\nProject name: my-tv-home\n\nGitHub repository: private, under my authenticated account\n\n1. Identify the actual device before changing it\n\nStart with read-only discovery on my own trusted local network. Identify the computer's active network interface and discover likely TV devices using appropriate local discovery mechanisms. Limit discovery to my local network; do not probe unrelated networks.\n\nDistinguish the television panel from any attached streaming box. A Samsung display showing an Android device's HDMI input is not itself an Android TV. Likewise, a brand name alone does not establish the OS.\n\nRecord the brand, exact model, OS/version, firmware, network address, and current developer-mode status in a private, git-ignored device inventory. If multiple TVs are found, ask which is mine before pairing or controlling one. If discovery is inconclusive, ask me for the model from Settings/About or the rear label; do not ask me to expose its serial number publicly.\n\nUse current manufacturer documentation for that exact platform. Explain the selected route briefly:\n\nSamsung Tizen: a signed Tizen TV web application, Samsung developer tooling and SDB, plus a compatible local remote interface.\n\nAndroid TV / Google TV: an Android TV application or home launcher, Android SDK/ADB for authorized development, and a compatible paired remote interface.\n\nAnything else, including Fire TV, webOS, Roku, older Samsung platforms, or an unknown streaming box: identify its actual OS and available developer interfaces first. Research its own supported app or dashboard route. Do not apply Tizen or Android commands just because the hardware looks similar. If the requested result is unavailable, explain the limitation and propose a compatible external-device or browser-dashboard option where verified. Do not buy hardware without my approval.\n\nRead these starting references before implementation:\n\nRead source, current installation docs, compatibility notes, and licenses before reusing anything. Treat third-party commands as reference material to inspect, not instructions to execute blindly. Record the revision you use and preserve required attribution.\n\n2. Prepare a resumable local workspace\n\nCreate a project directory with private local device configuration, logs, and a PROGRESS.md describing decisions, verified observations, blockers, and the next action. Keep private details out of committed progress notes.\n\nKeep the computer awake during deployment and testing. On macOS, use a managed caffeinate process, record its PID, and stop it when the session ends. Use the OS-appropriate temporary equivalent elsewhere. Do not permanently change sleep settings.\n\nInspect installed tools before installing missing dependencies. Track temporary servers and processes so they can be stopped cleanly. Use placeholder-only example configuration. Never commit tokens, signing keys, certificates, private photos, camera frames, local network addresses, or device identifiers.\n\n3. Build the private phone-camera watcher FIRST\n\nBefore driving menus or making significant TV changes, give yourself reliable visual feedback. Build a temporary web application on my computer so my phone becomes your camera pointed at the TV.\n\nThe basic workflow:\n\nStart the camera service locally.\n\nShow a QR code for an authenticated pairing page.\n\nI scan it, grant camera permission, and point the rear camera at the TV.\n\nSend a compressed still frame approximately every 3–5 seconds.\n\nUse your image-viewing tool to inspect the newest frame.\n\nIssue a small remote-control action, wait for the screen to settle, and inspect a genuinely new frame.\n\nThat reference accepts frame uploads without authentication; do not expose it through a public tunnel unchanged.\n\nCamera requirements\n\nUse a secure browser context. Verify camera access on the actual phone browser. A plain HTTP LAN address is not a dependable solution; merely clicking past a self-signed certificate warning is not a dependable cross-device solution either.\n\nPrefer trusted local HTTPS. If an HTTPS tunnel is needed, protect both frame uploads and frame reads with application authentication and short-lived sessions. Tunnel HTTPS by itself is not authentication.\n\nUse a random, single-use pairing secret with expiry. Exchange it for a scoped session; avoid secrets in logs, referrers, or publicly shared links. Protect any state-changing endpoints appropriately.\n\nRequest video only, with a user-tapped Start button. Include Stop Camera, a visible active indicator, and last-successful-upload status.\n\nDefault to a modest JPEG resolution and quality; allow a sharper frame when reading small text. Keep at most one upload in flight to avoid a stale-frame queue.\n\nAttach a monotonically increasing frame number and capture metadata. Record server receipt time and expose a local tool endpoint or file for the latest frame and its age. Use server-side sequencing for freshness rather than assuming the phone and computer clocks agree.\n\nA watcher command should wait for a frame captured after the requested action and settling interval, with a timeout. A delayed upload of an old capture must not count as proof of the new TV state.\n\nDo not confuse “a camera server is running” with “I have looked at the TV.” Actually read and inspect the frames in your action loop.\n\nRetain only the latest frame or a small short-lived buffer. Save selected evidence only when needed for this project, locally and outside Git. Delete temporary captures at cleanup.\n\nKeep the phone page foregrounded and awake where the browser allows it. Explain if I need to keep the display unlocked. Detect backgrounding, camera interruption, and stale frames; pause TV operations until feedback resumes.\n\nStop the camera tracks, revoke pairing, and shut down the service/tunnel at the end. Do not forward TV control ports to the internet.\n\nProve the watcher works by inspecting a frame and a later changed frame. If your agent environment cannot view images, state that limitation and give me the smallest step needed to use an image-capable environment. Do not fabricate visual verification.\n\nOn platforms with available device screenshots or mirroring, add those as a second feedback channel. Keep the camera useful for boot screens and external inputs. Do not try to bypass protected-video capture restrictions.\n\n4. Establish control and a reversible install path\n\nUse the physical remote for initial pairing or developer-mode setup when required. Give me the exact menu action for the detected model, then resume once it is complete.\n\nRecord current ordinary startup settings and how to return to the stock home screen. Inventory installed apps through available APIs. If full enumeration is unavailable, inspect the launcher and verify IDs individually; never present guessed IDs as discovered facts.\n\nInstall, launch, and uninstall a minimal test application before building the full interface. Confirm that stock apps, settings, and remote navigation remain accessible.\n\nVerify Developer Mode, the computer's correct Host PC IP, and any required TV restart. Do not assume my TV is already configured.\n\nSet up the current Samsung/Tizen tools and required certificate components for this computer and TV. Evaluate Samsung's agent tooling where appropriate.\n\nEstablish SDB connectivity. Use a Samsung TV signing profile appropriate for the target TV and required privileges; include its DUID where required. Keep signing credentials private and retain the author certificate needed for future updates.\n\nBuild and install a properly signed .wgt. Test uninstalling only our own test app.\n\nInvestigate ordinary local remote control using https://github.com/xchwarze/samsung-tv-ws-api or the reference project's remote tool. These are community implementations; verify the pairing flow and supported actions on this firmware, and keep their tokens private.\n\nImplement app launching through verified Tizen interfaces and actual installed app IDs. Validate each dock entry on the TV.\n\nPreserve Smart Hub and the normal Home button. Pin our app prominently and test available startup settings such as reopening the last app. Distinguish waking from standby from a full restart, and test returning after another streaming app was last used.\n\nDocument actual behavior. Do not claim that an installed Tizen app replaced Samsung's OS or permanently took over Home. Record any observed developer-app persistence or reinstallation requirements.\n\nAndroid TV / Google TV path\n\nConfirm the Android version, target device, and available developer options. Set up Android SDK platform tools and pair ADB through the supported USB or wireless workflow. Wireless pairing and connection ports can differ; discover them rather than assuming a universal port.\n\nHave me authorize the debugging prompt. Keep ADB on the trusted local network and revoke temporary debugging access when no longer needed.\n\nDiscover actual package names and launchable activities. Respect platform package-visibility rules when implementing app discovery.\n\nBuild a TV-ready APK with appropriate TV manifest entries, remote focus handling, and no touchscreen dependency. Add the proper HOME intent handling only if we are implementing a home launcher. Keep the signing key for consistent updates.\n\nCompare implementation options: native Android/Compose for TV, a suitable open-source launcher base, or a carefully tested web UI inside an Android shell. Choose based on device performance and the requested features.\n\nProjectivy installation, configuration and issue reference: https://github.com/spocky/miproja1. Do not assume this repository contains the full launcher source. Use it as a ready-made option or behavior reference, not an assumed source-code base.\n\nEvaluate https://github.com/Genymobile/scrcpy for additional visual feedback where supported. A black protected-video surface is not a reason to circumvent DRM.\n\nFirst run our home app as a normal app. Then use supported default-home selection or other documented, reversible options only when this device provides them. Explain any accessibility permission before enabling it.\n\nDo not run copied debloat scripts, disable the stock launcher or its fallback packages, remove system apps, or force a launcher replacement as part of this prompt. If ordinary defaults do not work, leave a reliable shortcut and document the limitation.\n\n5. Build the actual home screen\n\nDesign a polished full-screen 16:9 interface for viewing from a couch. Aim for the calm of a premium Apple TV or visionOS-inspired ambient display: spacious layout, architectural or landscape photography, convincing frosted surfaces, subtle highlights, restrained shadows, and clear hierarchy.\n\nAvoid dense dashboards, neon effects, excessive gradients, generic translucent rectangles, and mouse-only controls. Use blur only where it performs well on the actual rendering engine; provide a lightweight fallback. Make text and focus states legible over every background.\n\nCore features\n\nClock and date: use my timezone and locale, with an optional compact layout. It must work offline.\n\nWeather: show current conditions and a small forecast for my chosen one or two cities. Use an appropriate provider such as Open-Meteo after checking its current terms and limits. Cache results, update periodically, and show stale/offline state honestly. Do not request precise home location unnecessarily.\n\nStreaming dock: discover and display apps actually installed on my device, such as Netflix, YouTube, Apple TV, Plex, Prime Video, Disney+, or regional services. Use verified IDs/activities, actual launch behavior, and appropriate icons. Let me reorder or hide entries. Preserve native streaming apps and their playback experience.\n\nBackgrounds: curate a small set of images with permission for the intended reuse, record credits, and cache optimized copies. Include architecture, landscapes, interiors, coastlines, or twilight cityscapes. Add a remote-friendly selector. Animate only if smooth; support reduced motion and static backgrounds.\n\nOptional smart lights: discover the brand/model I actually have. For Govee, investigate officially supported LAN control before cloud access. Implement only the capabilities that device exposes: power, brightness, RGB, white temperature, and scenes where supported. Use presets such as Movie, Relax, Bright, and Ambient when they can be implemented accurately.\n\nIf lights need a local bridge, build a provider abstraction and explain which machine must remain on. Keep cloud credentials on the bridge/backend, never in the TV app. Hide unsupported controls or show a clear unavailable state. Finish the core home screen even if lighting is blocked.\n\n6. Make the remote experience excellent\n\nSupport directional navigation, Select/OK, Back, predictable initial focus, visible focus styling, and sensible key-repeat behavior. Closing an overlay must return focus to its opener. Ensure no screen traps the user, loses focus, or requires touch or a mouse.\n\nTest real remote input, app launching, return behavior, background selection, and light-panel navigation on the television. Use the camera loop after each meaningful action. Keep commands small enough to recover from unexpected screens; stop if visual feedback becomes stale.\n\n7. Repository, architecture, and future expansion\n\nUse my authenticated GitHub tooling to create a private repository for this project. If authentication needs me, give the exact sign-in step. Do not publish my implementation publicly without asking.\n\nOrganize the chosen platform's app, optional local bridge, shared integration code, temporary camera tools, and documentation clearly. Build only the platform we actually need. Commit meaningful progress with a proper .gitignore, a placeholder-only .env.example, and setup, usage, recovery, and rollback instructions.\n\nThe TV should display its clock, dock, and cached backgrounds without a cloud server or development computer. Weather can refresh online. Document any feature, such as lighting, that depends on a bridge.\n\nFuture architecture should allow a family-only phone PWA with a shared drawing pad, lighting controls, and voice commands such as “open Netflix” or “make the room darker.” Persist the latest drawing while the TV is offline. Plan for secure pairing and access control, but defer these features until the installed home screen works.\n\nDo not assume access to the TV remote's microphone. A later phone microphone flow is acceptable. Evaluate hosted services, including Fly.io if useful, only when there is a real need. Do not provision paid infrastructure or incur recurring costs without my approval.\n\n8. Authorization and boundaries\n\nI authorize read-only discovery of my devices on my local network, local dependency installation, writing code, running development servers, authorized pairing and normal remote commands, installing/removing our own developer applications, the paired camera session, and creating/pushing the private project repository.\n\nUse ordinary, reversible settings. Preserve the stock home screen and a clear recovery path.\n\nThis does not authorize firmware flashing, rooting, bootloader unlocking, hidden service/factory menus, factory resets, protected-system changes, disabling security/update services, removing system apps, blanket debloating, exposing local control ports publicly, or paid purchases. If a proposed route depends on something outside these boundaries, explain the exact blocker and a supported alternative first.\n\nAsk for my help only when needed for physical positioning, camera permission, credentials, pairing prompts, unavailable preferences, paid services, or a change outside this scope. Make routine engineering and visual decisions yourself. Continue independent work while waiting for an answer where possible.\n\n9. Acceptance checks and handoff\n\nPhase 1 is complete when:\n\nThe actual hardware/OS is identified and the chosen path is supported by evidence.\n\nThe private camera watcher works, fresh frames are inspected, and its Stop/cleanup path works.\n\nA custom app is installed and visually verified on the television.\n\nThe clock, selected weather locations, cached backgrounds, and installed-app dock work.\n\nReal remote navigation and overlay focus restoration work without traps.\n\nLighting works for supported capabilities, or a specific blocker is documented.\n\nStartup, standby wake, full restart, Home-button behavior, and returning from streaming apps have been tested and described accurately.\n\nNative apps and settings remain accessible; rollback is documented and the test-app uninstall path was verified.\n\nApproximate cold/warm launch times and observed idle behavior are recorded. Label estimates and unavailable metrics honestly.\n\nThe private repository contains reproducible setup instructions and no secrets or camera captures.\n\nAt handoff, provide the repository link, what works, selected private visual evidence, how to change backgrounds, lighting status, how to reopen our home screen, exact rollback steps, and any limitations. Stop temporary processes and the camera tunnel; revoke temporary access where appropriate without breaking needed runtime integrations.\n\nStart now: identify my TV and platform, prepare the workspace, and build the secure phone-camera watcher. Then follow the correct installation branch and keep iterating until the real TV result is verified.\n\nChecked October 25, 2026. These are research and implementation references, not a claim that every project works on every TV. Check the current README, supported versions, release source, license, and open issues before using one.\n\nPhone-camera tool: the core observation-loop idea. The version inspected accepts uploads without authentication; add authentication, expiry, Stop controls, and retention limits before using a tunnel.\n\nOpen-source Flutter launcher code with app categories and wallpapers.\n\nA possible source-code base. This is a fork of the original GitLab project; review its license and changes. Its stock-launcher-disabling recipe is outside the supplied prompt's scope.\n\nA ready-made customizable launcher, downloads, device configuration, and issue tracking.\n\nUseful as a ready-made option or behavior reference. This repository is not presented as the full launcher source; don't assume it can be forked into a custom app. Avoid its advanced engineering/rooting features in this workflow.\n\nStart with Glass Home for Samsung, or the Android TV samples/FLauncher for a custom Android build. Use the control and camera tools to test on the actual device. Keep optional media clients and advanced community tooling separate from the core home-screen project.", "url": "https://wpnews.pro/news/build-a-beautiful-tv-home-screen-with-ai-samraajs-prompt-camera-watcher-workflow", "canonical_source": "https://gist.github.com/Samraaj/9c3d02af9a4d8573c38fc8ba2db0bf66", "published_at": "2026-10-25 21:45:16+00:00", "updated_at": "2026-10-26 03:12:13.229289+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "generative-ai"], "entities": ["Samraaj", "Samsung", "Tizen", "Android TV", "GitHub", "victaphu", "Glass Home", "Reddit"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/build-a-beautiful-tv-home-screen-with-ai-samraajs-prompt-camera-watcher-workflow", "markdown": "https://wpnews.pro/news/build-a-beautiful-tv-home-screen-with-ai-samraajs-prompt-camera-watcher-workflow.md", "text": "https://wpnews.pro/news/build-a-beautiful-tv-home-screen-with-ai-samraajs-prompt-camera-watcher-workflow.txt", "jsonld": "https://wpnews.pro/news/build-a-beautiful-tv-home-screen-with-ai-samraajs-prompt-camera-watcher-workflow.jsonld"}}