<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: John Wilson</title>
    <description>The latest articles on DEV Community by John Wilson (@vuthis).</description>
    <link>https://dev.to/vuthis</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4132212%2F9a76e147-0647-439c-8734-ebb222a03f0b.png</url>
      <title>DEV Community: John Wilson</title>
      <link>https://dev.to/vuthis</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vuthis"/>
    <language>en</language>
    <item>
      <title>Show a PDF on a TV or Projector From Your Phone (No HDMI)</title>
      <dc:creator>John Wilson</dc:creator>
      <pubDate>Sat, 31 Oct 2026 10:19:00 +0000</pubDate>
      <link>https://dev.to/vuthis/show-a-pdf-on-the-meeting-room-tv-without-hdmi-or-casting-2l7k</link>
      <guid>https://dev.to/vuthis/show-a-pdf-on-the-meeting-room-tv-without-hdmi-or-casting-2l7k</guid>
      <description>&lt;p&gt;&lt;em&gt;How we put sprint review slides on the office TV from a phone.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;To show a PDF on the meeting room TV without HDMI or casting, open &lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;vuthis.com&lt;/a&gt; in the TV's web browser, connect your phone with the code that appears, and pick the PDF. It suits sprint review slides, a release checklist, an architecture diagram exported as a PDF, or a one-page agenda for retro. We built V U This because we kept losing the first ten minutes of every review to adapters, dongles and screen sharing that would not start.&lt;/p&gt;

&lt;p&gt;It shows what you pick, such as a PDF, photos, a line of text, a clock or a timer, not your whole screen, and it is not for streaming video or films.&lt;/p&gt;

&lt;h2&gt;
  
  
  What you need
&lt;/h2&gt;

&lt;p&gt;A meeting room TV or projector with a web browser and the internet. Samsung smart TVs have Internet, LG has Web Browser, a Fire TV Stick has the Silk Browser, and most projectors with a smart system have one too. If the room's TV has no browser, a Fire TV Stick in the HDMI port gives it one. You also need a phone, tablet or laptop with the slides saved as a PDF. Nothing is installed on either the TV or the phone.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step by step
&lt;/h2&gt;

&lt;p&gt;Step 1. On the TV, open the web browser and go to &lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;vuthis.com&lt;/a&gt;. A short code and a QR code appear on the screen.&lt;/p&gt;

&lt;p&gt;Step 2. Connect your device. On a phone or tablet, scan the QR code with the camera, or open &lt;a href="https://vuthis.com/r" rel="noopener noreferrer"&gt;vuthis.com/r&lt;/a&gt; and type the code. On a laptop, PC, MacBook or Chromebook, open &lt;a href="https://vuthis.com/r" rel="noopener noreferrer"&gt;vuthis.com/r&lt;/a&gt; in the browser, type the code and press Connect.&lt;/p&gt;

&lt;p&gt;Step 3. Tap Document, then Choose a PDF and pick the file from Files. Choose Fit page to see each slide whole, or Fit width to fill the width of the screen, and pick a Background. The preview on your phone shows exactly what the TV will show.&lt;/p&gt;

&lt;p&gt;Step 4. Tap Show now, or click it on a laptop. The first page goes up on the TV.&lt;/p&gt;

&lt;p&gt;Step 5. Use Next and Previous on your phone to turn the pages as you talk. When the review is over you can lock the phone, and the last page stays on the screen.&lt;/p&gt;

&lt;h2&gt;
  
  
  Show a PDF on a projector from your phone
&lt;/h2&gt;

&lt;p&gt;The same steps work on a projector. Open vuthis.com in the projector’s browser, or in the browser on the computer already connected to it. Scan the code with your phone, choose the PDF and tap Show now. Next and Previous stay on your phone.&lt;/p&gt;

&lt;p&gt;For the complete workflow, see &lt;a href="https://vuthis.com/display-pdf-on-tv" rel="noopener noreferrer"&gt;how to display a PDF on a TV or projector&lt;/a&gt;. For a laptop controller, open &lt;a href="https://vuthis.com/r" rel="noopener noreferrer"&gt;vuthis.com/r&lt;/a&gt;, enter the display’s code and choose the file there.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connect a laptop to a TV without an HDMI cable
&lt;/h2&gt;

&lt;p&gt;When the TV has its browser open, the laptop can control the presentation through a web page. Save PowerPoint, Keynote or Google Slides as a PDF, connect using the TV’s code, then choose the PDF and click Show now. Only the selected slides go up, so your email and chat stay on the laptop.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://dev.to/vuthis/screen-sharing-without-screen-mirroring-a-phone-controlled-tv-display-built-on-websockets-and-a-qr-7hb"&gt;browser-display technical walkthrough&lt;/a&gt; explains how the separate display and controller work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tips
&lt;/h2&gt;

&lt;p&gt;Save the slides as a PDF before the meeting. In Google Slides that is File, Download, PDF, and PowerPoint and Keynote can both save or export a PDF. Only PDF documents can be shown, so do this once and keep the file on your phone.&lt;/p&gt;

&lt;p&gt;Leave the TV on the same input during the meeting, so nobody switches away from the slides by accident. Your phone can stay on mobile data, so nobody needs the office Wi-Fi password, and only the pages you pick appear: chat notifications and messages stay on the phone.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;p&gt;Does the phone need to be on the same Wi-Fi as the TV? No. The TV needs the internet to open &lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;vuthis.com&lt;/a&gt;, and your phone can use mobile data.&lt;/p&gt;

&lt;p&gt;Can I show a PowerPoint or Google Slides file directly? No. Save or download it as a PDF first, then pick that PDF with Choose a PDF.&lt;/p&gt;

&lt;p&gt;Can I use it for a live demo or a recorded video? No. It shows the pages, photos or text you choose rather than mirroring a screen, so for a live demo of the app you are building, plug the laptop in for that part.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;p&gt;Put sprint review slides, checklists and diagrams on the meeting room TV from a phone or laptop, with no HDMI cable, no casting and nothing to install. It's easy with &lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;vuthis.com&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keep a checklist for the next review
&lt;/h2&gt;

&lt;p&gt;Download the &lt;a href="https://archive.org/details/pdfs-slides-photos-on-tv-without-hdmi-handbook" rel="noopener noreferrer"&gt;visual PDF and projector handbook&lt;/a&gt; for the connection and page-control steps. The &lt;a href="https://github.com/vuthis/vuthis-screen-guides" rel="noopener noreferrer"&gt;public presentation resources&lt;/a&gt; include a PowerPoint checklist, a laptop-controller walkthrough and editable slides you can share with the team.&lt;/p&gt;

&lt;p&gt;For a laptop-first route, see &lt;a href="https://vuthis.hashnode.dev/laptop-to-tv-without-hdmi-present-a-pdf-in-your-browser" rel="noopener noreferrer"&gt;present a PDF on TV without HDMI from your laptop&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>agile</category>
      <category>meetings</category>
      <category>tools</category>
    </item>
    <item>
      <title>Nothing to pair: show things on a TV without Bluetooth</title>
      <dc:creator>John Wilson</dc:creator>
      <pubDate>Sat, 24 Oct 2026 06:49:00 +0000</pubDate>
      <link>https://dev.to/vuthis/nothing-to-pair-show-things-on-a-tv-without-bluetooth-172f</link>
      <guid>https://dev.to/vuthis/nothing-to-pair-show-things-on-a-tv-without-bluetooth-172f</guid>
      <description>&lt;p&gt;Walk up to a screen, and a few seconds later it is showing what you chose. No settings menu, no list of nearby devices, no waiting for the TV to appear and then disappear again. The screen and the phone simply find each other, and the thing you came to show is up while everyone is still finding a seat.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;The screen opens vuthis.com in its web browser. That page becomes the display: it shows a short code and a QR code, and waits.&lt;/p&gt;

&lt;p&gt;Your phone, laptop or tablet opens the remote by scanning the QR code, or by typing the code at &lt;a href="https://vuthis.com/r" rel="noopener noreferrer"&gt;vuthis.com/r&lt;/a&gt;. The two are now linked through the web, not through Bluetooth, not through the local network and not through a cable. That is why the phone can be on mobile data, in the next room or in another country, and why a TV on a guest network is no problem at all.&lt;/p&gt;

&lt;p&gt;On the remote, choose what to show: photos, a PDF, a line of large text, an announcement, a clock, a timer, a counter, a QR code or a queue of several things in order. The remote shows a preview, and when you tap Show now the display page draws it full screen. The remote sends the display what to draw, rather than copying your screen, so only the thing you chose appears. Your notifications stay on your phone.&lt;/p&gt;

&lt;p&gt;Nothing is installed on either side. The display is a browser tab and the remote is a browser tab. No Bluetooth, no casting and no apps. It just works through your browser.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a web page works everywhere
&lt;/h2&gt;

&lt;p&gt;Pairing depends on both devices speaking the same language: the same brand, the same standard, the same network. A web page depends on a browser, and almost every screen has one. Smart TVs, laptops on projectors, mini PCs behind monitors, old tablets on a stand and the screens in most meeting rooms all qualify.&lt;/p&gt;

&lt;p&gt;The code is short on purpose, with no letters that could be mistaken for numbers, so it is quick to type on any keyboard and easy to read out across a room. One remote holds a screen at a time, so nobody can take over a screen someone else is using.&lt;/p&gt;

&lt;p&gt;Whatever is showing stays up after the remote disconnects. You can lock the phone, take a call or leave the room, and the screen carries on with the photos, the clock or the timer you picked.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where it fits
&lt;/h2&gt;

&lt;p&gt;In a meeting room, anyone can put a PDF on the screen from their phone without a cable, an adapter or an app, and leave nothing paired behind when they go.&lt;/p&gt;

&lt;p&gt;At home, guests can show their holiday photos on the living room TV without joining your Wi-Fi or connecting to your TV.&lt;/p&gt;

&lt;p&gt;In a classroom, a teacher can put a timer or a worksheet on the projector from a phone, on mobile data, even when the school network blocks casting.&lt;/p&gt;

&lt;p&gt;At an event, a laptop on a projector, a TV on a stand and a tablet at the registration desk can each show something different, each just a browser tab, with nothing to set up beyond typing an address.&lt;/p&gt;

&lt;p&gt;In a hotel room or a holiday let, the TV can show your photos or a PDF of the plans for tomorrow without anything paired to someone else's television.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;Show things on a TV without Bluetooth or pairing codes&lt;/a&gt;, connect your phone to a smart TV without an app, and display photos and PDFs on any screen with a browser, all without casting or screen mirroring. It's easy with &lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;vuthis.com&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>showdev</category>
      <category>productivity</category>
      <category>ux</category>
    </item>
    <item>
      <title>Screen sharing without screen mirroring: a phone-controlled TV display built on WebSockets and a QR code</title>
      <dc:creator>John Wilson</dc:creator>
      <pubDate>Sat, 19 Sep 2026 00:13:57 +0000</pubDate>
      <link>https://dev.to/vuthis/screen-sharing-without-screen-mirroring-a-phone-controlled-tv-display-built-on-websockets-and-a-qr-7hb</link>
      <guid>https://dev.to/vuthis/screen-sharing-without-screen-mirroring-a-phone-controlled-tv-display-built-on-websockets-and-a-qr-7hb</guid>
      <description>&lt;p&gt;Every meeting room, classroom and church hall has a screen, and every screen has a browser. Yet putting one thing on that screen, a PDF, a few photos, a countdown timer, still means hunting for an HDMI cable or mirroring your whole phone to the room, notifications included.&lt;/p&gt;

&lt;p&gt;I built &lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;V U This&lt;/a&gt; to fix that with the smallest possible stack. Here is how it works and what I learned.&lt;/p&gt;

&lt;h2&gt;
  
  
  The idea: the screen is a dumb client, the phone is the remote
&lt;/h2&gt;

&lt;p&gt;Open &lt;strong&gt;vuthis.com&lt;/strong&gt; on any TV, projector laptop or Raspberry Pi. The page creates a display session and shows a QR code that encodes the full controller URL, plus a short code as a fallback. Scan it with a phone and the phone becomes the remote. Whatever you pick on the phone, the screen shows: a photo slideshow, a PDF with page controls, large text, an announcement, a clock in any time zone, a countdown / count-up / count-to timer, a tally counter or a Wi-Fi QR code.&lt;/p&gt;

&lt;p&gt;Only the chosen content ever reaches the screen. That is the whole point: it is screen &lt;em&gt;sharing&lt;/em&gt; without screen &lt;em&gt;mirroring&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a browser and not an app
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Every smart TV, Chromecast (browser mode), Fire TV (Silk), signage player and projector laptop already has a browser. Zero install on either side.&lt;/li&gt;
&lt;li&gt;No pairing, no same-Wi-Fi requirement, no AirPlay/Miracast compatibility matrix. Works over 4G.&lt;/li&gt;
&lt;li&gt;A QR code is the fastest possible pairing UX. People already know what to do with it.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The stack
&lt;/h2&gt;

&lt;p&gt;Boring on purpose: a plain web stack, WebSockets between the screen and the phone, PDFs rendered in the browser, Stripe for passes, and a hosted service at vuthis.com. No app store, no installer on either end. That is the whole point: the only thing a screen needs is a browser.&lt;/p&gt;

&lt;p&gt;The display page is deliberately simple: it subscribes to its session and renders whatever it is told to show. The controller is &lt;em&gt;space-adaptive&lt;/em&gt;: on a phone it shows the essentials, on a tablet or laptop it surfaces previews, queueing and context. Same code, more room, more controls.&lt;/p&gt;

&lt;h2&gt;
  
  
  Things that bit me
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;TV browsers are old.&lt;/strong&gt; Samsung Tizen and LG webOS ship Chromium builds several versions behind. No optional chaining in some, flaky &lt;code&gt;requestFullscreen&lt;/code&gt;. Transpile, and test on a real TV.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Screensavers and sleep.&lt;/strong&gt; A display page that goes black after ten minutes is useless. The Wake Lock API helps where supported; otherwise a tiny looping video keeps some TVs awake.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PDFs on a 4K screen.&lt;/strong&gt; Rendering with pdf.js at device pixel ratio matters; "fit page" vs "fit width" need to be one tap on the phone, not a zoom gesture.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Timers must survive reconnects.&lt;/strong&gt; A display that drops Wi-Fi for a minute and comes back must show the right number, not the number it last saw. We test this by being cruel to real TVs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free tiers need limits that feel fair.&lt;/strong&gt; One screen, 60 minutes, 20 photos, one PDF, no account. Paid passes ($5.99 for 24h up to $299.99 a year) add multiple screens, 250 MB storage and an automatic playlist mode that turns a TV into simple digital signage.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Where people actually use it
&lt;/h2&gt;

&lt;p&gt;Teachers put a full-screen countdown timer on the classroom projector and worksheets on the board from a phone. Coworking spaces show the agenda on the meeting-room TV. Reception desks run a digital notice board. Event organisers show the schedule and the guest Wi-Fi as a QR code. Families show phone photos on the living-room TV without a casting device.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practical guides: PDFs, projectors and timers
&lt;/h2&gt;

&lt;h3&gt;
  
  
  How to connect a laptop to a TV without an HDMI cable
&lt;/h3&gt;

&lt;p&gt;Open vuthis.com in the TV’s browser, then enter its code at vuthis.com/r on the laptop. Choose a PDF or selected photos and click Show now. For PowerPoint, Keynote or Google Slides, save the deck as a PDF first. The &lt;a href="https://vuthis.com/display-pdf-on-tv" rel="noopener noreferrer"&gt;guide to displaying a PDF or presentation on TV&lt;/a&gt; covers page controls and the full setup.&lt;/p&gt;

&lt;h3&gt;
  
  
  How to connect a phone to a projector and show a PDF
&lt;/h3&gt;

&lt;p&gt;Open the display page in the projector’s browser, or in the browser on the computer already driving the projector. Scan its code with your phone, choose Document, select the PDF and tap Show now. Next and Previous stay on the phone. This gives you a &lt;a href="https://vuthis.com/display-pdf-on-tv" rel="noopener noreferrer"&gt;PDF on a projector controlled from your phone&lt;/a&gt;, without mirroring notifications to the room.&lt;/p&gt;

&lt;h3&gt;
  
  
  Put a 10 minute timer on the TV or classroom projector
&lt;/h3&gt;

&lt;p&gt;Choose Timer, select Down, enter 10:00 and add a label such as Break ends in. Show it full screen, then pause, resume or restart from the controller. The &lt;a href="https://vuthis.com/full-screen-countdown-timer" rel="noopener noreferrer"&gt;full-screen countdown timer guide&lt;/a&gt; explains the controls. The same workflow works for a five-minute stand-up, a classroom activity or a household task.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;Open &lt;a href="https://vuthis.com" rel="noopener noreferrer"&gt;vuthis.com&lt;/a&gt; on a screen, scan, show. No sign-up. Feature guides: &lt;a href="https://vuthis.com/show-photos-on-tv" rel="noopener noreferrer"&gt;show photos on a TV&lt;/a&gt;, &lt;a href="https://vuthis.com/display-pdf-on-tv" rel="noopener noreferrer"&gt;display a PDF on a TV&lt;/a&gt;, &lt;a href="https://vuthis.com/full-screen-countdown-timer" rel="noopener noreferrer"&gt;full-screen countdown timer&lt;/a&gt;, &lt;a href="https://vuthis.com/digital-notice-board-on-tv" rel="noopener noreferrer"&gt;digital notice board on a TV&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If it fails on a specific TV browser, I would love to know which one. And if you find it useful, a link from your blog, README or wherever you post helps a bootstrapped two-person team more than you would think.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Elsewhere:&lt;/em&gt; the non-technical version of this story is on Medium, &lt;a href="https://medium.com/@john_36585/screen-mirroring-has-a-privacy-problem-a-qr-code-fixes-it-141b36d594b4" rel="noopener noreferrer"&gt;Screen mirroring has a privacy problem. A QR code fixes it.&lt;/a&gt; The launch announcement is on &lt;a href="https://www.prlog.org/13171611-this-lets-anyone-control-tv-or-meeting-room-screen-from-their-phone-with-no-app-or-cable.html" rel="noopener noreferrer"&gt;PRLog&lt;/a&gt;. We post updates on &lt;a href="https://bsky.app/profile/v-u-this.bsky.social" rel="noopener noreferrer"&gt;Bluesky&lt;/a&gt; and &lt;a href="https://mastodon.social/@vuthis" rel="noopener noreferrer"&gt;Mastodon&lt;/a&gt;, and there is a &lt;a href="https://flipboard.com/@johnwilson4kdr/put-it-on-the-big-screen-6d9cfob2y" rel="noopener noreferrer"&gt;Flipboard magazine&lt;/a&gt; of guides.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>showdev</category>
      <category>javascript</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
