Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Automattic/pocket-casts-ios
Pocket Casts iOS app 🎧
https://github.com/Automattic/pocket-casts-ios
hacktoberfest pocket-casts
Last synced: 3 months ago
JSON representation
Pocket Casts iOS app 🎧
- Host: GitHub
- URL: https://github.com/Automattic/pocket-casts-ios
- Owner: Automattic
- License: mpl-2.0
- Created: 2022-07-11T12:49:45.000Z (over 2 years ago)
- Default Branch: trunk
- Last Pushed: 2024-10-29T13:11:38.000Z (3 months ago)
- Last Synced: 2024-10-29T13:19:52.098Z (3 months ago)
- Topics: hacktoberfest, pocket-casts
- Language: Swift
- Homepage:
- Size: 86.1 MB
- Stars: 1,654
- Watchers: 24
- Forks: 132
- Open Issues: 257
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE-OF-CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
- fucking-open-source-ios-apps - Pocket Casts
README
Pocket Casts is the world's most powerful podcast platform, an app by listeners, for listeners.## Setup
If you don't already have it, you need to install Bundler:
`gem install bundler`
Next you'll need to install all the dependencies needed for CocoaPods and FastLane using this script:
`make install_dependencies`
## External contributors
If you're an external contributor run `make external_contributor`. After that you should be able to build and run the project.
## Swift Formatting
We use [SwiftLint](https://github.com/realm/SwiftLint) to ensure code is spaced and formatted the same way and follows the same [general conventions](https://github.com/Automattic/swiftlint-config). We have a script that will run it over the whole project.
Once the required dependencies are installed via `bundle exec pod install`, you can run:
`make format`
You should do this before making a pull request.
## Running
Open the .xcworkspace file, select the Pocket Casts project and the Simulator Device you want to run on, and hit the play button.
## Localization
You can learn more about localization at [docs/Localization.md](./docs/localization.md)
## Protocol Buffers
The app uses [Google Protocol Buffers](https://developers.google.com/protocol-buffers) to define our server objects.
To update server objects you'll need to install the protobuf command line tool as well as the [Swift Protobuf](https://github.com/apple/swift-protobuf) translators. This can be done via Homebrew with:
```
brew install protobuf
brew install swift-protobuf
```To update the protobuf files you can then run:
Replace the `{API_PATH}` with the full path to the `pocketcasts-api/api/modules/protobuf/src/main/proto` folder
```
make update_proto API_PATH={API_PATH}
```