Swiftpack.co -  kf99916/TimelineTableViewCell as Swift Package
Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
Simple timeline view implemented by UITableViewCell
.package(url: "https://github.com/kf99916/TimelineTableViewCell.git", from: "2.2.2")


TimelineTableViewCell is a simple timeline view implemented by UITableViewCell. The UI design of TimelineTableViewCell is inspired by ISTimeline.

GitHub stars GitHub forks CocoaPods Compatible Platform GitHub license

TimelineTableViewCell TimelineTableViewCell


  • iOS 9.0 or higher


  • Swift 3


  • Swift 4


  • Swift 5


  • Breaking Changes for v1.3-: thumbnailImageView is replaced with UIStackView to support multiple thumbnails.
  • Do not support iOS9.0- anymore.


Swift Package Manager

The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler.

Once you have your Swift package set up, adding TimelineTableViewCell as a dependency is as easy as adding it to the dependencies value of your Package.swift.

dependencies: [
    .package(url: "https://github.com/kf99916/TimelineTableViewCell.git")


CocoaPods is a dependency manager for Cocoa projects. For usage and installation instructions, visit their website. To integrate TimelineTableViewCell into your Xcode project using CocoaPods, specify it in your Podfile:

pod 'TimelineTableViewCell'



import TimelineTableViewCell


Register Nib

let bundle = Bundle(for: TimelineTableViewCell.self)
let nibUrl = bundle.url(forResource: "TimelineTableViewCell", withExtension: "bundle")
let timelineTableViewCellNib = UINib(nibName: "TimelineTableViewCell",
	bundle: Bundle(url: nibUrl!)!)
tableView.register(timelineTableViewCellNib, forCellReuseIdentifier: "TimelineTableViewCell")


let cell = tableView.dequeueReusableCell(withIdentifier: "TimelineTableViewCell",
	for: indexPath) as! TimelineTableViewCell

// Configure TimelineTableViewCell...


The point in line is represented by a TimelinePoint object.
var diameter: CGFloat the diameter of a point in the line (default 6.0)
var lineWidth: CGFloat the thickness of the point (default 2.0)
var color: UIColor the color of each point in the line (default UIColor.black)
var isFilled: Bool fills the point in the line (default false)


TimelinePoint(diameter: CGFloat, lineWidth: CGFloat, color: UIColor, filled: Bool)
TimelinePoint(diameter: CGFloat, color: UIColor, filled: Bool)
TimelinePoint(color: UIColor, filled: Bool)


The line in the cell is represented by a Timeline object and is divided by the point as the front line and the backline.
var width: CGFloat the thickness of the line (default 2.0)
var frontColor: UIColor the color of the front line (defalut UIColor.black)
var backColor: UIColor the color of the back line (defalut UIColor.black)
var leftMargin: CGFloat the left margin of the line (default 60.0)


Timeline(width: CGFloat, frontColor: UIColor, backColor: UIColor)
Timeline(frontColor: UIColor, backColor: UIColor)


The cell is represented by a TimelineTableViewCell object.
titleLabel: UILabel! the title in the bubble
descriptionLabel: UILabel! the description
lineInfoLabel: UILabel! the information about line
thumbnailImageView: UIImageView! the thumbnail illustrationImageView: UIImageView! the illustration
var bubbleRadius: CGFloat the radius of the bubble corners (default 2.0)
var bubbleColor: UIColor the color of every bubble (default .init(red: 0.75, green: 0.75, blue: 0.75, alpha: 1.0)) viewsInStackView: [UIView] the views in the stack view. var bubbleEnabled: Bool Enable draw bubble (default true)

Apps using TimelineTableViewCell

If you are using TimelineTableViewCell in your app and want to be listed here, simply create a pull request.

I am always curious who is using my projects :)

Hikingbook - by Zheng-Xiang Ke



TimelineTableViewCellDemo is a simple demo app which shows the usage of TimelineTableViewCell in a storyboard.


Zheng-Xiang Ke, kf99916@gmail.com


TimelineTableViewCell is available under the MIT license. See the LICENSE file for more info.


Stars: 1220
Last commit: 33 weeks ago

Ad: Job Offers

iOS Software Engineer @ Perry Street Software
Perry Street Software is Jack’d and SCRUFF. We are two of the world’s largest gay, bi, trans and queer social dating apps on iOS and Android. Our brands reach more than 20 million members worldwide so members can connect, meet and express themselves on a platform that prioritizes privacy and security. We invest heavily into SwiftUI and using Swift Packages to modularize the codebase.

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