SmallTalk è un messenger Android minimale, moderno, incentrato sugli amici e sulla famiglia. Fortemente ispirato a Whatsapp e Signal, è alimentato da Matrix. https://noblogo.org/filippodb/mai-piu-notifiche-da-google-guida-a-unified-push-su-mastodon-matrix-e-telegram
Go to file
dependabot[bot] ec608fd010
Bump ktorVer from 2.1.1 to 2.1.2
Bumps `ktorVer` from 2.1.1 to 2.1.2.

Updates `ktor-client-android` from 2.1.1 to 2.1.2
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/2.1.1...2.1.2)

Updates `ktor-client-core` from 2.1.1 to 2.1.2
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/2.1.1...2.1.2)

Updates `ktor-client-serialization` from 2.1.1 to 2.1.2
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/2.1.1...2.1.2)

Updates `ktor-serialization-kotlinx-json` from 2.1.1 to 2.1.2
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/2.1.1...2.1.2)

Updates `ktor-client-logging-jvm` from 2.1.1 to 2.1.2
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/2.1.1...2.1.2)

Updates `ktor-client-java` from 2.1.1 to 2.1.2
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/2.1.1...2.1.2)

Updates `ktor-client-content-negotiation` from 2.1.1 to 2.1.2
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/2.1.1...2.1.2)

---
updated-dependencies:
- dependency-name: io.ktor:ktor-client-android
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.ktor:ktor-client-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.ktor:ktor-client-serialization
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.ktor:ktor-serialization-kotlinx-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.ktor:ktor-client-logging-jvm
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.ktor:ktor-client-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.ktor:ktor-client-content-negotiation
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-03 05:30:25 +00:00
.github handling all characters in secrets 2022-09-29 20:40:47 +01:00
.idea extracting me fetching logic to its own usecase and testing 2022-10-02 19:22:54 +01:00
app allowing the prefetching of local echos to fail 2022-10-02 19:22:54 +01:00
core extracting flow extension for starting and ignoring future emissions 2022-10-02 19:22:54 +01:00
design-library updating to latest material3 lib 2022-10-02 19:22:54 +01:00
domains avoiding duplicated room event emissions when watching a specific room id 2022-10-02 19:22:54 +01:00
external initial commit 2022-02-27 21:48:14 +00:00
fastlane/metadata/android/en-US initial fastlane structures 2022-09-15 20:06:17 +01:00
features avoiding recalculating static toolbar height 2022-10-02 19:22:54 +01:00
gradle/wrapper Update Gradle Wrapper from 7.5 to 7.5.1. 2022-08-06 00:21:23 +00:00
matrix providing a custom initial device display name 2022-10-02 19:22:54 +01:00
test-harness fixing test harness compilation error 2022-10-02 19:22:54 +01:00
tools adding automatic foss apk uploading to the release 2022-09-29 19:29:33 +01:00
.gitignore updating gitignore to ignore secrets and any nodemodules dir 2022-08-24 15:34:08 +01:00
LICENSE Create LICENSE 2022-03-01 18:14:35 +00:00
README.md Adding build commands 2022-08-31 19:10:26 +01:00
build.gradle Bump mockk from 1.13.1 to 1.13.2 2022-09-29 05:22:18 +00:00
dependencies.gradle Bump ktorVer from 2.1.1 to 2.1.2 2022-10-03 05:30:25 +00:00
gradle.properties initial commit 2022-02-27 21:48:14 +00:00
gradlew Update Gradle Wrapper from 7.4.2 to 7.5. 2022-07-15 00:24:46 +00:00
gradlew.bat Update Gradle Wrapper from 7.4.2 to 7.5. 2022-07-15 00:24:46 +00:00
settings.gradle replacing non foss dependencies with noop replaceable modules when the project is build with the -Pfoss flag 2022-08-31 17:44:17 +01:00
version.json updating version for release 2022-09-29 20:04:17 +01:00

README.md

SmallTalk Assemble codecov License

SmallTalk is a minimal, modern, friends and family focused Android messenger. Heavily inspired by Whatsapp and Signal, powered by Matrix.

header




Project mantra

  • Tiny app size - currently 1.80mb~ when provided via app bundle.
  • Focused on reliability and stability.
  • Bare-bones feature set.

Feature list

  • Login with Matrix ID/Password
  • Combined Room and DM interface
  • End to end encryption
  • Message bubbles, supporting text, replies and edits
  • Push notifications (DMs always notify, Rooms notify once)
  • Importing of E2E room keys from Element clients
  • UnifiedPush
  • FOSS variant

Planned

  • Device verification (technically supported but has no UI)
  • Invitations (technically supported but has no UI)
  • Room history
  • Message media
  • Cross signing
  • Google drive backups
  • Markdown subset (bold, italic, blocks)
  • Changing user name/avatar
  • Room settings and information
  • Exporting E2E room keys
  • Local search
  • Registration

Technical details

  • Built on Jetpack compose and kotlin multiplatform libraries ktor and sqldelight (although the project is not currently setup to be multiplatform until needed).
  • Greenfield matrix SDK implementation, focus on separation, testability and parallelisation.
  • Heavily optimised build script, clean cacheless builds are sub 10 seconds with a warmed up gradle daemon.
  • Avoids code generation where possible in favour of build speed, this mainly means manual DI.
  • A pure kotlin test harness to allow for critical flow assertions Smoke Tests, currently Linux x86-64 only.

Building

Debug .apk
./gradlew assembleDebug
Release (signed with debug key) .apk
./gradlew assembleRelease
Unsigned release .apk
./gradlew assembleRelease -Punsigned
Unsigned release (FOSS) .apk
./gradlew assembleRelease -Punsigned -Pfoss

Join the conversation @ https://matrix.to/#/#small-talk:iswell.cool