Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. AppFolder

AppFolder

MITSwift0.2.0

A lightweight Swift framework for strongly-typed, intuitive access to iOS/macOS app container directories.

Visit WebsiteGitHubGitHub
925 stars24 forks0 contributors

What is AppFolder?

AppFolder is a Swift framework that provides a strongly-typed, intuitive API for accessing and organizing directories within an iOS or macOS app's container. It solves the problem of error-prone, string-based path manipulation by offering a declarative way to reference system directories like Documents, Caches, and Application Support, as well as custom user-defined folders.

Target Audience

iOS and macOS developers who need to manage app-specific file storage, particularly those building apps with complex directory structures or shared containers for app extensions.

Value Proposition

Developers choose AppFolder for its type-safe design, which reduces bugs and improves code clarity compared to raw Foundation APIs. Its intuitive, hierarchical API mirrors the actual file system, making it easier to reason about where files are stored.

Overview

🗂 Never use NSSearchPathForDirectoriesInDomains again

Use Cases

Best For

  • Building apps with organized, nested directory structures for file storage
  • Simplifying shared container access for iOS app extensions
  • Replacing verbose `NSSearchPathForDirectoriesInDomains` calls with type-safe alternatives
  • Managing platform-specific directory behaviors across iOS, macOS, watchOS, and tvOS
  • Creating declarative file system representations in Swift projects
  • Reducing runtime errors in file path construction and navigation

Not Ideal For

  • Projects using non-Swift languages or cross-platform frameworks like React Native
  • Apps that require dynamic, runtime-defined directory structures not statically typable
  • Teams prioritizing minimal dependencies over abstraction for simple file paths
  • Legacy projects reliant on Carthage or Cocoapods without Swift Package Manager

Pros & Cons

Pros

Type-Safe Directory Access

Provides strongly-typed objects for system directories like Documents and Caches, eliminating error-prone string-based path construction with APIs like NSSearchPathForDirectoriesInDomains.

Intuitive Hierarchical API

Mirrors real-world folder names with properties like AppFolder.Library.Caches, making code declarative and easier to reason about, as shown in the README's usage examples.

App Group Support

Seamlessly integrates with shared containers for app extensions via AppGroupContainer, simplifying data sharing between apps, as demonstrated in the Core Data example.

Easy Custom Directories

Allows defining nested directories using Swift inheritance and extensions, with automatic naming from class names, reducing boilerplate code for custom folder structures.

Cons

Early Stage Instability

The README disclaimer notes the project is in an early stage, with potential for bugs and breaking changes, making it risky for production-critical applications.

No Automatic Directory Creation

AppFolder only provides a type-safe representation; directories must be manually created using FileManager, adding an extra step compared to full-management frameworks.

Unconventional Naming Requirements

Requires capitalized property names and underscores for spaces (e.g., Application_Support), which deviates from standard Swift conventions and can confuse developers.

Frequently Asked Questions

Quick Stats

Stars925
Forks24
Contributors0
Open Issues0
Last commit4 years ago
CreatedSince 2018

Tags

#directory-management#ios#filesystem#type-safe#mobile-development#swift-package#file-system#swift#macos

Built With

S
Swift

Links & Resources

Website

Included in

iOS51.7k
Auto-fetched 22 hours ago

Related Projects

ZipArchiveZipArchive

ZipArchive is a simple utility class for zipping and unzipping files on iOS, macOS and tvOS.

Stars5,603
Forks1,348
Last commit11 months ago
ZIPFoundationZIPFoundation

Effortless ZIP Handling in Swift

Stars2,738
Forks403
Last commit24 days ago
ZipZip

Swift framework for zipping and unzipping files.

Stars2,606
Forks479
Last commit2 years ago
FileKitFileKit

Simple and expressive file management in Swift

Stars2,355
Forks213
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub