Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nikitamounier/tapit-app
App which lets two people share their social media details by simply putting one phone on top of the other ("tapping"). Currently in development by Nikita Mounier.
https://github.com/nikitamounier/tapit-app
app composable-architecture data-transfer ibeacon ios network network-framework peer-to-peer social-media swift swift-package-manager swiftui tap-it unidirectional-data-flow
Last synced: 3 months ago
JSON representation
App which lets two people share their social media details by simply putting one phone on top of the other ("tapping"). Currently in development by Nikita Mounier.
- Host: GitHub
- URL: https://github.com/nikitamounier/tapit-app
- Owner: nikitamounier
- License: other
- Created: 2020-09-13T21:25:24.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-08-03T14:25:57.000Z (over 1 year ago)
- Last Synced: 2024-04-13T07:25:38.684Z (7 months ago)
- Topics: app, composable-architecture, data-transfer, ibeacon, ios, network, network-framework, peer-to-peer, social-media, swift, swift-package-manager, swiftui, tap-it, unidirectional-data-flow
- Language: Swift
- Homepage:
- Size: 2.43 MB
- Stars: 29
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- fucking-open-source-ios-apps - Tap It
README
# Tap It
Tap It enables two people to seamlessly share their social media information (e.g. Instagram, Snapchat, phone number) by simply placing one screen on top of the other horizontally (aka "tapping"). This app is privacy-centric: all information, which is inherently sensitive, is stored on-device, and all wireless data transfer is encrypted.
## Frameworks
Tap It uses:
* [SwiftUI](https://developer.apple.com/documentation/swiftui)
* [The Composable Architecture](https://github.com/pointfreeco/swift-composable-architecture) by [Pointfree](https://www.pointfree.co)
* [Combine](https://developer.apple.com/documentation/combine)
* [Network Framework](https://developer.apple.com/documentation/network)
* [Core Location](https://developer.apple.com/documentation/corelocation) and [Core Bluetooth](https://developer.apple.com/documentation/corebluetooth) ([iBeacon](https://developer.apple.com/documentation/corelocation/clbeacon))
* [Non-Empty](https://github.com/pointfreeco/swift-nonempty)
* [Prelude](https://github.com/pointfreeco/swift-prelude)
* [PhoneNumberKit](https://github.com/marmelroy/PhoneNumberKit)
* [Difference](https://github.com/krzysztofzablocki/Difference)
* [Sourcery Pro](https://merowing.info/sourcery-pro/)
## Motivation
When meeting someone, it takes a nail-bitingly long time to share each other's social media details. Finding the person's account, requesting them, them accepting, then vice versa; in a day and age where everyone has an account on at least two or more platforms, this takes a laughably long time.
Tap It aims to drastically streamline this process, to both parties simply pressing "share" and then placing one phone on top of the other.
## Current Progress
Tap It now has the structure to become hyper-modularized, allowing for better testing, build times, and dependency management. Development will go feature by feature, with the core business logic built before the thin, lightweight views laid on top.
## Interesting code
Most of the important code is in [/Sources](https://github.com/nikitamounier/tapit-app/tree/main/Sources). For some interesting examples using The Composable Architecture looks like, check out [/Sources/BeaconClient/](https://github.com/nikitamounier/tapit-app/blob/main/Sources/BeaconClient/Live.swift), [/Sources/MultipeerClient/](https://github.com/nikitamounier/tapit-app/blob/main/Sources/MultipeerClient/Live.swift) and [/Sources/TapFeature/](https://github.com/nikitamounier/tapit-app/blob/main/Sources/TapFeature/TapFeatureView.swift)!
On the topic of The Composable Architecture, I'm doing a 30-min talk about it at NSLondon on November 24th. See you there!
## Author
Nikita Mounier, [email protected]
## Licence / Copyright
View [LICENSE.md](LICENSE.md)