Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
nonviral cocoa source for implementing an application feedback panel (for bugs, feature requests and support)
Objective-C C PHP
tag: 1.3

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.



is a nonviral (MIT license) drop-in source code package which provides an in-application user feedback mechanism for Cocoa apps. It puts up a panel something like this:

It supplies the panel (in .xib form), the Objective-C controller code and even the .php file to put on your web server to turn those web form posts into email messages (just replace YOUR_(FEEDBACK_) with whatever you want).

Mike Zornek has created a nice screencast demonstrating how JRFeedbackProvider works and how to integrate it with your application. Thanks, Mike!

Requires 10.4 or later. Developed and tested on 10.5.

Please report bugs and request features on the Lighthouse JRFeedbackProvider project site.

Version History

  • 1.3

    • [NEW] Use +[NSBundle bundleForClass:] instead of +[NSBundle mainBundle] so JRFeedbackProvider is usable with plug-ins like .prefPanes. (Joesph Wardell)
    • [NEW] 10.4 support. Remove sole trivial use of ObjC 2 fast-enumeration so we can also target 10.4. (Joesph Wardell)
    • [NEW] Allow user to resize window, but vertically only. (Dave Dribin)
  • 1.2 (formerly released as 1.1.1)

    • [NEW] Added new checkbox to the Feedback Window so users can acknowledge they are sending their hardware profile in.

    • [CHANGE] Made text of feedback message text view use black instead of green.

    • [NEW] Added a new class function to JRFeedbackController that allows you to initialize a feedback window with specific bug report text. This method assumes Bug Report is the default tab selected.

    • [NEW BUG] When using this new method the textView is given the bug report text via setString: this result in all the test being bold by default.

    • [CHANGE] Edited the jrfeedback.php slightly so that appVersion (which JRFeedbackController already sends out) is picked up and put into the subject line.

  • 1.1

    • [NEW] Set the user's reply address in the server-side PHP script. (Michael Zornek)

    • [FIX] Assertion failure if user clicks "Send" button and without waiting click the "Cancel" button. (Oleg Krupnov)

    • [CHANGE] Change "Submit" button to "Send" to be more respectful of the user. (Oleg Krupnov)

  • 1.0 Original release

Something went wrong with that request. Please try again.