Giter Site home page Giter Site logo

mohsinbmwm3 / wordpress-ios Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wordpress-mobile/wordpress-ios

0.0 0.0 0.0 2.06 GB

WordPress for iOS - Official repository

Home Page: http://ios.wordpress.org/

License: GNU General Public License v2.0

Ruby 0.90% Shell 0.29% Python 0.14% JavaScript 0.09% Objective-C 22.07% Swift 76.08% HTML 0.41% Perl 0.01% MATLAB 0.01% CSS 0.02%

wordpress-ios's Introduction

WordPress for iOS

CircleCI Reviewed by Hound

Build Instructions

Please refer to the sections below for more detailed information. The instructions assume the work is performed from a command line.

Please note – these setup instructions only apply to Intel-based machines. M1-based Mac support is coming, but isn't yet supported by our tooling.

Getting Started

  1. Download and install Xcode. WordPress for iOS requires Xcode 11.2.1 or newer.
  2. From a command line, run git clone [email protected]:wordpress-mobile/WordPress-iOS.git in the folder of your preference.
  3. Now, run cd WordPress-iOS to enter the working directory.

Create WordPress.com API Credentials

  1. Create a WordPress.com account at https://wordpress.com/start/user (if you don't already have one).
  2. Create an application at https://developer.wordpress.com/apps/.
  3. Set "Redirect URLs"= https://localhost and "Type" = Native and click "Create" then "Update".
  4. Copy the Client ID and Client Secret from the OAuth Information.

Configure Your WordPress App Development Environment

  1. Return to the command line and run rake init:oss to configure your computer and WordPress app to be able to run and login to WordPress.com
  2. Once completed, run rake xcode to open the project in Xcode.

If all went well you can now compile to your iOS device or simulator, and log into the WordPress app.

Note: You can only log in with the WordPress.com account that you used to create the WordPress application.

Configuration Details

The steps above will help you configure the WordPress app to run and compile. But you may sometimes need to update or re-run specific parts of the initial setup (like updating the dependencies.) To see how to do that, please check out the steps below.

Third party tools

We use a few tools to help with development. Running rake dependencies will configure or update them for you.

CocoaPods

WordPress for iOS uses CocoaPods to manage third party libraries.
Third party libraries and resources managed by CocoaPods will be installed by the rake dependencies command above.

SwiftLint

We use SwiftLint to enforce a common style for Swift code. The app should build and work without it, but if you plan to write code, you are encouraged to install it. No commit should have lint warnings or errors.

You can set up a Git pre-commit hook to run SwiftLint automatically when committing by running:

rake git:install_hooks

This is the recommended way to include SwiftLint in your workflow, as it catches lint issues locally before your code makes its way to Github.

Alternately, a SwiftLint scheme is exposed within the project; Xcode will show a warning if you don't have SwiftLint installed.

Finally, you can also run SwiftLint manually from the command line with:

rake lint

If your code has any style violations, you can try to automatically correct them by running:

rake lint:autocorrect

Otherwise you have to fix them manually.

Open Xcode

Launch the workspace by running the following from the command line:

rake xcode

This will ensure any dependencies are ready before launching Xcode.

You can also open the project by double clicking on WordPress.xcworkspace file, or launching Xcode and choose File > Open and browse to WordPress.xcworkspace.

Setup Credentials

In order to login to WordPress.com with the app you need to create an account over at the WordPress.com Developer Portal.

After you create an account you can create an application on the WordPress.com applications manager.

When creating your application, select "Native client" for the application type. The applications manager currently requires a "redirect URL", but this isn't used for mobile apps. Just use "https://localhost".

Your new application will have an associated client ID and a client secret key. These are used to authenticate the API calls made by your application.

Next, run the command rake credentials:setup you will be prompted for your Client ID and your Client Secret. Once added you will be able to log into the WordPress app

Remember the only WordPress.com account you will be able to login in with is the one used to create your client ID and client secret.

Read more about OAuth2 and the WordPress.com REST endpoint.

Contributing

Read our Contributing Guide to learn about reporting issues, contributing code, and more ways to contribute.

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.

Getting in Touch

If you have questions about getting setup or just want to say hi, join the WordPress Slack and drop a message on the #mobile channel.

Resources

License

WordPress for iOS is an Open Source project covered by the GNU General Public License version 2.

wordpress-ios's People

Contributors

jleandroperez avatar aerych avatar koke avatar scoutharris avatar sergioestevao avatar diegoreymendez avatar frosty avatar ctarda avatar astralbodies avatar leandroalonso avatar sendhil avatar kurzee avatar nheagy avatar danielebogo avatar etoledom avatar elibud avatar jkmassel avatar bummytime avatar loremattei avatar jklausa avatar shiki avatar mindgraffiti avatar roundhill avatar kwonye avatar bjtitus avatar sabaranski avatar tomwitkin avatar mikejohnstn avatar chipsnyder avatar jtreanor avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.