All Projects → kronenthaler → Mod Pbxproj

kronenthaler / Mod Pbxproj

Licence: mit
A python module to manipulate XCode projects

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Mod Pbxproj

Ferret
Declarative web scraping
Stars: ✭ 4,837 (+404.38%)
Mutual labels:  cli, hacktoberfest, library
Swiftinfo
📊 Extract and analyze the evolution of an iOS app's code.
Stars: ✭ 880 (-8.24%)
Mutual labels:  cli, hacktoberfest, xcode
Loadingshimmer
An easy way to add a shimmering effect to any view with just one line of code. It is useful as an unobtrusive loading indicator.
Stars: ✭ 1,180 (+23.04%)
Mutual labels:  hacktoberfest, xcode, library
Clifx
Declarative framework for building command line interfaces
Stars: ✭ 900 (-6.15%)
Mutual labels:  cli, hacktoberfest
Schemathesis
A modern API testing tool for web applications built with Open API and GraphQL specifications.
Stars: ✭ 768 (-19.92%)
Mutual labels:  cli, hacktoberfest
Swiftkit
Start your next Open-Source Swift Framework 📦
Stars: ✭ 785 (-18.14%)
Mutual labels:  cli, xcode
Terjira
Terjira is a very interactive and easy to use CLI tool for Jira.
Stars: ✭ 713 (-25.65%)
Mutual labels:  cli, hacktoberfest
Laminas Cli
Console command runner, exposing commands written in Laminas MVC and Mezzio components and applications
Stars: ✭ 25 (-97.39%)
Mutual labels:  cli, hacktoberfest
Mrm
Codemods for your project config files
Stars: ✭ 900 (-6.15%)
Mutual labels:  cli, hacktoberfest
Tabulate
Table Maker for Modern C++
Stars: ✭ 862 (-10.11%)
Mutual labels:  cli, library
Executor
Watch for file changes and then execute command. Very nice for test driven development.
Stars: ✭ 14 (-98.54%)
Mutual labels:  cli, hacktoberfest
Lab
Lab wraps Git or Hub, making it simple to clone, fork, and interact with repositories on GitLab
Stars: ✭ 911 (-5.01%)
Mutual labels:  cli, hacktoberfest
Archisteamfarm
C# application with primary purpose of idling Steam cards from multiple accounts simultaneously.
Stars: ✭ 7,219 (+652.76%)
Mutual labels:  cli, hacktoberfest
Glow
Render markdown on the CLI, with pizzazz! 💅🏻
Stars: ✭ 7,596 (+692.08%)
Mutual labels:  cli, hacktoberfest
Vlany
Linux LD_PRELOAD rootkit (x86 and x86_64 architectures)
Stars: ✭ 804 (-16.16%)
Mutual labels:  cli, library
Jenkinsfile Runner
A command line tool to run Jenkinsfile as a function
Stars: ✭ 727 (-24.19%)
Mutual labels:  cli, hacktoberfest
Xtoolkit.whitelabel
Modular MVVM framework for fast creating powerful cross-platform applications with Xamarin.
Stars: ✭ 22 (-97.71%)
Mutual labels:  hacktoberfest, library
Mvvm C Templates
Templates for MVVM-C architecture
Stars: ✭ 27 (-97.18%)
Mutual labels:  hacktoberfest, xcode
Mevn Cli
Light speed setup for MEVN(Mongo Express Vue Node) Apps
Stars: ✭ 696 (-27.42%)
Mutual labels:  cli, hacktoberfest
Bat
A cat(1) clone with wings.
Stars: ✭ 30,833 (+3115.12%)
Mutual labels:  cli, hacktoberfest

.. image:: https://img.shields.io/github/workflow/status/kronenthaler/mod-pbxproj/branch-check/master?logo=github&style=flat-square :target: https://github.com/kronenthaler/mod-pbxproj/actions?query=workflow%3Abranch-check :alt: GitHub Workflow Status (branch)

.. image:: https://img.shields.io/codacy/coverage/70c14211ba704d2893f7b0f54bb04da7/master?logo=codacy&style=flat-square
:alt: Codacy branch coverage :target: https://www.codacy.com/app/kronenthaler/mod-pbxproj?utm_source=github.com&utm_medium=referral&utm_content=kronenthaler/mod-pbxproj&utm_campaign=badger

.. image:: https://img.shields.io/codacy/grade/70c14211ba704d2893f7b0f54bb04da7?logo=codacy&style=flat-square :target: https://www.codacy.com/app/kronenthaler/mod-pbxproj?utm_source=github.com&utm_medium=referral&utm_content=kronenthaler/mod-pbxproj&utm_campaign=badger :alt: Codacy grade

.. image:: https://img.shields.io/pypi/v/pbxproj?color=97cb02&logo=python&logoColor=ffffff&style=flat-square :target: https://pypi.python.org/pypi/pbxproj :alt: PyPI

.. image:: https://img.shields.io/pypi/dm/pbxproj?color=97cb02&logo=python&logoColor=ffffff&style=flat-square :target: https://pypi.python.org/pypi/pbxproj/ :alt: PyPI - Downloads

.. image:: https://img.shields.io/pypi/l/pbxproj?color=97cb02&style=flat-square :target: license.txt :alt: PyPI - License

pbxproj

This module can read, modify, and write a .pbxproj file from an Xcode 4+ projects. The file is usually called project.pbxproj and can be found inside the .xcodeproj bundle. Because some task cannot be done by clicking on an UI or opening Xcode to do it for you, this python module lets you automate the modification process.

How to use it

The typical tasks with an Xcode project are adding files to the project and setting some standard compilation flags. It can be achieved with a simple snippet like this:

.. code-block:: python

from pbxproj import XcodeProject

open the project

project = XcodeProject.load('myapp.xcodeproj/project.pbxproj')

add a file to it, force=false to not add it if it's already in the project

project.add_file('MyClass.swift', force=False)

set a Other Linker Flags

project.add_other_ldflags('-ObjC')

save the project, otherwise your changes won't be picked up by Xcode

project.save()

That's it. More details about available API's visit the wiki <https://github.com/kronenthaler/mod-pbxproj/wiki/>__.

Installation

For installation instructions visit the wiki <https://github.com/kronenthaler/mod-pbxproj/wiki/Installation>__

CLI

For instructions and commands available visit the wiki <https://github.com/kronenthaler/mod-pbxproj/wiki/CLI>__

Documentation

For general documentation, visit the wiki <https://github.com/kronenthaler/mod-pbxproj/wiki/>_. For technical documentation, the public functions are documented and contains details about what is expected.

Reporting bugs

Did you find a bug? Too bad, but we want to help you, we need you to:

  • Check you are running python3 and installed the package using the pip3 command.
  • Provide as many details about the error you are having.
  • If possible provide a sample project.pbxproj to reproduce the steps
  • If possible, try the sequence of steps on Xcode and provide the project.pbxproj generated by Xcode.

We cannot help you if your issue is a title: "it does not work". Or if there is no sequence of steps to reproduce the error. Those kind of issues will be ignored or closed automatically.

Contributing

Do you want to fix an issue yourself? Great! some house rules:

  • Provide a description of what problem you are solving, what case was not being taking into account
  • Provide unit tests for the case you have fixed. Pull request without unit test or PRs that decrease the coverage will not be approved until this changes.
  • Adhere to the coding style and conventions of the project, for instance, target_name is used to specify the target across all functions that use this parameter. Changes will be requested on PRs that don't follow this.
  • Write descriptive commit messages.

License

This project is licensed using MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].