
[](https://travis-ci.org/marmelroy/FileBrowser) [](http://cocoapods.org/?q=FileBrowser)
[](https://github.com/Carthage/Carthage)
# FileBrowser
iOS Finder-style file browser in Swift with search, file previews and 3D touch. Simple and quick to use.

## Features
| Features
--------------------------|------------------------------------------------------------
:iphone: | Browse files and folders with a familiar UI on iOS.
:mag: | Pull down to search.
:eyeglasses: | Preview most file types. Including plist and json.
:point_up_2: | 3D touch support for faster previews with Peek & Pop.
:white_flower: | Fully customizable.
## Usage
Import FileBrowser at the top of the Swift file.
```swift
import FileBrowser
```
To show the file browser, all you need to do is:
```swift
let fileBrowser = FileBrowser()
self.presentViewController(fileBrowser, animated: true, completion: nil)
```
By default, the file browser will open in your app's documents directory. When users select a file, a preview will be displayed - offering an action sheet of options based on the file type.
## Advanced Usage
You can open FileBrowser in a different root folder by initialising with an NSURL file path of your choice.
```swift
let fileBrowser = FileBrowser(initialPath: customPath)
```
Use the didSelectFile closure to change FileBrowser's behaviour when a file is selected.
```swift
fileBrowser.didSelectFile = { (file: FBFile) -> Void in
print(file.displayName)
}
```
To exclude a certain file type or a specific file path:
```swift
fileBrowser.excludesFileExtensions = ["zip"]
fileBrowser.excludesFilepaths = [secretFile]
```
### Setting up with [CocoaPods](http://cocoapods.org/?q=FileBrowser)
```ruby
source 'https://github.com/CocoaPods/Specs.git'
pod 'FileBrowser', '~> 0.1'
```
### Setting up with Carthage
[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.
You can install Carthage with [Homebrew](http://brew.sh/) using the following command:
```bash
$ brew update
$ brew install carthage
```
To integrate Format into your Xcode project using Carthage, specify it in your `Cartfile`:
```ogdl
github "marmelroy/FileBrowser"
```