Giter Site home page Giter Site logo

mollyiv / brave-ios Goto Github PK

View Code? Open in Web Editor NEW

This project forked from brave/brave-ios

0.0 2.0 0.0 161.1 MB

Brave iOS Browser

Home Page: https://www.brave.com

License: Mozilla Public License 2.0

Swift 81.30% Objective-C 0.78% HTML 1.85% CSS 0.49% JavaScript 2.41% Shell 0.37% Python 0.51% Objective-C++ 0.03% C++ 11.92% Ruby 0.28% C 0.06%

brave-ios's Introduction

Brave for iOS 🦁

Download on the App Store.

This branch (development)

This branch is for mainline development that will ship in the next release.

This branch currently supports iOS 12, and is written in Swift 4.

Please make sure you aim your pull requests in the right direction.

For bug fixes and features for the upcoming release, please see the associated GitHub milestones (e.g. 2.1.3).

Getting involved

We encourage you to participate in this open source project. We love Pull Requests, Bug Reports, ideas, (security) code reviews or any kind of positive contribution.

Want to contribute but don't know where to start? Here is a list of Good First Issues.

Building the code

  1. Install the latest Xcode developer tools from Apple. (Xcode 10 and up required)
  2. Make sure npm is installed, node version 12 is recommended
  3. Install Carthage:
    brew update
    brew install carthage
  4. Install SwiftLint:
    brew install swiftlint
  5. Clone the repository:
    git clone https://github.com/brave/brave-ios.git
  6. Pull in the project dependencies:
    cd brave-ios
    sh ./bootstrap.sh
  7. Open Client.xcodeproj in Xcode.
  8. Build the Fennec scheme in Xcode.

Contributor guidelines

Creating a pull request

  • All pull requests must be associated with a specific GitHub issue.
  • If a bug corresponding to the fix does not yet exist, please file it.
  • Please use the following formats in your PR titles:
      Fix/Ref #<issueId>: <description>.
      Examples:
      Fix #102: Added Face ID usage description to plist.
      Ref #102: Fixed type on Face ID usage description.
  • Add any additional information regarding the PR in the description.
  • In the unlikely and rare situation that a PR fixing multiple, related issues separate issue numbers with a comma:
      Fix #159, Fix #160: Removed whitepsace for + button on right-side panel.
  • PRs will be squashed and merged, so it is important to keep PRs focused on specific tasks.

Swift style

Whitespace

  • New code should not contain any trailing whitespace.
  • We recommend enabling the "Automatically trim trailing whitespace" and keeping "Including whitespace-only lines" deselected in Xcode (under Text Editing).

Commits

  • Each commit should have a single clear purpose. If a commit contains multiple unrelated changes, those changes should be split into separate commits.
  • If a commit requires another commit to build properly, those commits should be squashed.
  • Follow-up commits for any review comments should be squashed. Do not include "Fixed PR comments", merge commits, or other "temporary" commits in pull requests.

In most cases Pull Request commits will remain intact with a merge commit on the targeted branch.

Code Signing

  1. After running the bootstrap.sh script in the setup instructions navigate to:
    Client/Configuration/Local/DevTeam.xcconfig
  2. Add your Apple Team ID in this file:
    LOCAL_DEVELOPMENT_TEAM = KL8N8XSYF4

Team IDs look identical to provisioning profile UUIDs, so make sure this is the correct one.

The entire Local directory is included in the .gitignore, so these changes are not tracked by source control. This allows code signing without making tracked changes. Updating this file will only sign the Fennec target for local builds.

Finding Team IDs

The easiest known way to find your team ID is to log into your Apple Developer account. After logging in, the team ID is currently shown at the end of the URL:
https://developer.apple.com/account/<TEAM ID>

Use this string literal in the above, DevTeam.xcconfig file to code sign

brave-ios's People

Contributors

aaronmt avatar bkmunar avatar danishjafri88 avatar darrinhenein avatar dusek avatar eoger avatar ericawright avatar etiennesegonzac avatar farhanpatel avatar flodolo avatar garvankeeley avatar iccub avatar isabelrios avatar jhreis avatar jhugman avatar johennes avatar jumde avatar justindarc avatar kylehickinson avatar mauryat avatar ncalexan avatar rnewman avatar sdaswani avatar st3fan avatar thebnich avatar tylerlacroix avatar ugarlapati avatar varkor avatar vbudhram avatar wesj avatar

Watchers

 avatar  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.