Swiftpack.co -  Package - XCEssentials/RepoConfigurator
Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
Generate repo config files using Swift and Xcode.
.package(url: "https://github.com/XCEssentials/RepoConfigurator.git", from: "3.0.5")

GitHub License GitHub Tag Swift Package Manager Compatible Written in Swift Supported platforms Build Status


Generate repo config files using Swift and Xcode.


The goal is to create a Swift script file that will contain all the settings for the repo (Swift version number, product name, company name, author(s) name, company prefix, project and target(s) names(s), etc.) and which you can run on demand to generate and re-generate all sorts of infrastructure / settings / configuration files for the repo (gitignore, Fastfile, Podfile, etc.), to easily keep them all up to date and in coherence with each other.

Note, that you might want to write some files only once during the repo lifetime (in the beginning), but in most cases it is supposed that all those files described in the config should be kept up to date only via this config. So whenever you want to rename the product or change any of it's settings, or add a CocoaPods dependency — those fixes should be done in the config script and then entire script should be executed to regenerate everything. This way we always can guarantee that everything is up to date and in sync with each other, plus it's super easy to review all settings in one place.


XCERepoConfigurator is a standard SwiftPM-compatible package, so it can be used as dependincy in any SPM based script.


To get an idea of how to use this library, see .setup/main.swift in this repo and also templates for Cocoa app and Cocoa framework.


Most of the initializers have some parameters with default values, look into sources to discover all available parameters to configure output file according to your needs.


This repo uses itself for generating various infrastructure files in the repo, so go to .setup folder and run the SPM script located there by executing swift run.


Stars: 1
Last commit: 4 weeks ago

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco