Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Open sourced version of a simple help ticket system that we use at BIG Folio and NextProof
Ruby JavaScript
branch: master
Failed to load latest commit information.
app redirect new ticket view
config sms config file
db added sms support
doc first commit
lib first commit
log first commit
public new icons
script first commit
test added a test file
vendor added recaptcha
LICENSE added MIT license file
README.textile updated readme
Rakefile first commit
artwork.psd updated images for styling

README.textile

Welcome to BIG Help

Welcome to BIG Help. BIG Help is an open-source help ticket system that can be used by consumer-focused web companies. BIG Help is designed to be a simple (and free) alternative to online services such as HelpSpot and Kayako.

BIG Help is based on the support app we use at BIG Folio and NextProof (we make stuff for photographers). It’s worth noting that BIG Help is not a bug-tracking system like Lighthouse or Fog Bugz.

Current status

BIG Help is currently live and in production at BIG Folio. You can see it in action on our help page.

Features

  • Configurable categories
  • Create categorized FAQs
  • Simple support form for customers
  • When a customer chooses the category of their request, FAQs from that category are presented (via AJAX)
  • Support requests are assigned a unique ticket “key”
  • Email confirmation sent to customer upon initial request
  • Email sent to all support staff (users) who choose to receive alerts for that ticket’s category
  • Support staff can create replies to a ticket
  • Ticket replies are emailed to the customer
  • Support staff can attach files to a reply. Files are available in-browser and attached to the email.
  • Tickets have a state of “Fresh”, “Active”, and “Closed”
  • Support staff can upload an avatar
  • Fairly robust search
  • Mobile views: mobile-friendly view is rendered when used on an iPhone (haven’t tested other mobile devices)

Required gems

  1. mislav-will_paginate (for pagination of tickets view)
  2. chronic (for date range search)
  3. rmagick (for attaching images to threads via Paperclip)

Setup

  1. Create your database
  2. Edit the config/database.yml file
  3. Edit the config/config.yml file (see below)
  4. Run migration(s) with rake db:migrate
  5. Edit the views in app/views/help/index.html.erb app/views/help/contact.html.erb (see below)
  6. Fire up your mongrel(s) or mod_rails
  7. Browse to /signup and create your initial user account (have your staff do the same)
  8. Once your staff has created accounts, you’ll want to turn off the /signup route and users/new action (see below)

The config.yml file

The config.yml file contains settings about your app and company. You should edit this file with your information. When BIG Help starts, these values are loaded into the AppConfig hash and used in the layouts, views, and email methods.

The home and contact pages

The root of the app is routed to /help/index, which renders the /app/views/help/index.html.erb file. This is designed to be a general entry point for your customers. Personally, I like to present customers with FAQs or a Wiki before letting them submit a ticket. If that’s not your style, you can change map.root to route to help/new (in config/routes.rb).

You should do the same for the contact page.

Signup area

BIG Help uses the restful-authentication plugin for support staff access. When you initially fire up the application, you can create new support user accounts by going to /signup. Obviously, once you have created your support accounts, you’ll want to turn off signups. You should do this by:
1. Comment out the /signup route in config/routes.rb
2. Uncomment the redirect_back_or_default(‘/’) line in the users controller (new action)
3. Restart your app

I’m sure there are better ways to do this, but it works for me. YMMV

Ticket key

When a customer submits a support ticket, they are presented with a unique 8-character “key” or “token”. The key can be used to look up their ticket later. If you’d like the change the length, you’ll find it defined in the Ticket model file (app/models/ticket.rb).

I’d like to thank the academy …

BIG Help wouldn’t have been possible (or at least not as cool) without the following great projects/plugins/gems:

  1. Paperclip plugin from Thoughbot
  2. restful_authentication plugin from Technoweenie
  3. jRails plugin
  4. Fckeditor from Frederico Caldeira Knabben
  5. mobile_fu plugin from Brendan G. Lim, Intridea, Inc.
  6. Ruby on Rails from 37signals (natch)
Something went wrong with that request. Please try again.