 class ProjectDetailController: UIViewController {
 
   let project: Project
+
+  lazy var scrollView: UIScrollView = {
+    let scrollView = UIScrollView(frame: CGRectZero)
+    scrollView.alwaysBounceVertical = true
+
+    return scrollView
+    }()
 
   lazy var imageView: UIImageView = {
     let imageView = UIImageView()

    title = project.name
    view.backgroundColor = UIColor.whiteColor()

    [imageView, infoLabel, button].forEach {
      view.addSubview($0)
    }

    imageView.addObserver(self, forKeyPath: "image", options: [.New, .Old], context: nil)

    imageView.setImage(project.imageURL)
    infoLabel.text = project.info

  func setupConstrains() {
    infoLabel.sizeToFit()

    constrain(scrollView) { scrollView in
      scrollView.edges == scrollView.superview!.edges
    }

    constrain(imageView, infoLabel, button) { imageView, infoLabel, button in
      let superview = imageView.superview!

      imageView.top == superview.top + 15
      imageView.centerX == superview.centerX
      imageView.width == 300
      imageView.height == 150

      infoLabel.top == imageView.bottom + 30
      infoLabel.left == imageView.left
      infoLabel.right == imageView.right

      button.top == infoLabel.bottom + 40
      button.centerX == superview.centerX
      button.width == 200
      button.height == 50
    }

    view.layoutIfNeeded()

    scrollView.contentSize = CGSize(
      width: view.frame.width,
      height: button.frame.maxY + 20)

    print(scrollView.contentSize)
  }

  // MARK: - Actions
