Skip to content

Latest commit

 

History

History
81 lines (54 loc) · 3.23 KB

README.md

File metadata and controls

81 lines (54 loc) · 3.23 KB

Leka iOS' Monorepo

Tuist badge Quality Gate Status Code Smells Security Rating Maintainability Rating Bugs

About

This monorepo contains everything iOS/iPadOS/macOS related, including:

  • iPadOS apps available on the App Store
  • iPadOS tools available only for internal use
  • macOS apps and tools available only for internal use

How to

To use the repo, simply do the following:

# clone repo
git clone https://github.com/leka/ios-monorepo && cd ios-monorepo


# install needed tools
brew upgrade && brew install ruby node mise pre-commit gh git-lfs
git lfs install
mise install
bundle install
pre-commit install
npm install --global git-json-merge
git config merge.json.driver \"git-json-merge %A %O %B\"
git config merge.json.name \"custom merge driver for json files\"

# sync provisioning profiles and certificates
bundle exec fastlane sync_certificates

# pull dependencies
make fetch

# generate all projects
make config

# edit project config
tuist edit

You can also use the default tuist commands. See tuist documentation: https://docs.tuist.io/tutorial/get-started

TUIST_* generation option

Tuist allows for "generation-time configuration" (see documentation for more information: https://docs.tuist.io/guides/environment).

We are leveraging the feature with different options:

  • TUIST_TURN_OFF_LINTERS - turns off SwiftLint and swift-format, useful for CI or rapid development
  • TUIST_GENERATE_EXAMPLE_TARGETS - generate module example targets
  • TUIST_GENERATE_MODULES_AS_FRAMEWORKS_FOR_DEBUG - generates modules as frameworks (instead of static libraries), allowing developers to use more Xcode features such as Canvas to preview SwiftUI Views

Example command:

TUIST_GENERATE_MODULES_AS_FRAMEWORKS_FOR_DEBUG=TRUE \
TUIST_TURN_OFF_LINTERS=TRUE \
tuist generate

Edit encrypted files

For security reasons, some files are encrypted. To be able to access and edit them, follow those steps:

# install git-crypt
brew install git-crypt

# unlock files
git-crypt unlock

More information here: https://github.com/AGWA/git-crypt#using-git-crypt

License

Copyright (c) APF France handicap. All rights reserved.