SuggestionsBox 1.5

SuggestionsBox 1.5

LangLanguage SwiftSwift
License MIT
ReleasedLast Release Oct 2016
SPMSupports SPM

Maintained by Manuel Escrig.


An iOS library to aggregate users feedback about suggestions, features or comments in order to help you build a better product.

Why SuggestionsBox?

  • [x] Aggregates customer feedback
  • [x] Let your customer decide
  • [x] Build the most voted suggestion
  • [x] Build a better product


  • [x] List and add new suggestions
  • [x] Comment and vote other suggestions
  • [x] Search inside Titles and Descriptions
  • [x] Customizable colors and strings
  • [x] Localizable

Demo App

Run the demo app and play with it! Demo App

Demo Project

To run the example project, clone the repo, and run pod install from the Example directory first.

Getting Started


Requires iOS SDK version > 8.0

Requires Swift 3.0


To integrate MEVHorizontalContacts into your Xcode project using CocoaPods, specify it in your Podfile:

source ''
pod 'SuggestionsBox'

Then, run the following command:

$ pod install

Installation Manually

To integrate SuggestionsBox into your Xcode project manually, just include the filest from /Pod/Classes/ folder in your App’s Xcode project.

Then, import the following file your classes:

import SuggestionsBox

Quick Guide


1. Import class
import SuggestionsBox
2. Add Delegate protocol.
class ViewController: UIViewController, SuggestionsBoxDelegate {
3. Create, initialize and add SuggestionsBox.
let suggestionsBox = SuggestionsBox()
suggestionsBox.delegate = self
SuggestionsBoxTheme.user = "Manuel"
SuggestionsBoxTheme.appName = "SuggestionsBox"
SuggestionsBoxTheme.title = "SuggestionsBox"
SuggestionsBoxTheme.headerText = "Suggest a new feature, tweak, improvement... We'd love to hear your sugestions!"
SuggestionsBoxTheme.footerText = "Powered by SuggestionsBox"
SuggestionsBoxTheme.newSuggestionFooterText = "Powered by SuggestionsBox"
SuggestionsBoxTheme.newCommentFooterText = "Powered by SuggestionsBox"
SuggestionsBoxTheme.navigationBarHeartColor = UIColor.redColor()
SuggestionsBoxTheme.tableSeparatorColor = UIColor.groupTableViewBackgroundColor()
SuggestionsBoxTheme.tableCellBackgroundColor = UIColor.whiteColor()
SuggestionsBoxTheme.tableCellTitleTextColor = UIColor.blackColor()
SuggestionsBoxTheme.tableCellDescriptionTextColor = UIColor.lightGrayColor()

let navigationBar = UINavigationController.init(rootViewController: suggestionsBox)
self.presentViewController(navigationBar, animated: true, completion: nil)
4. Implement Delegate Methods
// MARK : SuggestionsBoxDelegate Methods

func suggestions() -> Array<Suggestion> {
    return self.featureRequests

func commentsForSuggestion(suggestion: Suggestion) -> Array<Comment> {
    return self.comments.filter({ $0.suggestionId == suggestion.suggestionId })

func newSuggestionAdded(newSuggestion: Suggestion) {
    // Refresh online data

func newCommentForSuggestionAdded(suggestion: Suggestion, newComment: Comment) {
    // Refresh online data

func suggestionFavorited(suggestion: Suggestion) {
    // Refresh online data

    // Refresh local data
    let index = self.featureRequests.indexOf(suggestion)
    self.featureRequests[index!] = suggestion

func suggestionUnFavorited(suggestion: Suggestion) {
    // Refresh online data

    // Refresh local data
    let index = self.featureRequests.indexOf(suggestion)
    self.featureRequests[index!] = suggestion


  • [x] CocoaPods support
  • [x] Carthage support
  • [ ] Tests

Apps using this library



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