Knit

CommunicationAndroidGPL-3.0Verified publisher

Offline, serverless, end-to-end-encrypted mesh messenger for Android.

Latest v2.4.0 · · Androidby KnitWritten in KotlinWebsitegetknit/knitRSSPublisher verified · github.com/getknit/knit ·

Release activity

Release activity — 12 releases across 11 days since Jul 20, 2026. Each cell is one day; darker means more releases that day. Nothing is recorded before Jul 20, 2026. Older weeks are hidden at this screen width.
JunJulAugSep
SundayNo releases on Jul 26, 2026No releases on Aug 2, 2026No releases on Aug 9, 2026No releases on Aug 16, 2026No releases on Aug 23, 2026No releases on Aug 30, 2026No releases on Sep 6, 2026
Monday1 release on Jul 20, 2026No releases on Jul 27, 2026No releases on Aug 3, 2026No releases on Aug 10, 2026No releases on Aug 17, 20261 release on Aug 24, 20261 release on Aug 31, 2026No releases on Sep 7, 2026
TuesdayNo releases on Jul 21, 2026No releases on Jul 28, 2026No releases on Aug 4, 2026No releases on Aug 11, 20261 release on Aug 18, 2026No releases on Aug 25, 2026No releases on Sep 1, 2026
Wednesday1 release on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026No releases on Aug 12, 2026No releases on Aug 19, 2026No releases on Aug 26, 20262 releases on Sep 2, 2026
Thursday1 release on Jul 23, 2026No releases on Jul 30, 2026No releases on Aug 6, 20261 release on Aug 13, 2026No releases on Aug 20, 20261 release on Aug 27, 2026No releases on Sep 3, 2026
FridayNo releases on Jul 24, 20261 release on Jul 31, 2026No releases on Aug 7, 2026No releases on Aug 14, 2026No releases on Aug 21, 2026No releases on Aug 28, 2026No releases on Sep 4, 2026
SaturdayNo releases on Jul 25, 2026No releases on Aug 1, 2026No releases on Aug 8, 2026No releases on Aug 15, 20261 release on Aug 22, 2026No releases on Aug 29, 2026No releases on Sep 5, 2026

12 releases since Jul 20, 2026, busiest day 2

Changelog

v2.5.0-alpha.1Pre-release

Knit 2.5.0-alpha.1 (pre-release)

Changed 1
  • LoRa bridge is now enabled by default

From Knit

This is 2.5.0-alpha.0 with one thing changed: the LoRa bridge is switched on.

Pair a Meshtastic board over Bluetooth from the radios screen and the Nearby room and your direct messages start riding LoRa too, well past the range of the radios in a phone. Group chats do not. Nothing happens until you turn it on.

That is what this build is for. The LoRa side has never had a long run on real hardware, so expect it to be rough, and nothing on F-Droid carries it.


Pre-release — a test build, not a shipping release. It is not on F-Droid, is not marked Latest, and is not what F-Droid's Binaries: URL points at. Install it only if you mean to test it.

knit-2.5.0-alpha.1.apksha256:76fe07ad87e5c63fdf756c211396178dea415f6374b1a098d24d3e3ff3084426

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c) — the same key every off-Play Knit build carries — so it installs straight over an existing F-Droid, GitHub or mesh-shared install without an uninstall, and keeps your messages.

Going back to the current stable is not possible in place: Android refuses the versionCode downgrade, so reverting costs an uninstall and everything stored on the device with it. The next stable release will update over this build normally.

CI verified this APK is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — the same reproducibility gate stable releases pass.

mapping-2.5.0-alpha.1.txt.gz is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.5.0-alpha.1 went
v2.5.0-alpha.0Pre-release

Knit 2.5.0-alpha.0 (pre-release)

Added 1
  • React with any emoji by long-pressing a message and tapping the "+" beside quick reactions to browse or search the whole set, with the quick row remembering frequently used emojis
Changed 2
  • Knit no longer sends screen content to Android's content-capture service for app content suggestions
  • Chats now display what happened in them with quiet centered lines marking contact name or photo changes and group renames or creation with no notification, unread badge, or chat list bump
Fixed 2
  • Knit no longer gets stuck showing a blank screen when opened at the moment it was closing
  • Phones that only relayed messages no longer count as nearby in the online dot, chat list, group picker, and nearby count

From Knit

Added
  • React with any emoji. Long-press a message and tap the "+" beside the quick reactions to browse or search the whole set, and the quick row starts remembering what you actually use instead of the same six forever.
Changed
  • Knit no longer feeds what is on screen to Android's content-capture service (the "app content" suggestions). An end-to-end-encrypted messenger has no business handing its screen text to another process, and long lists got smoother for it.
  • Chats now say what happened in them. A quiet centered line marks a contact changing their name ("Sam is now Sam Vimes") or photo and a group being renamed or created, with no notification, no unread badge and no bump up your chat list.
Fixed
  • Knit no longer gets stuck showing a blank screen. Opening it at the moment it was closing could leave it drawing nothing, with no way out but force-stopping it; it now notices and rebuilds its own screen.
  • Phones that only relayed your messages no longer count as nearby. The online dot, chat list, group picker and nearby count now show only what your own radios can currently see.

Pre-release — a test build, not a shipping release. It is not on F-Droid, is not marked Latest, and is not what F-Droid's Binaries: URL points at. Install it only if you mean to test it.

knit-2.5.0-alpha.0.apksha256:f48681795c0636d024c043a743a1e148930b7c5cb71346d2cae60ecd951f2097

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c) — the same key every off-Play Knit build carries — so it installs straight over an existing F-Droid, GitHub or mesh-shared install without an uninstall, and keeps your messages.

Going back to the current stable is not possible in place: Android refuses the versionCode downgrade, so reverting costs an uninstall and everything stored on the device with it. The next stable release will update over this build normally.

CI verified this APK is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — the same reproducibility gate stable releases pass.

mapping-2.5.0-alpha.0.txt.gz is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.5.0-alpha.0 went
v2.4.0Latest

Knit 2.4.0

Added 4
  • Record voice notes by holding the microphone in a chat
  • Optional Internet relays to store messages for delivery when phones are out of radio range
  • Share contact links when two people are too far apart to scan each other's code
  • Device aliases to distinguish phones with users sharing the same name
Fixed 2
  • Phones shutting down Knit seconds after opening
  • Crash when Android restarts the mesh out of sight

From Knit

Voice notes, and optional Internet relays for when nobody is in radio range.

Knit still works with no internet and no account. But a message to someone out of radio range used to wait for the two phones, or a chain of phones between them, to meet. Turn on Internet relays and Knit parks a sealed copy on a relay server, which hands it over the next time the other phone connects. It stays off until you switch it on, and a one-time explanation spells out what a relay can see — your IP address, when you send, roughly how much — and what it cannot: your messages, who you are talking to, or who else is in a group. Direct messages, group chats and photos all travel this way.

Hold the microphone in a chat to record a voice note. Too far apart to scan each other's code? Share a contact link instead. Two people with the same name are now told apart by the alias Knit gives every device.

Fixed: phones that shut Knit down seconds after opening, and a crash when Android restarts the mesh out of sight.


knit-2.4.0.apksha256:4aa65596385ccb28d64f6d934e6d2ec114d81f601ce7d05f3d9f52d54e4da0d7

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c), the key pinned in F-Droid's AllowedAPKSigningKeys. CI verified this file is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — so F-Droid's rebuild-and-compare check resolves to exactly this APK.

mapping-2.4.0.txt.gz is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.4.0 went
v2.3.1

Knit 2.3.1

Changed 1
  • Slow down Wi-Fi Aware availability check attempts and give up on a radio that keeps refusing, then pick it up again if it becomes usable
Fixed 1
  • Fix Knit disappearing seconds after opening on phones whose Wi-Fi chip will not run Wi-Fi Aware

From Knit

Fixes Knit disappearing seconds after you open it, on phones whose Wi-Fi chip will not run Wi-Fi Aware.

Some phones report Wi-Fi Aware as available and then refuse to hand it over while Wi-Fi is connected. Knit kept asking every three seconds, forever, and each attempt cost the system a little memory it never got back — so Android eventually stopped the app for asking too often, within a minute of opening it, over and over, with nothing in the logs to explain why.

Knit now slows those attempts down and gives up on a radio that keeps refusing, then picks it up again if Wi-Fi Aware becomes usable. Bluetooth carried the mesh the whole time, which is why messages still went through on affected phones.


knit-2.3.1.apksha256:3a962ff0247b8c8c6b04534d67f13835489331922ae50df525e4d1c3b9894743

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c), the key pinned in F-Droid's AllowedAPKSigningKeys. CI verified this file is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — so F-Droid's rebuild-and-compare check resolves to exactly this APK.

mapping-2.3.1.txt.gz is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.3.1 went
v2.3.0

Knit 2.3.0

Added 5
  • Forward secrecy for direct messages and group chats, where keys are dropped as conversations progress
  • Encrypted delivery receipts and reactions instead of being readable by relaying phones
  • Camera feature accessible by long-pressing the attach button to take photos without leaving the chat
  • Message info accessible by long-pressing a message to see delivery time and reactions
  • On-device crash recording that is redacted and stored locally for manual review
Fixed 2
  • Saving a received photo to gallery no longer writes unopenable files
  • Profile edits made just after first contact no longer stay invisible to the other phone for hours

From Knit

Forward secrecy for direct messages and group chats, encrypted receipts and reactions, and a camera inside the chat.

Conversations between updated phones now re-key as they go and drop the old keys, so someone who records traffic today and gets hold of a phone later cannot read the earlier messages. Group chats gain the same property. A chat with a phone on an older version keeps working, and moves over once everyone updates. Delivery receipts and reactions are now sealed too, instead of readable by any phone relaying them.

Long-press the attach button to take a photo without leaving the chat, or a message for "Message info" — when it was delivered, and who reacted with what. Crashes are now recorded on the device, redacted, for you to read and report yourself; nothing is uploaded.

Fixed: saving a received photo to your gallery wrote an unopenable file, and a profile edit made just after first contact could stay invisible to the other phone for hours.


knit-2.3.0.apksha256:c28adcd16bf767a7a252949b8796a2d5e9d81189fcf0605e0d6c72c36b08f601

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c), the key pinned in F-Droid's AllowedAPKSigningKeys. CI verified this file is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — so F-Droid's rebuild-and-compare check resolves to exactly this APK.

mapping-2.3.0.txt.gz is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.3.0 went
v2.3.0-alpha.1Pre-release

Knit 2.3.0-alpha.1 (pre-release)

Added 10
  • Direct messages between updated phones are now forward-secret, deriving key material from a prekey in your profile, re-keying as the conversation progresses, and dropping old keys
  • Group chats gain forward secrecy with each member driving their own key chain and handing its current seed to others inside encrypted direct messages
  • Delivery receipts and reactions are now encrypted instead of crossing the mesh readable by relaying phones
  • Internet relays can be turned on to park sealed message copies on relay servers for delivery when recipients are out of radio range
  • Settings screen for relays lists configured relays, allows adding and removing them, and reports connection status
  • Group chats and photos travel over relays without the relay learning that a group exists or who is in it
Changed 2
  • Chats with phones on older versions remain compatible using the previous encryption scheme, with groups falling back until all members update
  • Profile entry in the overflow menu is now called Settings
Fixed 1
  • A configured relay can no longer flood the app's memory by holding only requested data, ignoring unrequested relay data, and treating relay size limits as claims to be capped

From Knit

Forward secrecy for direct messages and group chats, encrypted delivery receipts and reactions, and optional Internet relays for when nobody is in radio range.

Added
  • Direct messages between updated phones are now forward-secret. Each conversation derives its own key material from a prekey published in your profile, then re-keys as the conversation goes back and forth, and drops the old keys. Someone who records traffic today and gets hold of a phone later cannot read the earlier messages.
  • Group chats gain the same property. Every member drives their own key chain and hands its current seed to the others inside encrypted direct messages. A group's info screen says whether the group is running the new scheme or still waiting on somebody to update.
  • Delivery receipts and reactions are encrypted. Until now they crossed the mesh readable by any phone relaying them, so an onlooker could tell when a message reached you, and who reacted to which message with what. They now travel sealed and look like ordinary messages on the wire.
  • Knit can now use Internet relays, which you turn on yourself. Knit remains a messenger that works with no internet and no account, but a message to somebody out of radio range used to wait for the two phones, or a chain of phones between them, to meet. With relays on, Knit parks a sealed copy on a relay server, which hands it over the next time the other phone connects. A one-time explanation spells out what a relay can see — your IP address, when you send, and roughly how much — and what it cannot: your messages or photos, who you are talking to, or who else is in a group.
  • A Settings screen for relays lists the ones you use, adds and removes them, and reports each one as connected, still connecting, or why it refused. Knit ships with one relay already listed and unused; it stays inert until you turn the feature on, and removing it sticks.
  • Group chats travel over relays as well as direct messages, without anyone learning from the relay that a group exists or who is in it.
  • Photos travel over relays too, in sealed pieces. A photo waits while a phone that can carry it is still in radio range, so an ordinary in-person exchange never touches a relay. Where a relay cannot take it — no photo support, or the photo is larger than any relay in your list will hold — the message says "Nearby only" rather than reporting a failure: it still arrives over Wi-Fi or Bluetooth as it always did.
  • Changes to your name, status, or photo now reach people you have only ever met across a relay. They previously spread by radio alone, so such a contact kept whatever it saw when you were last in range.
  • A conversation says how it is being carried. A globe appears beside the double tick when the other phone answered over the internet, and beside a message that arrived that way; the connection header says when the radios are dark and a relay is carrying the conversation. The Nearby room is exempt by design — it is public and unencrypted, so it is never uploaded, and says so.
  • Diagnostics gains an Internet relays section: what has been sent and received over them, photo pieces moved, photos left to the radios, and any errors a relay reported.
Changed
  • Chats with a phone on an older version keep working, on the previous encryption scheme. A group falls back the same way while any one member has not updated, and moves over on its own once everyone has.
  • The Profile entry in the overflow menu is now called Settings, since the screen also holds settings that are not about you, such as content filtering and the relay switch.
Fixed
  • A relay you have configured can no longer flood the app's memory. Knit now holds only what it actually asked a relay for, ignores anything else the relay volunteers, and treats the relay's stated size limits as a claim to be capped rather than a fact. Relays were always untrusted with the contents of your messages; now they are untrusted with how much of your phone they can use.

Pre-release — a test build, not a shipping release. It is not on F-Droid, is not marked Latest, and is not what F-Droid's Binaries: URL points at. Install it only if you mean to test it.

knit-2.3.0-alpha.1.apksha256:792dfefec12bf3d807f04aa517c3f99c39a350d8dc9c778530d05474b5b07108

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c) — the same key every off-Play Knit build carries — so it installs straight over an existing F-Droid, GitHub or mesh-shared install without an uninstall, and keeps your messages.

Going back to the current stable is not possible in place: Android refuses the versionCode downgrade, so reverting costs an uninstall and everything stored on the device with it. The next stable release will update over this build normally.

CI verified this APK is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — the same reproducibility gate stable releases pass.

mapping-2.3.0-alpha.1.txt.gz is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.3.0-alpha.1 went
v2.3.0-alpha.0Pre-release

Knit 2.3.0-alpha.0 (pre-release)

Added 10
  • Direct messages between updated phones are now forward-secret, deriving key material from prekeys and re-keying as the conversation progresses while dropping old keys
  • Group chats gain forward secrecy with each member driving their own key chain and sharing its current seed in encrypted direct messages
  • Delivery receipts and reactions are now encrypted instead of readable on the mesh
  • Internet relays can be enabled to deliver messages to phones out of radio range by parking sealed copies on relay servers
  • Settings screen for relays that lists configured relays, allows adding and removing them, and reports connection status
  • Group chats and photos can travel over relays without the relay learning that a group exists or who is in it
Changed 2
  • Chats with phones on older versions continue working on the previous encryption scheme with fallback until all members update
  • The Profile entry in the overflow menu is now called Settings

From Knit

Forward secrecy for direct messages and group chats, encrypted delivery receipts and reactions, and optional Internet relays for when nobody is in radio range.

Added
  • Direct messages between updated phones are now forward-secret. Each conversation derives its own key material from a prekey published in your profile, then re-keys as the conversation goes back and forth, and drops the old keys. Someone who records traffic today and gets hold of a phone later cannot read the earlier messages.
  • Group chats gain the same property. Every member drives their own key chain and hands its current seed to the others inside encrypted direct messages. A group's info screen says whether the group is running the new scheme or still waiting on somebody to update.
  • Delivery receipts and reactions are encrypted. Until now they crossed the mesh readable by any phone relaying them, so an onlooker could tell when a message reached you, and who reacted to which message with what. They now travel sealed and look like ordinary messages on the wire.
  • Knit can now use Internet relays, which you turn on yourself. Knit remains a messenger that works with no internet and no account, but a message to somebody out of radio range used to wait for the two phones, or a chain of phones between them, to meet. With relays on, Knit parks a sealed copy on a relay server, which hands it over the next time the other phone connects. A one-time explanation spells out what a relay can see — your IP address, when you send, and roughly how much — and what it cannot: your messages or photos, who you are talking to, or who else is in a group.
  • A Settings screen for relays lists the ones you use, adds and removes them, and reports each one as connected, still connecting, or why it refused. Knit ships with one relay already listed and unused; it stays inert until you turn the feature on, and removing it sticks.
  • Group chats travel over relays as well as direct messages, without anyone learning from the relay that a group exists or who is in it.
  • Photos travel over relays too, in sealed pieces. A photo waits while a phone that can carry it is still in radio range, so an ordinary in-person exchange never touches a relay. Where a relay cannot take it — no photo support, or the photo is larger than any relay in your list will hold — the message says "Nearby only" rather than reporting a failure: it still arrives over Wi-Fi or Bluetooth as it always did.
  • Changes to your name, status, or photo now reach people you have only ever met across a relay. They previously spread by radio alone, so such a contact kept whatever it saw when you were last in range.
  • A conversation says how it is being carried. A globe appears beside the double tick when the other phone answered over the internet, and beside a message that arrived that way; the connection header says when the radios are dark and a relay is carrying the conversation. The Nearby room is exempt by design — it is public and unencrypted, so it is never uploaded, and says so.
  • Diagnostics gains an Internet relays section: what has been sent and received over them, photo pieces moved, photos left to the radios, and any errors a relay reported.
Changed
  • Chats with a phone on an older version keep working, on the previous encryption scheme. A group falls back the same way while any one member has not updated, and moves over on its own once everyone has.
  • The Profile entry in the overflow menu is now called Settings, since the screen also holds settings that are not about you, such as content filtering and the relay switch.

Pre-release — a test build, not a shipping release. It is not on F-Droid, is not marked Latest, and is not what F-Droid's Binaries: URL points at. Install it only if you mean to test it.

knit-2.3.0-alpha.0.apksha256:e99993a33b73fd06480828365ac5f82fe7142c00786394543295dd01f8a1279c

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c) — the same key every off-Play Knit build carries — so it installs straight over an existing F-Droid, GitHub or mesh-shared install without an uninstall, and keeps your messages.

Going back to the current stable is not possible in place: Android refuses the versionCode downgrade, so reverting costs an uninstall and everything stored on the device with it. The next stable release will update over this build normally.

CI verified this APK is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — the same reproducibility gate stable releases pass.

mapping-2.3.0-alpha.0.txt.gz is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.3.0-alpha.0 went
v2.2.3

Knit 2.2.3

Added 2
  • Launcher icon now supplies a monochrome layer so it takes on themed-icon home screen colours on Android 13 and newer
  • Launch screen follows your device's light or dark theme
Fixed 1
  • Starting Knit on a dark-themed device no longer flashes a white screen before the app appears

From Knit

A themed launcher icon, and a launch screen that follows your device's light or dark theme.

Knit's icon now supplies a monochrome layer, so on Android 13 and newer it takes on the colours of your themed-icon home screen instead of falling back to a generic shape.

Starting Knit on a dark-themed device no longer flashes a white screen before the app appears. The launch screen now uses the same light or dark background as the rest of the app.


knit-2.2.3.apksha256:62136d7e1decc6719101a3803d1194f7df6ac5b90c21f92f2297c4a9201d91ec

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c), the key pinned in F-Droid's AllowedAPKSigningKeys. CI verified this file is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — so F-Droid's rebuild-and-compare check resolves to exactly this APK.

mapping-2.2.3.txt is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.2.3 went
v2.2.2

Knit 2.2.2

Changed 1
  • Rebuild QR scanner on CameraX library
Fixed 2
  • Fix crash in QR scanner when camera reports a different frame size than it delivers
  • Handle camera permission denial and missing camera by showing an explanation instead of a blank screen

From Knit

Fixes a crash in "Scan their code".

The QR scanner has been rebuilt on CameraX. The library it used before could crash the app the moment the camera opened, on devices whose camera reports one frame size and delivers another — which is why it worked on some phones and not others. Decoding now happens in code that treats any unexpected frame as a frame without a code in it, so a scan can no longer take Knit down.

The scanner also handles the camera permission properly now: if you decline it, or the device has no camera, you get an explanation instead of a blank screen. You can still show your own code either way.


knit-2.2.2.apksha256:4d9e2ccbfb00164fcf586bfbfd2f67e7fe8d8168aad0da69b9cbd48f810bf550

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c), the key pinned in F-Droid's AllowedAPKSigningKeys. CI verified this file is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — so F-Droid's rebuild-and-compare check resolves to exactly this APK.

mapping-2.2.2.txt is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.2.2 went
v2.2.1

Knit 2.2.1

Changed 1
  • Remove Android's dependency metadata signing block from the release APK to comply with F-Droid distribution requirements and improve reproducibility

From Knit

First release available on F-Droid.

This is a build-only change so that F-Droid can distribute Knit: the release APK no longer embeds Android's "dependency metadata" signing block, which F-Droid does not permit and which was not reproducible. There are no code or feature changes from 2.2.0, and the app behaves identically.


knit-2.2.1.apksha256:3d3aaa811aa46e483d514f01486c39aff4d48b4de21c6c19fa03fa854ca764a2

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c), the key pinned in F-Droid's AllowedAPKSigningKeys. CI verified this file is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — so F-Droid's rebuild-and-compare check resolves to exactly this APK.

mapping-2.2.1.txt is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.2.1 went
v2.2.0

Knit 2.2.0

Added 1
  • Liberapay option on the Support Knit screen alongside Ko-fi
Changed 1
  • Build process now reproducible with byte-for-byte verification by F-Droid

From Knit

First release published on F-Droid.

Knit is now built reproducibly: F-Droid rebuilds this release from source and byte-compares it against the APK on our GitHub Releases page, then ships ours. The same signed APK works from F-Droid, from a direct download, and from Knit's own offline "share the app" feature — so a phone handed Knit over the mesh can still take updates normally.

Otherwise this release is all plumbing: the only visible change is a Liberapay option alongside Ko-fi on the Support Knit screen.


knit-2.2.0.apksha256:074baa953d4b20dd16ad7c3f934ee809472cf90629dae60a65bf0fd73d12dbc9

Signed with Knit's distribution key (certificate b18a283d11797c2a84a008c1fcb9e1b864e7b4c3b301408f7a4a80624b0e631c), the key pinned in F-Droid's AllowedAPKSigningKeys. CI verified this file is byte-identical, apart from the signature, to an independent unsigned rebuild produced inside F-Droid's own buildserver image — so F-Droid's rebuild-and-compare check resolves to exactly this APK.

mapping-2.2.0.txt is the R8 deobfuscation map for symbolicating crash reports from this build.

View originalPermalink
How v2.2.0 went
v2.1.0

Knit 2.1.0 — first public release

Added 12
  • Dual-radio mesh relay with Wi-Fi Aware and Bluetooth LE simultaneously behind one MeshTransport seam without Google Mobile Services
  • Public Nearby broadcast room for messaging
  • 1:1 direct messages with end-to-end encryption
  • Multi-member group chats with end-to-end encryption
  • End-to-end encryption using Tink HPKE with X25519, AES-256-GCM, and Ed25519 signature verification
  • Trust on first use (TOFU) key pinning with safety-number and QR code verification

From Knit

Knit is an offline, serverless, end-to-end-encrypted mesh messenger for Android. Phones talk directly over Wi-Fi Aware (NAN) and Bluetooth LE — both radios at once — and relay for each other hop by hop. No internet, no accounts, no servers, no Google Play Services.

This is the first public open-source release (GPL-3.0-or-later).

Highlights
  • Dual-radio mesh relay — Wi-Fi Aware + Bluetooth LE simultaneously behind one MeshTransport seam, no GMS
  • Public "Nearby" broadcast room, 1:1 DMs, and multi-member group chats
  • End-to-end encryption for DMs & groups (Tink HPKE/X25519 + AES-256-GCM + Ed25519), TOFU key pinning, safety-number / QR verification
  • Store-and-forward delay-tolerant delivery with content-digest anti-entropy sync
  • Reactions, @-mentions, and content-addressed image attachments
  • On-device content moderation (toxicity text + NSFW image), fully offline
  • Offline app sharing (on-device split-APK merge & re-sign)
  • Encrypted at rest (SQLCipher)
Requirements

Android 10 (API 29)+ with Wi-Fi Aware and/or Bluetooth LE. A device with only one radio still meshes over it.

See the README for build/run instructions and the full feature list.

View originalPermalink
How v2.1.0 went
View all

Discussion