mirror of
https://github.com/meshtastic/Meshtastic-Apple.git
synced 2026-04-20 22:13:56 +00:00
* Change SwiftLint from a "Run Script" build phase to a "Run Build Tool Plugins" build phase.
* Developers no longer need to install and update SwiftLint manually. This can be useful when other projects are using different versions of SwiftLint.
* [SwiftLint Docs](https://github.com/realm/SwiftLint?tab=readme-ov-file#xcode-projects)
* [WWDC 22 - Meet Swift Package Plugins](https://developer.apple.com/videos/play/wwdc2022/110359/?time=162)
* Moved several scripts into a `.scripts` directory to keep the project root organized.
* Modified `.scripts/gen_protos.sh` to intelligently update git submodules and install `swift-protobuf` when it detects issues, reducing developer friction.
* Deleted the empty unit and UI testing targets. These can be added later as we write tests. someday 🙏
* Updated the README.md to reflect the above changes, and organized a few of the sections.
42 lines
846 B
Markdown
42 lines
846 B
Markdown
# Meshtastic Apple Clients
|
|
|
|
<a href="https://apple.co/3Auysep">
|
|
<img alt="Meshtastic App Store Launch Image" src="meshtastic-1080x1080.png" />
|
|
</a>
|
|
|
|
## Overview
|
|
|
|
SwiftUI client applications for iOS, iPadOS and macOS.
|
|
|
|
## OS Requirements
|
|
|
|
* iOS App Requires iOS 16 +
|
|
* iPadOS App Requires iPadOS 16 +
|
|
* Mac App Reguires macOS 13 +
|
|
|
|
## Code Standards
|
|
|
|
- Use SwiftUI (Maps are the exception)
|
|
- Use Hierarchical icons
|
|
- Use Core Data for persistence
|
|
- Requires SwiftLint - see https://github.com/realm/SwiftLint
|
|
|
|
## To update protobufs:
|
|
|
|
- install swift-protobuf:
|
|
```bash
|
|
brew install swift-protobuf
|
|
```
|
|
- check out the latest protobuf commit from the master branch
|
|
```bash
|
|
git submodule update --init
|
|
```
|
|
- run:
|
|
```bash
|
|
./gen_protos.sh
|
|
```
|
|
- build, test, commit changes
|
|
- You may need to run:
|
|
```bash
|
|
swiftlint --fix
|
|
```
|