<p>Each Litr release so far has had a theme. 1.0 was small. 1.4 was the way work actually is: rooms, developer tabs, privacy on a timer. 1.5 is about something quieter. A browser is where your reading happens, and most browsers forget almost all of it the moment you close the tab.</p><p>So this release is about remembering: what you read, what you highlighted, the tab you closed a second too soon. It's also about the opposite, keeping things out of the way: sites during a focus session, sound from a tab you've forgotten, the energy a background tab is burning.</p><p>Before the tour, one number to update. We've said "under 4 MB" twice now, so here it is honestly. The 1.5 disk image is 4.2 MB, and the update Litr downloads for itself is 3.9 MB. A release this size cost about 300 KB. That's still roughly a fiftieth of a Chromium download, and we'd rather tell you the real figure than keep rounding down.</p><h2>Remember what you read</h2><p><strong>The problem.</strong> You read something last Tuesday: an article, a docs page, a forum answer that finally explained the thing. You can remember roughly what it said, but not its title, where you found it, or which of the forty tabs you had open that day it was in. History searches titles and URLs, and the title was "Re: Re: question about".</p><p><strong>Find a page by what it said.</strong> The command palette now searches the text of pages you've read, and shows the words in context:</p><pre><code class="language-text">  ⌘K  lifetime of a borrowed reference in async
      ▸ "…a reference held across an .await must outlive the future, which is why
         the compiler asks for 'static here…"   — users.rust-lang.org · Tuesday
</code></pre><p><strong>Ask about what you read.</strong> In the assistant (<code>⌥⌘A</code>), choose <strong>Pages I've read</strong> and ask a question. Apple's on-device model answers from the pages that match, and names them, so you can check the answer against the page it came from.</p><p>This only works if it's trustworthy, so here are the rules. The text stays on your Mac, in the same local database as your tabs. It leaves out forget tabs, sign-in pages and local sites, so your localhost and your bank are never indexed. It can be turned off for a single site or everywhere. Nothing is sent to a service, because there is no service. The model that answers is the one already on your Mac.</p><h2>Highlights that come back</h2><p>Select some text and press <code>⇧⌘E</code> to highlight it, and add a note if you like. When you come back to the page, the highlight is still there, even if the page has changed a little. Litr finds the passage again rather than trusting a character offset that one edited paragraph would break.</p><p>Find them all in the command palette or <strong>Show All Highlights</strong>, and copy them as Markdown:</p><pre><code class="language-markdown">&gt; A reference held across an `.await` must outlive the future.
— users.rust-lang.org/t/…  ·  *note: this is why my handler needed 'static*
</code></pre><p>That's a reading list you can paste straight into your notes, from the browser you were already reading in.</p><h2>The tab you closed a second too soon</h2><p><code>⇧⌘T</code> brings back the last 25 closed tabs, where they were, with their history and scroll position. The palette lists them too. The one exception is forget tabs, which are never kept, because being forgotten is their whole purpose.</p><h2>Look without opening</h2><p>Two features for the moment before you decide whether something deserves a tab.</p><p><strong>Peek.</strong> <code>⌥</code>-click a link and it opens over the page, without a new tab. Read it, then <code>Esc</code> to close it, or <code>⌘↵</code> to keep it as a tab. That's the link in a README you only wanted to glance at, or the "see also" you'll probably ignore. Peeking means your sidebar no longer fills up with tabs you only meant to look at.</p><p><strong>Split view.</strong> <code>⌘\</code> puts two tabs side by side, such as the docs next to the thing you're building, or the ticket next to the pull request. Click into a side to work in it, drag the divider to resize, and press <code>⌘\</code> again to go back to one tab.</p><h2>Just ask</h2><p>The command palette now takes plain words:</p><pre><code class="language-text">  ⌘K  close all YouTube tabs
  ⌘K  move the GPUI tabs to a room called GPUI
</code></pre><p>The on-device model turns the sentence into Litr's own actions, and Litr shows you what it will do before it does it. "Close all YouTube tabs" lists the six tabs it means, and you confirm. A browser that acted on its own reading of your sentence would sooner or later close the wrong six tabs. This one checks with you first.</p><h2>Sites, one at a time</h2><p><strong>View → Settings for This Site…</strong> holds the things you only want for one site:</p><ul><li><p><strong>Allow ads</strong>, for the small site you'd like to support.</p></li><li><p><strong>Stop video and sound that start by themselves</strong>, for the news site that auto-plays.</p></li><li><p><strong>Darken</strong> a site that has no dark mode of its own.</p></li></ul><p>A site's settings cover its subdomains. Zoom is remembered per site, so the site whose text is too small opens at your zoom in every tab. And you can rename a tab (✎, a double-click, or <strong>Tabs → Rename Tab…</strong>), which is handy for pinned tabs whose page title is something like "Dashboard – Overview – Home".</p><h2>Sound that stays where you put it</h2><ul><li><p><strong>Now Playing</strong> in the sidebar: when another tab is playing video or sound, you can play, pause, skip 15 seconds, or jump to it without hunting for the tab.</p></li><li><p><code>⌥⌘P</code> plays or pauses from anywhere in Litr.</p></li><li><p>Picture in picture with <code>⌃⌘P</code>, and automatically when you switch away from a playing video. It goes back into the page when you return. You can turn that off.</p></li><li><p>Mute a tab by clicking ♪ in the sidebar.</p></li></ul><h2>Focus, with a way out</h2><p><strong>Focus Session…</strong> holds the sites you choose closed for 25, 50 or 90 minutes. Tabs on them are put away, except any that are playing sound, so your music keeps going. The time left shows in the sidebar.</p><p>What makes it usable is the way out. <strong>Open for 5 Minutes</strong> is there for when you really do need that site for work. <strong>Add 10 Minutes</strong> and <strong>End Session</strong> are always one click away. A focus tool with no exits is one you turn off on the second day and never turn back on. At the end you get a short summary of the sites you held off, and sessions carry on across a restart.</p><h2>Energy you can see</h2><p>A browser is usually the biggest thing on your battery, and usually you can't see why. Now you can:</p><ul><li><p>Tabs that are working hard show it in the sidebar, <code>⚡42%</code>, and the memory meter shows Litr's total.</p></li><li><p>A tab eating energy in the background for a whole minute gets a strip that offers to unload it or leave it be.</p></li><li><p><strong>Save energy on battery</strong> is on by default. On battery or in Low Power Mode, background tabs are unloaded sooner, fewer stay loaded, and a tab burning energy in the background is unloaded for you.</p></li></ul><h2>Developer tabs, again</h2><p>1.4 taught tabs on <code>localhost</code>, <code>.test</code> and <code>.local</code> to show their port and reload when the server came back. 1.5 adds:</p><ul><li><p><strong>Errors at a glance.</strong> A developer tab counts script errors, files that didn't load and unhandled promise rejections, and shows <code>⚠3</code> in the sidebar. Click it to see each one with file and line. You find out the page is broken without opening the inspector to check.</p></li><li><p><strong>Open the project in your terminal or code editor</strong>, from <strong>Developer Tab…</strong>, the <strong>Tabs</strong> menu or the palette. With eTerm 0.9.2 that opens a new tab in the project folder, which is exactly what this feature was waiting for.</p></li><li><p><strong>Copy as cURL</strong>: the page's request, cookies included, ready to paste into a terminal. Treat what you paste like a password. Those cookies are your logged-in session.</p></li><li><p><strong>JSON pages</strong> show as a tree you can fold, with colours and a <strong>Raw</strong> view, on any site. An API response opened in a tab becomes something you can actually read.</p></li></ul><h2>And a fix we owe you</h2><p>If you updated to 1.5.0 and found your pinned tabs missing, or bookmarks you added in 1.4.1 gone, 1.5.1 fixes it. An older copy of Litr had marked the database as older than it really was, and newer versions then stopped updating it. Litr now checks and repairs every table and column when it starts, whatever version the database claims, and it never marks a database as older. If it can't update its database, it tells you, instead of quietly carrying on without saving.</p><p>One honest caveat: bookmarks that were never saved can't come back. If you added some in 1.4.1, import them again from your other browser. We're sorry about that one.</p><h2>Why all of this, still</h2><p>Most of 1.5 runs on things your Mac already has. Searching what you've read uses the same local database as your tabs. The plain-words palette and the assistant use Apple's on-device model. Peek, split view, picture in picture and the JSON viewer are WebKit doing what WebKit does. That's how the browser gained a memory, a focus mode and an energy monitor for about 300 KB, and why none of it needed a server.</p><p>It's also why the one request Litr makes is still the same one: once a day, "is there a newer version?". You can still turn it off. Everything else Litr now remembers stays on your Mac.</p><h2>Get it</h2><p>Litr 1.5.2 is at <a target="_blank" rel="noopener noreferrer nofollow" href="https://elyracode.com/litr">elyracode.com/litr</a>. It's signed and notarized, for Apple silicon Macs on macOS 13 or later, and the assistant features need macOS 26. If you already have Litr, it's offering you the update now, and it will check the signature before replacing anything.</p><p>Read something. Highlight one sentence. Next week, press <code>⌘K</code> and type three words you remember from it.</p>