Customizable view containers that manages navigation between pages of content

Chausie

Chausie provides a customizable container view controller that manages navigation between pages of content. Page of contents can be controlled programmatically by your implementation or directly by the user's gesture. Chausie is designed to be flexible and extensible, provides intuitive and simple interfaces.

Features

implementation

Chausie is designed to be a simple and minimal implementation to make the flexible user interface. Chausie provides APIs for managing page content, and implementers can customize views. See example code for details.

maintenability

Chausie is used and oprated in iOS applications. Aim for continuous maintenance and enhancement by members of CATS ( CyberAgent Advanced Technology Studio ).

If you need any help, please visit our GitHub issues and feel free to file an issue.

There are multiple ways you can contribute to this project. We welcome contributions ( GitHub issues, pull requets, etc. )

View Components

Chausie provides container view to compose pages of content. Components that compose view container is available, so you can design flexible layout.

Usage

You can use Chausie API intuitively and simply, like this:

TabPageViewController(
    components: [
        Component(
            child: FirstViewController(),
            cellModel: Category.fashion
        ),
        Component(
            child: SecondViewController(),
            cellModel: Category.food
        )
    ]
)

Clone the repo to run the example project, and run make from the Example directory first.
See sample code here for details.

Requirements

  • Swift 5.0
  • Xcode 10.2.1

Installation

CocoaPods

Chausie is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "Chausie"

Carthage

Add the following line to your Cartfile:

github "cats-oss/Chausie"

Future tasks

  • [x] Basic implementation
  • [ ] Other tab view style
  • [ ] Instantiates from xib or storyboard
  • [ ] Rearchitecture content of page
  • [ ] And more...

GitHub