All Projects β†’ danabeknar β†’ taza

danabeknar / taza

Licence: other
🧼 keep your iOS project clean

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to taza

SwiftZip
Swift wrapper for libzip β€” library for reading, creating, and modifying zip archives.
Stars: ✭ 44 (-6.38%)
Mutual labels:  swift-package-manager
SwiftCurrent
A library for managing complex workflows in Swift
Stars: ✭ 286 (+508.51%)
Mutual labels:  swift-package-manager
TeadsSDK-iOS
Teads SDK iOS Sample App - Check out an open-source sample of the Teads iOS SDK implementation
Stars: ✭ 22 (-53.19%)
Mutual labels:  swift-package-manager
nef-editor-client
πŸ“±Client-side code for the nef editor app
Stars: ✭ 20 (-57.45%)
Mutual labels:  swift-package-manager
MLLineChart
A simple Line Chart Lib
Stars: ✭ 28 (-40.43%)
Mutual labels:  swift-package-manager
ecs-demo
Minimal demo App for the Fireblade Entity-Component System (ECS)
Stars: ✭ 20 (-57.45%)
Mutual labels:  swift-package-manager
UInt256
An UInt256 library written in Swift 4
Stars: ✭ 20 (-57.45%)
Mutual labels:  swift-package-manager
PerfectLearnGuide
Are you eager to get programming with Swift and Perfect? This PerfectLearnGuide will help you.
Stars: ✭ 19 (-59.57%)
Mutual labels:  swift-package-manager
PagedLists
Paginated UITableView and UICollectionViews for iOS.
Stars: ✭ 69 (+46.81%)
Mutual labels:  swift-package-manager
ResponderChain
Cross-platform first responder handling without subclassing views or making custom ViewRepresentables in SwiftUI. Similar to FocusState but for iOS 13+
Stars: ✭ 69 (+46.81%)
Mutual labels:  swift-package-manager
swift-package-info
Swift CLI tool that provides information about a Swift Package
Stars: ✭ 65 (+38.3%)
Mutual labels:  swift-package-manager
Swiftproj
A command-line tool for managing Xcode project with Swift Package Manager.
Stars: ✭ 15 (-68.09%)
Mutual labels:  swift-package-manager
Archery
Declare all your project's metadata and what you can do with it in one single place.
Stars: ✭ 47 (+0%)
Mutual labels:  swift-package-manager
aescryptable
AES encryption/decryption with random iv. Swift 5 and up.
Stars: ✭ 29 (-38.3%)
Mutual labels:  swift-package-manager
GoogleCloudLogging
Swift (Darwin) library for logging application events in Google Cloud.
Stars: ✭ 24 (-48.94%)
Mutual labels:  swift-package-manager
xxHash-Swift
xxHash framework in Swift.
Stars: ✭ 22 (-53.19%)
Mutual labels:  swift-package-manager
FakeBundle
πŸ—„ Use Resources in your Swift Package Manager executable
Stars: ✭ 13 (-72.34%)
Mutual labels:  swift-package-manager
AirPlay
Small framework that lets users track iOS AirPlay availability and extra features.
Stars: ✭ 46 (-2.13%)
Mutual labels:  swift-package-manager
SwiLex
A universal lexer library in Swift.
Stars: ✭ 29 (-38.3%)
Mutual labels:  swift-package-manager
Validated
A rule-based validation framework
Stars: ✭ 31 (-34.04%)
Mutual labels:  swift-package-manager

Taza 🧼

Swift @beknar

Trivial command-line tool build in educational purposes & for personal use.
Allows to easily find unused resources in XCode project.

How it works

  1. A script looks for images. For now it supports 4 types: .pdf, .png, .img, .jpg;
  2. It finds image-containable file. There are 4 types as well: .swift, .m, .xib, .storyboard;
  3. Then it loops through images and files, checking if a file contains an image. The checking depends on the file extension:
  • If it's .swift file, the script searches UIImage(named: "imageName") & UIImage(named: "imageName.extension") occurences;
  • If it's .m file, the script searches [UIImage imageNamed:@"imageName"] & [UIImage imageNamed:@"imageName.extension"] occurences;
  • If it's .xib/.storyboard file, the script searches image="imageName" & image="imageName.extension" occurences;
  1. If the script could find unused image in these files, it prints them in a good-looking way: Result

Installation

The easiest way to install Taza is using Swift Package Manager:

$ git clone https://github.com/danabeknar/taza
$ cd taza
$ swift build --configuration release
$ cp -f .build/release/taza /usr/local/bin/taza

Usage

Without any specifications (have to be executed in the directory where Xcode project is located):

taza

Specifies path of project to search for:

taza --path ~/Example

Specifies should script list all found files:

taza --listFiles

Specifies should script list all found resources:

taza --listResources

Or altogether:

taza --path ~/Example --listFiles --listResources

To Do:

  • Search specific directory
  • List files
  • List resources
  • Ignore pods
  • Removing images

Dependencies

Help, feedback or suggestions?

Feel free to contact me on Telegram for discussions, news & announcements about Taza & other projects.

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