Skip to content
📱The official Wikipedia iOS app.
Branch: develop
Clone or download
nambatee Merge pull request #2993 from wikimedia/edit-replace-undo-scroll
Fix edit replace undo not scrolling to undone text
Latest commit 6075157 Mar 21, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Carthage/Build/iOS
ContinueReadingWidget 6.2.1 Feb 12, 2019
FeaturedArticleWidget 6.2.1 Feb 12, 2019
Icon update alpha app icon Dec 14, 2017
InTheNewsNotification Merge branch 'develop' into bug/count_isEmpty Feb 12, 2019
TopReadWidget
WMF Framework
Wikipedia Stickers 6.2.1 Feb 12, 2019
Wikipedia.xcodeproj Merge branch 'develop' into T215955 Mar 15, 2019
Wikipedia
WikipediaBetaClusterTests clearer failure reason when beta cluster is down Feb 13, 2019
WikipediaUITests
WikipediaUnitTests
codemirror-config generate codemirror configs for all the codes Feb 15, 2019
docs
fastlane Merge pull request #2946 from wikimedia/bug/fix_beta_cluster_tests Feb 27, 2019
localization always import & export localizations Jun 13, 2017
scripts
www fix beginning of line bug Mar 21, 2019
.clang-format add link to style options page Jun 14, 2017
.gitignore
.jshintignore commit web assets and remove build scripts Apr 7, 2015
.node-version move node version up a level Feb 14, 2019
.ruby-version update ruby, bundler, other gems Feb 25, 2019
.xctool-args
CODE_OF_CONDUCT.md
CONTRIBUTING.md fix missing links May 3, 2018
Cartfile remove new line Jan 22, 2019
Cartfile.resolved update codemirror to include search matches fix Feb 5, 2019
Gemfile
Gemfile.lock
Jenkinsfile update shouldn't be in this pipline Feb 25, 2019
LICENSE.txt Update LICENSE.txt Jan 1, 2019
Makefile
README.md fix typo Feb 22, 2019
download

README.md

Wikipedia iOS

The official Wikipedia iOS app.

MIT license

Building and Running

Running scripts/setup will setup your computer to build and run the app. The script assumes you have Xcode installed already. It will install homebrew, Carthage, and ClangFormat. It will also create a pre-commit hook that uses ClangFormat for linting.

After running scripts/setup, you should be able to open Wikipedia.xcodeproject and run the app on the iOS Simulator (using the Wikipedia scheme and target). If you encounter any issues, please don't hesitate to let us know via a bug report or messaging us on IRC in #wikimedia-mobile on Freenode.

Required dependencies

If you'd rather install the development prerequisites yourself without our script:

  • Xcode - The easiest way to get Xcode is from the App Store, but you can also download it from developer.apple.com if you have an AppleID registered with an Apple Developer account.
  • Carthage - We check in prebuilt dependencies to simplify the initial build and run experience but you'll still need Carthage installed to allow Xcode to properly copy the frameworks into the built app. After you add, remove, or upgrade a dependency, you should run scripts/carthage_update to update the built dependencies.
  • ClangFormat - We use this for linting

Contributing

Covered in the contributing document.

Development Guidelines

These are general guidelines rather than hard rules.

Objective-C

Swift

Formatting

We use Xcode's default 4 space indentation and our .clang-format file with the pre-commit hook setup by scripts/setup. Currently, this does not enforce Swift formatting.

Process and code review norms

Covered in the process document.

Testing

The Wikipedia scheme is configured to execute the project's iOS unit tests, which can be run using the Cmd+U hotkey or the Product->Test menu bar action. Screenshot tests will fail unless you are running on one of the configurations defined by configurations_to_test_on_pull in fastlane/Fastfile.

Continuous integration

Covered in the ci document.

Event logging

Covered in the event logging document.

Web development

The article view and several other components of the app rely on web components. Instructions for working on these components is covered in the web development document.

Contact us

If you have any questions or comments, you can join the #wikimedia-mobile channel on the Freenode IRC server. We'll also gladly accept any bug reports.

You can’t perform that action at this time.