Skip to content
DuckDuckGo iOS Application
Swift JavaScript HTML Shell Objective-C Objective-C++ Ruby
Branch: develop
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github improve onboarding experiment 1 (#419) Mar 6, 2019
AtbIntegrationTests Privacy Notifications (#471) Aug 20, 2019
BookmarksTodayExtension Bump version number, add release notes Sep 11, 2019
Core Add https lookup service (#475) Sep 12, 2019
DuckDuckGo.xcodeproj Add https lookup service (#475) Sep 12, 2019
DuckDuckGo Add https lookup service (#475) Sep 12, 2019
DuckDuckGoTests Add https lookup service (#475) Sep 12, 2019
Instruments Custom Instrumentation (#434) Jun 24, 2019
IntegrationTests enhance home page ux (#384) Dec 17, 2018
QuickActionsTodayExtension Bump version number, add release notes Sep 11, 2019
ShareExtension Bump version number, add release notes Sep 11, 2019
SpeedTests Performance improvements (#458) Jun 28, 2019
Third-Party/bloom_cpp Add large scale https updates with bloom filter (#355) Aug 23, 2018
TopSitesReport update privacy grade (#363) Oct 5, 2018
UITests Update to Xcode 10 and Swift 4.2 (#367) Oct 12, 2018
fastlane Bump version number, add release notes Sep 11, 2019
fonts/licensed onboarding experiment 2 (#427) Mar 29, 2019
styleguide add swift lint and style guide (#342) Jul 6, 2018
submodules find in page (#411) Feb 21, 2019
.gitignore Add latest app store screenshots (#298) Apr 13, 2018
.gitmodules update privacy grade (#363) Oct 5, 2018
.swiftlint.yml add swift lint and style guide (#342) Jul 6, 2018
CONTRIBUTING.md Update readme, add guidelines to contributing. (#397) Feb 1, 2019
Cartfile migrate to Xcode 10.2 and Swift 5 (#431) Apr 2, 2019
Cartfile.resolved migrate to Xcode 10.2 and Swift 5 (#431) Apr 2, 2019
LICENSE Update LICENSE (#392) Jan 9, 2019
ManualTestsScript.md Fix force touch shortcuts and add manual tests script Oct 31, 2017
NOTICE Added NOTICE file (#305) May 4, 2018
README.md Custom Instrumentation (#434) Jun 24, 2019
adhoc-build.sh onboarding experiment 3 (#435) Apr 15, 2019
bitrise.yml Remove retry as it is extending build time, we will fix the tests the… Nov 8, 2018
run_atb_tests.sh add atb integration tests (#351) Aug 8, 2018
run_site_report.sh Fix integration tests Oct 10, 2017
run_tests.sh add atb integration tests (#351) Aug 8, 2018
screenshots.sh add ui tests, add and expand dividers, show total tracker counts (#282) Mar 21, 2018

README.md

DuckDuckGo iOS

We are excited to engage the community in development!

We are hiring!

We are looking for a Senior Cross-Platform engineer to help shape our mobile apps. We embrace diverse perspectives, and seek out passionate, self-motivated people, committed to our shared vision of raising the standard of trust online. Visit our careers page to find out more!

Building

Submodules

We only have one submodule at the moment, but because of that you will need to bring it in to the project in order to build and run it:

Run git submodule update --init --recursive

Dependencies

We use Carthage for dependency management. If you don't have Carthage installed refer to Installing Carthage.

Run carthage bootstrap --platform iOS before opening the project in Xcode

You can also run the unit tests to do the above and ensure everything seems in order: ./run_tests.sh

Fonts

We use Proxima Nova fonts which are proprietary and cannot be committed to source control, see fonts.

Debugging

Instruments

We have Custom Instruments tool to help visualize and track events that happen during runtime.

In order to run it:

  1. Build a Debug version and install it on Simulator/Device.
  2. Select Instruments target and run it on a Mac. New instance of Instruments app will be run that has a grayed out icon indicating that it works in debug mode with custom instruments attached.
  3. Select 'DDG Trace' template or setup a custom one by importing 'DDG Timeline' instrument from Library .
  4. Start recording.

See Instruments Developer Help for reference how to create custom instruments.

Contribute

Please refer to contributing.

Discuss

Contact us at https://duckduckgo.com/feedback if you have feedback, questions or want to chat. You can also use the feedback form embedded within our Mobile App - to do so please navigate to Settings and select "Send Feedback".

License

DuckDuckGo is distributed under the Apache 2.0 license.

You can’t perform that action at this time.