twonly, a privacy-friendly way to connect with friends through secure, spontaneous image sharing.
Find a file
otsmr 332c19e880
Some checks are pending
Flutter analyze & test / flutter_analyze_and_test (push) Waiting to run
fix analyzer
2025-12-07 18:14:01 +01:00
.github renaming workflow 2025-10-16 23:58:56 +02:00
android add barcode scanner and remove tutorial 2025-12-07 16:02:08 +01:00
assets fix avatar render issues, fix list update issues 2025-11-18 22:56:42 +01:00
dependencies@3a25778782 start with dependency checking 2025-12-07 16:46:12 +01:00
docs update readme 2025-07-11 11:07:35 +02:00
ios add barcode scanner and remove tutorial 2025-12-07 16:02:08 +01:00
lib fix analyzer 2025-12-07 18:14:01 +01:00
metadata update metadata 2025-11-24 19:40:21 +01:00
scripts starting with c2c #227 2025-11-01 01:46:02 +01:00
test fix #302 2025-11-13 22:46:23 +01:00
.gitignore fix camera freeze issue 2025-07-17 19:53:37 +02:00
.gitmodules start with dependency checking 2025-12-07 16:46:12 +01:00
.metadata starting with c2c #227 2025-11-01 01:46:02 +01:00
analysis_options.yaml fix analyzer 2025-12-07 18:14:01 +01:00
build.yaml fix #307 2025-11-13 21:28:57 +01:00
CHANGELOG.md fix #303 and bump version 2025-11-13 23:57:01 +01:00
firebase.json ios version should work 2025-03-25 00:11:07 +01:00
l10n.yaml updating dependencies and flutter 2025-10-14 11:47:20 +02:00
LICENSE Initial commit 2024-12-31 09:46:15 +01:00
pubspec.lock start with dependency checking 2025-12-07 16:46:12 +01:00
pubspec.yaml start with dependency checking 2025-12-07 16:46:12 +01:00
README.md test commit 2025-11-27 10:14:03 +01:00

twonly

twonly, a privacy-friendly way to connect with friends through secure, spontaneous image sharing.

This repository contains the complete source code of the twonly apps.

Get it on Testflight button Get it on F-Droid button

Features

  • Offer a Snapchat™ like experience
  • End-to-End encryption using the Signal Protocol
  • twonly is Open Source and can be downloaded directly from GitHub
  • Developed by humans not by AI or Vibe Coding
  • No email or phone number required to register
  • Privacy friendly - Everything is stored on the device
  • The backend is hosted exclusively in Europe

Planned

  • For Android: Optional support for UnifiedPush
  • For Android: Reproducible Builds
  • Implementing Sealed Sender to minimize metadata

Security Issues

If you discover a security issue in twonly, please adhere to the coordinated vulnerability disclosure model. Please send us your report to security@twonly.eu. We also offer for critical security issues a small bug bounties, but we can not guarantee a bounty currently :/

Development

Setup Instructions (macOS)

Building

Some dependencies are downloaded directly from the source as there are some new changes which are not yet published on pub.dev or because they require some special installation.

git submodule update --init --recursive

cd dependencies/flutter_zxing
git submodule update --init --recursive
./scripts/update_ios_macos_src.s

Debugging files

run-as eu.twonly.testing ls /data/user/0/eu.twonly.testing/

Signing Keys

When you download the app via GitHub or F-Droid you can verify the signing keys using for example the AppVerifyer and the following SHA-256 fingerprint of the signing certificate.

eu.twonly E3:C4:4D:56:8C:67:F9:32:AC:8C:33:90:99:8A:B9:5E:E8:FF:2D:7A:07:3C:24:E3:66:77:93:E6:EA:CD:77:0A

License

This project is licensed under the GNU AGPL 3.0 license.