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.
48 lines
887 B
Markdown
48 lines
887 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.
|
|
|
|
## Getting Started
|
|
|
|
This project is currently using **Xcode 15.4**.
|
|
|
|
1. Clone the repo.
|
|
2. Open `Meshtastic.xcodeproj`
|
|
2. Build and run the `Meshtastic` target.
|
|
|
|
```sh
|
|
git clone git@github.com:meshtastic/Meshtastic-Apple.git
|
|
cd Meshtastic-Apple
|
|
open Meshtastic.xcodeproj
|
|
```
|
|
|
|
## Technical Standards
|
|
|
|
### Supported Operating Systems
|
|
|
|
* iOS 16+
|
|
* iPadOS 16+
|
|
* macOS 13+
|
|
|
|
### Code Standards
|
|
|
|
- Use SwiftUI
|
|
- Use SFSymbols for icons
|
|
- Use Core Data for persistence
|
|
|
|
## Updating Protobufs:
|
|
- run:
|
|
```bash
|
|
.scripts/gen_protos.sh
|
|
```
|
|
- build, test, commit changes
|
|
|
|
## License
|
|
|
|
This project is licensed under the GPL v3. See the [LICENSE](LICENSE) file for details.
|