https://github.com/woocommerce/woocommerce-ios
WooCommerce iOS app
https://github.com/woocommerce/woocommerce-ios
ios mobile-app swift woocommerce
Last synced: 22 days ago
JSON representation
WooCommerce iOS app
- Host: GitHub
- URL: https://github.com/woocommerce/woocommerce-ios
- Owner: woocommerce
- License: gpl-2.0
- Created: 2018-01-24T13:49:56.000Z (almost 8 years ago)
- Default Branch: trunk
- Last Pushed: 2025-10-08T08:59:53.000Z (27 days ago)
- Last Synced: 2025-10-08T09:05:06.353Z (27 days ago)
- Topics: ios, mobile-app, swift, woocommerce
- Language: Swift
- Homepage: https://www.woocommerce.com/mobile
- Size: 469 MB
- Stars: 347
- Watchers: 110
- Forks: 118
- Open Issues: 715
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE-OF-CONDUCT.md
- Codeowners: CODEOWNERS
Awesome Lists containing this project
- fucking-open-source-ios-apps - WooCommerce
README

for iOS
A Jetpack-powered companion app for WooCommerce.
Build Instructions •
Documentation •
Contributing •
Automation •
Security •
Need Help? •
Resources •
License
## 🎉 Build Instructions
1. Download Xcode
At the moment *WooCommerce for iOS* uses Swift 5.7 and requires Xcode 14 or newer. Previous versions of Xcode can be [downloaded from Apple](https://developer.apple.com/downloads/index.action).
2. Install Ruby. We recommend using [rbenv](https://github.com/rbenv/rbenv) to install it. Please refer to the [`.ruby-version` file](.ruby-version) for the required Ruby version.
We use Ruby to manage the third party dependencies and other tools and automation.
2. Clone project in the folder of your preference
```bash
git clone https://github.com/woocommerce/woocommerce-ios.git
````
3. Enter the project directory
```bash
cd woocommerce-ios
```
4. Install the third party dependencies and tools required to run the project.
```bash
bundle install && bundle exec rake dependencies
```
This command installs the required build tools and dependencies.
5. Open the project by double clicking on `WooCommerce.xcworkspace` file, or launching Xcode and choose File > Open and browse to `WooCommerce.xcworkspace`
### Credentials for External Contributors
In order to login to WordPress.com using the app:
1. Create a [WordPress.com account](https://wordpress.com/start/user) (if you don't already have one).
2. Create a new developer application [here](https://developer.wordpress.com/apps/).
3. Set **"Website URL"** = `http://www.wordpress.com`, **"Redirect URLs"** = `https://localhost`, **"Javascript Origins"** = `https://localhost` and **"Type"** = `Native` and click **Create**. On the next page, click **Update**.
4. Copy the *Client ID* and *Client Secret* from the OAuth Information.
5. Build the app. A file named `ApiCredentials.swift` should be generated.
6. Navigate to the generated `WooCommerce/DerivedSources/ApiCredentials.swift` file.

7. Fill in the `dotcomAppId` with the Client ID.
8. Fill in the `dotcomSecret` with the Client Secret.
9. Recompile and run the app on a device or inside simulator.
Please, remember to not add this information on your commits and PRs.
## 📚 Documentation
- Architecture
- [Overview](docs/architecture-overview.md)
- [Networking](docs/NETWORKING.md)
- [Storage](docs/STORAGE.md)
- [Yosemite](docs/YOSEMITE.md)
- [Hardware](docs/HARDWARE.md)
- Coding Guidelines
- [Coding Style](docs/coding-style-guide.md)
- [Naming Conventions](docs/naming-conventions.md)
- [Protocols](docs/naming-conventions.md#protocols)
- [String Constants in Nested Enums](docs/naming-conventions.md#string-constants-in-nested-enums)
- [Test Methods](docs/naming-conventions.md#test-methods)
- [Choosing Between Structures and Classes](docs/choosing-between-structs-and-classes.md)
- [Creating Core Data Model Versions](docs/creating-core-data-model-versions.md)
- [Localization](docs/localization.md)
- [Switch Statements](docs/switch-statements.md)
- Design Patterns
- [Copiable](docs/copiable.md)
- [Generating Copiable Methods](docs/copiable.md#generating-copiable-methods)
- [Modifying The Copiable Code Generation](docs/copiable.md#modifying-the-copiable-code-generation)
- [Fakeable](docs/fakeable.md)
- [Generating Fake Methods](docs/fakeable.md#generating-fake-methods)
- [Modifying Fakes Code Generation](docs/fakeable.md#modifying-the-fakeable-code-generation)
- [Tracking Events](docs/tracking-events.md)
- [Custom Properties](docs/tracking-events.md#custom-properties)
- Quality & Testing
- [UI Tests](WooCommerce/WooCommerceUITests/README.md)
- [Testing Card Present Payments](docs/stripe-tests.md)
- [Beta Testing](https://woocommercehalo.wordpress.com/setup/join-ios-beta/)
- Features
- [In-app Feedback](docs/in-app-feedback.md)
- [Card Present Payments](docs/card-present-payments.md)
- Other
- [Enable hot reload with Inject](docs/inject-hot-reload.md)
## 👏 Contributing
Read our [Contributing Guide](CONTRIBUTING.md) to learn about reporting issues, contributing code, and more ways to contribute.
## 🤖 Automation
### Peril
The woocommerce-ios project uses [Peril](https://danger.systems/js/guides/peril.html) to enforce Pull Request guidelines.
### Circle CI
The woocommerce-ios project uses [Circle CI](https://circleci.com/gh/woocommerce/woocommerce-ios) for continuous integration.
## 🔐 Security
If you happen to find a security vulnerability, we would appreciate you letting us know at https://hackerone.com/automattic and allowing us to respond before disclosing the issue publicly.
## 🦮 Need Help?
You can find the WooCommerce usage docs here: [docs.woocommerce.com](https://docs.woocommerce.com/)
General usage and development questions:
* [WooCommerce Slack Community](https://woocommerce.com/community-slack/)
* [WordPress.org Forums](https://wordpress.org/support/plugin/woocommerce)
* The WooCommerce Help and Share Facebook group
## 🔗 Resources
- [Mobile blog](https://mobile.blog)
- [WooCommerce API Documentation (currently v3)](https://woocommerce.github.io/woocommerce-rest-api-docs/#introduction)
## 📜 License
WooCommerce for iOS is an Open Source project covered by the [GNU General Public License version 2](LICENSE).
Made with 💜 by WooCommerce.
We're hiring! Come work with us!