Need help with synx?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

6.1K Stars 284 Forks MIT License 211 Commits 61 Opened issues


A command-line tool that reorganizes your Xcode project folder to match your Xcode groups

Services available


Need anything else?

Contributors list

synx logo

Gem Version Build Status

A command-line tool that reorganizes your Xcode project folder to match your Xcode groups.

synx gif


synx Xcode


synx finder before/after


$ gem install synx



:warning: WARNING: Make sure that your project is backed up through source control before doing anything :warning:

Execute the command on your project to have it reorganize the files on the file system:

 $ synx path/to/my/project.xcodeproj

It may have confused CocoaPods. If you use them, execute this command:

$ pod install

You're good to go!


Synx supports the following options:

  --prune, -p                   remove source files and image resources that are not referenced by the the Xcode project
  --no-color                    removes all color from the output
  --no-default-exclusions       doesn't use the default exclusions of /Libraries, /Frameworks, and /Products
  --no-sort-by-name             disable sorting groups by name
  --quiet, -q                   silence all output
  --exclusion, -e EXCLUSION     ignore an Xcode group while syncing

For example, OCMock could have been organized using this command:

$ synx -p -e "/OCMock/Core Mocks" -e /OCMockTests Source/OCMock.xcodeproj/

if they had wanted not to sync the

/OCMock/Core Mocks
groups, and also remove (
) any image/source files found by synx that weren't referenced by any groups in Xcode.


We'd love to see your ideas for improving this library! The best way to contribute is by submitting a pull request. We'll do our best to respond to your patch as soon as possible. You can also submit a new Github issue if you find bugs or have questions. :octocat:

Please make sure to follow our general coding style and add test coverage for new features!


We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.