v1.4.1 · stable
Litr · The Browser

A small browser
that lets go of what you're not using.

Litr is a native web browser for macOS, written in Rust. GPUI — the framework Zed is drawn with — draws the tabs and the toolbar; the system's own WebKit renders the pages. Tabs run down a sidebar you can hide, only the ones you are using stay in memory, and the rest come back exactly where you left them. Ads and trackers are blocked before they are fetched. About 4 MB, no accounts, and Litr itself sends nothing about you or your browsing.

Free, every feature, no licence. macOS 13 or later on Apple silicon, signed with a Developer ID and notarized by Apple, so it opens without warnings.

litr Norse myth: the dwarf Thor kicked into Balder's funeral pyre — small, and quickly in the fire.

+
Pinned
M Mail
D Docs — WebKit
N News
R Recipes
F Forum thread
2 unloaded · 0 MB
docs.rs/gpui
ad blocked before it was fetched

Vertical tabs · a pinned tab · two unloaded · a glass rim in the page's colour

Download · v1.4.1

Download for macOS

One disk image. Open it, drag Litr to Applications. The build is signed with a Developer ID and notarized by Apple, so Gatekeeper lets it through without a warning — and the checksum is beside it so you can check what you got. After that, Litr keeps itself up to date.

macOS · Apple Silicon

DMG

litr-1.4.1-arm64.dmg

3.8 MB

sha256 79feec220834475c98ba0180e7244236118aef6b79ef44b13db33ffd48a7e2c0

Apple silicon, macOS 13 or later. That is what Litr is built and tested on, so no Intel build is offered. On macOS 14 and later background pages are fully suspended; on 13 they are only throttled.

S.01 — What it does

Only what you use
stays in memory.

Every loaded tab is a web view, and web views are heavy. Litr keeps as few as it can: a restored tab has none until you show it, at most three stay loaded, and a background tab you have not touched for five minutes is let go. Coming back costs a reload, not your place — the scroll position and the back/forward history are kept. On top of that Litr stays under a memory limit, 1 GB by default, and shows what every tab costs. At rest Litr uses about 75–85 MB.

Vertical tabs in a sidebar you can hide

Tabs run down the side with the site's initial on its own colour. Drag to reorder, middle-click to close, ⌘1–⌘9 to jump. ⌘S hides the sidebar and gives the page the full width. Links that open a new window open as a tab beside the one they came from, and sign-in pop-ups keep working because the page that opened them can still reach them.

Pinned tabs

Mail, a dashboard, whatever you always keep open: pin it with ⇧⌘P or drag it onto the Pinned section. Closing a pinned tab does not remove it — it is unloaded and goes back to the address it was pinned with. Pinned tabs are restored at launch even when tab restore is off.

Tabs that unload and come back

Three tabs stay loaded (one to six in settings), the least recently used go first, and a background tab is unloaded after five minutes (one minute to an hour, or never). When macOS reports memory pressure, every background tab goes at once. Over the memory limit (1 GB by default) the heaviest background tab goes first, and tabs playing sound or in a call are never unloaded. An unloaded tab keeps its address, title, colour, zoom, back/forward history and scroll position, and a small picture of it shows while it reloads, so switching still feels instant; unsaved form input can be lost, and the docs say so.

Ads and trackers blocked by default

EasyList and EasyPrivacy, about 117,000 rules, built into the app and compiled into WebKit's content blocker — so an ad request is never made, rather than made and hidden. Litr never downloads filter lists and tells no one what it blocked — a shield in the address bar tells you: the trackers stopped on the page, and a week's worth across every tab. If a site breaks, Block ads is one switch in settings; per-site exceptions are not there yet.

YouTube ads too

YouTube serves ads from the same servers as its videos, so blocking by address does not work there. On YouTube, and on YouTube players embedded elsewhere, a small script removes ad data before the player sees it, hides ad slots and the "ad blockers are not allowed" dialog, and mutes and skips any ad that still starts. YouTube changes often; when it does, the fix comes in a Litr release.

A frameless window with a glass edge

No title bar. The sidebar, toolbar and a thin rim around the page are translucent glass over whatever is behind the window, tinted with each site's theme colour, and the chrome's text turns dark or light to stay readable. Focus mode (⇧⌘F) hides everything but the page and its rim. Prefer solid chrome? Glass edge is one switch.

Command palette and the whole keyboard

⌘K opens a palette over the page: switch to an open tab, run any command with its shortcut beside it, open an address or search, or pick a page from your history. Every command is in the menu bar with a shortcut, so the mouse is optional. The palette is its own small window that exists only while it is open.

Rooms, one per project

A room is a set of tabs for one client or project: admin, staging, docs, the issue tracker. ⌥⌘1–9 switches the whole set, and the room you leave is unloaded, so only one room uses memory. A room can open its web apps as you enter it. When tabs pile up, Tidy Tabs suggests groups that belong together — sorted by topic on your Mac — to move into a room of their own, and finds tabs open twice.

An assistant that stays on your Mac

⌥⌘A opens a pane beside the page: summarize it, ask it a question, or translate it. It runs on Apple's on-device model and translation, so neither the page nor your question is sent anywhere, and it costs nothing. It needs macOS 26 or later with Apple Intelligence; the model is small, and the pane says it can be wrong.

Reader mode that frees memory

⇧⌘R, or Aa in the toolbar on an article, turns it into plain, comfortable reading, light or dark with the system. It drops the original page with its scripts and ads, so a news article that took 130 MB takes about 60. Press it again to go back to the page, where you left it.

Forget tabs and automatic sign-out

⇧⌘N opens a violet forget tab: no history, no saved session, no cookies from your other tabs, and whatever sites store is deleted when it closes. For sites you stay signed in to, a schedule can sign you out — delete the site's cookies and data — once you have been away from it for 15 minutes, say, or every day at five.

Tabs that know your dev server

Tabs on localhost and .test sites show their port, a red dot when the server stops answering, and reload by themselves when it is back. Point one at the project folder — Litr finds it from the process serving the port — and saving a file reloads the page. ⌥⌘R shows the page at phone, tablet and desktop widths side by side, scrolling and navigating together.

Your default browser, with link rules

Make Litr the default and links from Mail, Slack and everything else open in it. Link rules send a site's links somewhere particular: Jira links to the Jira web app, a client's links to their room, your bank to a forget tab. A rule covers a site and its subdomains, and the most specific one wins.

Passwords, saved and filled in

Sign in and Litr offers to save the password, two-step sign-ins like Google's included; next time, click your account and it is filled in. It never fills in by itself, and only on the site the password belongs to. Passwords live in your Mac's keychain, and showing one asks for Touch ID.

Bring everything over

Import bookmarks, history and passwords from Chrome, Arc, Dia, Brave, Edge, Vivaldi, Opera, Safari and Firefox — and Arc's spaces become rooms with their pinned tabs. Litr reads the other browser's files on your Mac; nothing is uploaded, and importing twice adds nothing twice. Bookmarks live in a searchable library: ⌘D to add, ⌘K to find.

Web apps with their own logins

File → Create Web App turns the current site into an app in ~/Applications, with its own Dock icon made from the site's icon, its own window without browser chrome, and its own cookies, logins, history and settings — signed in to one account in Litr and another in the app. Litr keeps the web apps it made up to date.

Scheduled tabs

Unload a heavy dashboard in an hour, or bring your mail up every morning at eight. ⌥⌘S schedules the current tab once or daily. A daily schedule missed while the Mac slept still runs up to an hour late, and is skipped after that — so opening the lid does not fire a morning's worth of old schedules at once.

History, find in page, downloads

Searchable history (⌘Y), grouped by site, where every word must match. Find in page (⌘F) as you type. Per-tab zoom that survives unloading. Downloads to ~/Downloads with progress in the sidebar and macOS's quarantine flag kept, so Gatekeeper still checks a downloaded app before it opens.

Updates that check before they swap

Once a day Litr asks elyracode.com for one small file naming the newest version. Install downloads it and checks it matches its published SHA-256, is signed with Litr's Developer ID and is the version the feed named — then moves the old app aside, not over, and puts it back if the swap fails. Nothing restarts until you choose Relaunch.

No telemetry, no accounts

No analytics, no crash reporting, no sync, no sign-in. The only request Litr makes on its own behalf is that daily update check, which carries nothing about you or your browsing — and it can be turned off. Tabs, history and settings live in one SQLite file on your Mac.

S.02 — Worth knowing

The engine is Apple's.
Everything around it is small.

01

About 4 MB, because the engine ships with macOS

Litr does not bundle a rendering engine. Pages are drawn by the WebKit that is already on every Mac and updated with it; Litr is the single Rust binary around it — GPUI drawing the chrome with Metal, the system SQLite holding your tabs and history. About a megabyte of it is the ad-blocking rules.

02

Blocking makes pages lighter, not slower

WebKit compiles the rules into bytecode every page process reads straight from disk, so blocking costs little memory. Compiling 117,000 rules takes a few seconds and a lot of memory once, so Litr does it in a short-lived helper that exits when it is done. Pages opened in those first seconds load unblocked and reload when the rules are ready — the docs say so rather than hope you miss it.

03

Litr is the dwarf in Balder's pyre

At Balder's funeral, as Thor hallowed the pyre with his hammer, a dwarf called Litr ran in front of his feet, and Thor kicked him into the fire. Small, underfoot, and gone in a flash seemed a fair description of a browser that tries to stay out of the way — hence the flame on the icon.

S.03 — Price & privacy

Free.
No licence, no account, no reminder.

Litr costs nothing and asks for nothing: there is no licence key, no checkout, no sign-in and no sheet asking whether it has been useful. Every feature on this page is in the download.

Developed by Wirelabs AS in Norway. The About panel (Litr → About Litr) shows the version you are running, this page, and the update status.

Sends
Nothing of its own, beyond one daily request for latest.json that carries nothing about you. Turn it off in settings and Litr asks nothing at all.
Stores
On your Mac, and nowhere else: tabs, history, schedules and settings in one SQLite file; cookies and site data in WebKit's own folders.
Installs
Only what it has checked: the published checksum, Litr's Developer ID signature and the version. A download that fails any of them is not installed, and the About panel says why.
Colophon — Get the browser

Keep every tab.
Carry only three.

Download Litr, open the tabs you always have open, and watch the ones you are not using let go of their memory — and come back where you left them.

Litr · v1.4.1 Built in Norway · MMXXVI