inflow
An experimental Chrome extension that reimagines LinkedIn messaging with a keyboard-driven, local-first UI.
File Explorer
- release.yml
- add-to-chrome.svg
- screenshot-dark.png
- screenshot-light.png
- screenshot-shortcuts.png
- chrome-web-store-release.md
- App.tsx
- global.css
- main.tsx
- client.ts
- conversations.ts
- encode.ts
- messages.ts
- posts.ts
- typeahead.ts
- types.ts
- cookies.ts
- session.ts
- event-handler.ts
- mark-read-suppression.ts
- sse-client.ts
- merge-conversation.ts
- pending-guard.ts
- poller.ts
- prefetch-posts.ts
- reconcile-messages.ts
- repair-participants.ts
- sweep-deleted.ts
- sync-backfill.ts
- sync-coordinator.ts
- sync-discovery.ts
- sync-engine.ts
- action-queue.ts
- db-ready.ts
- diagnostic.ts
- index.ts
- messages.ts
- open-app-tab.ts
- send-queue.ts
- update-check.ts
- app.html
- m11.jpg
- m18.jpg
- m22.jpg
- m29.jpg
- m3.jpg
- m32.jpg
- m36.jpg
- m45.jpg
- m52.jpg
- m55.jpg
- m64.jpg
- m71.jpg
- m75.jpg
- m87.jpg
- w14.jpg
- w17.jpg
- w21.jpg
- w25.jpg
- w33.jpg
- w37.jpg
- w41.jpg
- w44.jpg
- w49.jpg
- w56.jpg
- w61.jpg
- w68.jpg
- w72.jpg
- w8.jpg
- w85.jpg
- w90.jpg
- icon-128.png
- icon-16.png
- icon-48.png
- cws-oauth.cpython-314.pyc
- build-changelog.mjs
- cws-oauth.py
- setup-cws-secrets.sh
- m11.jpg
- m29.jpg
- m32.jpg
- m36.jpg
- m45.jpg
- w14.jpg
- w17.jpg
- w25.jpg
- w68.jpg
- w72.jpg
- .gitignore
- base.css
- changelog.html
- index.html
- privacy.html
- vercel.json
- CommandPalette.tsx
- commands.ts
- AISetupModal.tsx
- AuthGate.tsx
- ConfirmDeleteModal.tsx
- ConfirmSpamModal.tsx
- DebugPanel.tsx
- ErrorBoundary.tsx
- GroupAvatar.tsx
- ImageLightbox.tsx
- IncomingMessageToast.tsx
- PendingNavigation.tsx
- ShortcutOverlay.tsx
- SyncStatusIndicator.tsx
- Toast.tsx
- UpdateBanner.tsx
- VideoLightbox.tsx
- NewMessageComposer.tsx
- ConversationContextMenu.tsx
- ConversationList.tsx
- ConversationListHeader.tsx
- ConversationRow.tsx
- SwipeableRow.tsx
- ComposeBox.tsx
- EmojiAutocomplete.tsx
- MessageBubble.tsx
- SharedPostCard.tsx
- ThreadHeader.tsx
- ThreadView.tsx
- database.ts
- useAISession.ts
- useAutocomplete.ts
- useBackgroundMessage.ts
- useCachedImage.ts
- useCollapsedSidebar.ts
- useConversations.ts
- useDbGeneration.ts
- useKeyboard.ts
- useOptimisticAction.ts
- useRemoteSearch.ts
- useReplySuggestions.ts
- useResizableSidebar.ts
- useSendObjectUrlReaper.ts
- useThread.ts
- shortcuts.ts
- ai-settings.ts
- autocomplete-prompt.ts
- bridge.ts
- conversation-urn.ts
- debug-log.ts
- demo-data.ts
- demo-mode.ts
- emoji-search.ts
- feature-flags.ts
- inbox-filters.ts
- list-window.ts
- message-dedup.ts
- navigate-to-conversation.ts
- notification-icon.ts
- pending-navigation.ts
- prompt-utils.ts
- reply-suggestions-prompt.ts
- sanitize-url.ts
- search-filters.ts
- send-object-urls.ts
- storage.ts
- store-install.ts
- sync-settings.ts
- transient-error.ts
- update.ts
- voyager-image.ts
- voyager-normalizer.ts
- ui-store.ts
- bridge.ts
- conversation.ts
- message.ts
- profile.ts
- voyager.ts
- factories.ts
- voyager-responses.ts
- test-db.ts
- action-queue.test.ts
- database.test.ts
- event-handler.test.ts
- merge-conversation.test.ts
- pending-guard.test.ts
- sync-backfill.test.ts
- sync-coordinator.test.ts
- sync-discovery.test.ts
- sync-engine.test.ts
- chrome.ts
- fetch.ts
- 01-coordinator-null-db.test.ts
- 02-db-generation.test.ts
- 03-toast-tab-nav.dom.test.tsx
- 04-debugpanel-bridge.dom.test.tsx
- 05-autocomplete-injection.test.ts
- 06-sync-settings.test.ts
- 07-demo-search-shape.test.ts
- 08-requeue-failcount.test.ts
- 09-ui-store-node.test.ts
- 10-error-boundary.dom.test.tsx
- 100-store-migration-banner.dom.test.tsx
- 101-inbound-video-reference-message.dom.test.tsx
- 11-conversation-urn.test.ts
- 12-send-queue.test.ts
- 13-sanitize-url.test.ts
- 14-batch8-low.test.ts
- 15-clear-suppression.test.ts
- 16-message-dedup.test.ts
- 17-category-move.dom.test.tsx
- 18-message-bubble-memo.dom.test.tsx
- 19-ai-session-singleton.dom.test.tsx
- 20-pick-artifact.test.ts
- 21-search-filters.test.ts
- 22-send-object-urls.test.ts
- 23-participant-repair.test.ts
- 24-conversations-filter.dom.test.tsx
- 25-reply-suggestions-prompt.test.ts
- 26-remote-search.dom.test.tsx
- 27-react-message.dom.test.tsx
- 28-recall-message.dom.test.tsx
- 29-delete-conversation.dom.test.tsx
- 30-edit-message.dom.test.tsx
- 31-ui-store.dom.test.tsx
- 32-reply-suggestions.dom.test.tsx
- 33-autocomplete.dom.test.tsx
- 34-realtime-critical.test.ts
- 35-draft-send-archive.dom.test.tsx
- 36-send-archive-queue-order.test.ts
- 37-optimistic-pending-guards.dom.test.tsx
- 38-create-conversation-empty-id.test.ts
- 39-typecheck.test.ts
- 40-keyboard-guards.dom.test.tsx
- 41-sanitize-url-bypass.test.ts
- 42-lightbox-cached-image.dom.test.tsx
- 43-fetch-messages-preserves-sse-fields.test.ts
- 44-composebox-draft-failure.dom.test.tsx
- 45-reply-suggestions-new-message.dom.test.tsx
- 46-retry-double-click.dom.test.tsx
- 47-linkify-punctuation.dom.test.tsx
- 48-avatar-error-reset.dom.test.tsx
- 49-demo-incoming-stop.dom.test.tsx
- 50-autocomplete-abort-on-unmount.dom.test.tsx
- 51-merge-profiles-transaction.test.ts
- 52-fetch-all-unhandled-rejection.test.ts
- 53-edited-message-duplicate.test.ts
- 54-edited-indicator.dom.test.tsx
- 55-reaction-pop.dom.test.tsx
- 56-azerty-keyboard-shortcuts.dom.test.tsx
- 57-backfill-server-clock.test.ts
- 58-sparse-page-merge.test.ts
- 59-stale-page-flags.test.ts
- 60-sse-redelivery-old-message.test.ts
- 61-delete-tombstone.test.ts
- 62-group-sender-misattribution.test.ts
- 63-sse-dedup-fallback.test.ts
- 64-durable-pending-guard.test.ts
- 65-serialized-category-mutations.test.ts
- 66-move-clears-archived.dom.test.tsx
- 67-sync-state-init-and-queue-category.test.ts
- 68-discovery-tick-bounds.test.ts
- 69-server-deletion-sweep.test.ts
- 70-recalled-message-reconcile.test.ts
- 71-merged-thread-mark-read.dom.test.tsx
- 72-create-conversation-clears-tombstone.test.ts
- 73-fetch-post-ttl.test.ts
- 74-badge-focused-filter.test.ts
- 75-dash-update-staleness.test.ts
- 76-send-response-canonical.test.ts
- 77-live-recall-event.test.ts
- 78-recalled-tombstone-entities.test.ts
- 79-open-app-tab-drag-retry.test.ts
- 80-cross-device-star-sync.test.ts
- 81-display-dedup-near-time.test.ts
- 82-conversation-list-windowing.test.tsx
- 83-blank-list-on-boot-race.test.tsx
- 84-resizable-sidebar.dom.test.tsx
- 85-notification-click-opens-conversation.dom.test.tsx
- 86-patch-conversation-noop-detection.test.ts
- 87-realtime-conversation-read-diagnostic.test.ts
- 88-mark-read-receipt-logging.test.ts
- 89-inbound-read-reconcile-per-conversation.test.ts
- 90-transient-network-errors-warn-level.test.ts
- 91-spam-no-native-notification.test.ts
- 92-send-keeps-composer-focus.dom.test.tsx
- 93-thread-narrow-layout.dom.test.tsx
- 94-avatar-rail-narrow-window.dom.test.tsx
- 95-notification-window-focus.test.ts
- 96-demo-mode-native-notifications.dom.test.tsx
- 97-message-link-word-break.dom.test.tsx
- 98-conversation-context-menu.dom.test.tsx
- 99-swipe-actions.dom.test.tsx
- smoke.dom.test.tsx
- sync-status-indicator.dom.test.tsx
- autocomplete-prompt.test.ts
- changelog-site-sync.test.ts
- debug-log.test.ts
- encode.test.ts
- mark-read-suppression.test.ts
- member-id-from-urn.test.ts
- notification-icon.test.ts
- prompt-utils.test.ts
- store-build-manifest.test.ts
- sync-settings.test.ts
- transient-error.test.ts
- update.test.ts
- voyager-normalizer.test.ts
- dom-setup.ts
- setup.ts
- .gitignore
- CHANGELOG.md
- CLAUDE.md
- LICENSE
- package-lock.json
- package.json
- PRIVACY.md
- README.md
- tsconfig.json
- vitest.config.ts
- wxt.config.ts
# Use via CDN
jsDelivrjsDelivr serves any public GitHub repository as a CDN with zero setup. Pick a version and a file to get a ready-to-paste link and snippet.
Command Glossary
Commands referenced in this DOCs, explained below.
git clone
View Details ▼
git clone
Clone an existing repository.
git clone {{remote_repository_location}} {{path/to/directory}}
Clone an existing repository into a new directory (the default directory is the repository name):
git clone --recursive {{remote_repository_location}}
Clone an existing repository and its submodules:
git clone {{[-n|--no-checkout]}} {{remote_repository_location}}
Clone only the `.git` directory of an existing repository:
git pull
View Details ▼
git pull
Fetch branch from a remote repository and merge it to local repository.
git pull
Download changes from default remote repository and merge it:
git pull {{[-r|--rebase]}}
Download changes from default remote repository and use fast-forward:
git pull {{remote_name}}
Download changes from a specific remote repository:
git push
View Details ▼
git push
Push commits to a remote repository.
git push
Send local changes in the current branch to its default remote counterpart:
git push {{remote_name}} {{local_branch}}
Send changes from a specific local branch to its remote counterpart:
git push {{[-u|--set-upstream]}} {{remote_name}} {{local_branch}}
Send changes from a specific local branch to its remote counterpart, and set the remote one as the default push/pull target of the local one:
npm install
View Details ▼
npm install
Install Node packages.
npm {{[i|install]}}
Install dependencies listed in `package.json`:
npm {{[i|install]}} {{package_name}}@{{version}}
Download a specific version of a package and add it to the list of dependencies in `package.json`:
npm {{[i|install]}} {{package_name}} {{[-D|--save-dev]}}
Download the latest version of a package and add it to the list of dev dependencies in `package.json`:
npm run
View Details ▼
npm run
Run a script.
npm run
List available scripts:
npm run {{script_name}}
Run a script:
npm run {{script_name}} -- {{argument}} {{--option}}
Pass arguments to a script:
npm version
View Details ▼
npm version
Bump a node package version.
npm version
Display version:
npm version minor
Bump the minor version:
npm version {{version}}
Set a specific version:
