A keyboard-driven inbox for your LinkedIn messages.
inƒlow opens in a browser tab and syncs your conversations to your own machine, so you can read, reply, and archive at the speed you type. Just the messages — none of the feed.
Free and open source·Chrome, Edge, Arc, Brave
Keyboard
Your hands never leave the home row.
Every action in the inbox is one key. Move, star, archive, reply, undo — a week of messages goes by without reaching for the trackpad.
Muscle memory, borrowed.
The bindings come from the mail clients you already know — J and
K to move, E to archive,
Z to undo. Destructive actions are always undoable, so you can
triage fast without being careful.
Press ? anywhere in the app for the full sheet.
Navigation
- Move selection downJ
- Move selection upK
- Open conversation↵
- Go backEsc
- Focused / Other12
- Archived / Spam34
- Go to starredG S
- Go to unreadG U
Actions
- Archive / move to FocusedE
- Move to OtherO
- Star conversationS
- Toggle read / unreadU
- Mark unread & go back⇧U
- Open LinkedIn profileP
- Delete conversationD
- Mark as spam!
Compose
- ReplyR
- Send message↵
- Send + archive⌘↵
- New line⇧↵
Global
- Compose new messageC
- Search/
- Command palette⌘K
- Undo last actionZ
- Show all shortcuts?
Local-first
There is no inƒlow server.
No account to create, no backend to trust, no analytics. inƒlow reads your messages with the LinkedIn session already in your browser and stores them in IndexedDB on your own machine, partitioned per account. The developer cannot see your data, because there is nowhere for it to go.
- No selling or sharing of data
- No advertising or profiling
- No telemetry or crash reporting
- Uninstalling deletes everything
Search
Find it the way you remember it.
Local search filters as you type, across every message already on your machine — then hands off to LinkedIn's own search when you need to go further back.
is:unreadis:readis:starredis:group
has:drafthas:attachmentfrom:name
after:2026-01-01before:2026-01-01
newer:7dolder:30d
Autocomplete built in
Start typing a filter and finish it with Tab or Enter. The rest of the query stays free text.
Matches, highlighted
Results show the matched words in context inside the preview line, not just the sender's name.
Deeper on demand
Paginated server-side search reaches conversations that haven't been backfilled yet.
Sync
Already there when you open it.
A background service worker keeps a live stream open and backfills history in priority order, so the inbox is warm before you arrive.
Realtime, then polling
Server-sent events deliver new messages the moment they land, with a 30-second poll underneath as a safety net.
Send before the network
Messages appear instantly and reconcile on confirmation. Actions taken offline queue up and replay when you're back.
Notifications that land right
Native Chrome notifications carry the sender's photo, and clicking one opens that exact thread.
Everything else
The rest of the inbox.
Messaging
- Send, edit, and unsend
- File attachments and paste-to-attach images
- Emoji reactions and read receipts
- Reply to a specific message
- Drafts saved as you type
- Emoji shortcodes —
:smile
Inbox
- Focused, Other, Archived, Spam
- Star, archive, spam, delete
- One-click unread filter
- Undo for destructive actions
- Multiple LinkedIn accounts, separate databases
- Compact avatar rail on narrow windows
Thread
- Grouped bubbles with time separators
- Image lightbox and file downloads
- Audio and video attachments
- Shared-post previews
- Light, dark, and system themes
AI assist — optional
- Reply suggestions for incoming messages
- Inline autocomplete while composing
- Bring your own Google Gemini key
- Entirely off until you add one
Under the hood
- Manifest V3, built with WXT
- React 19
- Dexie / IndexedDB with live queries
- Zustand for state
- Tailwind CSS v4
For the curious
- Debug panel with live sync progress
- Diagnostic API report
- Database stats and reset controls
- Configurable backfill window
- Pause and resume sync
Add it
Open the listing and hit Add to Chrome. Pin the icon while you're there — inƒlow opens from the toolbar.
Be signed into LinkedIn
In any tab. inƒlow uses the session you already have; there is no inƒlow account to create.
Open it
Click the icon and the inbox fills itself, newest conversations first, while history backfills behind you.