Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


ERAppKit is a Cocoa framework first developed as a class project for CS2310 at Brown University. Its goal is to provide some new widgets for Cocoa applications such as radial menus and palettes.


ERAppKit is an Objective-C written Cocoa framework for OS X. It has been created by Raphael Bost and Evan Altman as a part of a Human-Computer Interaction class project.

Its original goal was to provide some new widgets for the DrawBerry vector drawing application, widgets that will ease the application use while reducing the screen size needed to run the app comfortably.


You can use this framework in your app by using it as a private framework (as described by Apple's documentation): in XCode, add it to your target and then add a new 'Copy Files' build phase to the 'Framework' directory. Let the ERAppKit framework be part of it. (You can take a look to Growl's Documentation for a more detailed explanation).

After installing the framework in your target, you will be able to use all the classes defined by ERAppKit by including the headers:

  • if you want access to all the features (radial menus and palettes), you can use #import <ERAppKit/ERAppKit.h>
  • if you only want to use the radial menus, use #import <ERAppKit/ERMenu.h>
  • if what you want is only palettes, use #import <ERAppKit/ERPalette.h>

You can find help on how to use the frameworks components in the wiki.


ERAppKit is licensed under the terms of the GNU Lesser General Public License. You can find a copy of the license with the sources.

The license may change in the future for a more restrictive one.


The public headers are documented using Doxygen.

The framework code by itself is not as well documented as it should but it should remain understandable.

For an example of what you can do with ERAppKit, and how to do it, just take a look the demo application included in ERAppKit's XCode project. You will see how simple it is to integrate the radial menus and the palettes.


(Check the issue's page on GitHub to have a more precise list of what we are planning to do)

  • Palettes
    • Save the state of the palettes in the preferences (like with the standard's window autosave name)
    • Add the possibility to make a palette slide along its tab
  • Radial Menus
    • Add new animations for menus opening and closing


  • Raphael Bost
  • Evan Altman


Repository of the project for CS2310 class teached by Seven Reiss at Brown University.




No releases published


No packages published