ScheduleFu allows scheduling events with dates and times.
Ruby JavaScript
Latest commit b0c52de Dec 17, 2012 @angelic Merge pull request #9 from danielfarrell/starting-migrations
Add attr_accessible for types so migrations work
Failed to load latest commit information.
config Updating to Rails 3.2. Alls tests pass. Still have to test helpers. Jan 23, 2012
docs documentation Jun 25, 2009
lib Use Range to simplify SQL for recurring events Feb 2, 2012
.rvmrc add .rvmrc Jan 26, 2012
Gemfile.lock tests pass with 1.8.7 Feb 2, 2012
MIT-LICENSE added name to MIT license Mar 27, 2009



ScheduleFu allows scheduling events with dates and times. It includes both the model and view portions of a calendar. It currently works with Rails 3.2. See RSchedule for an example application using it.

To generate the ScheduleFu migrations, run:

rake schedule_fu:install:migrations


  • calendars: distinct calendar that can be associated with your own models
  • calendar_events: distinct event
  • calendar_recurrences: specific information on particular recurring dates
  • calendar_event_mods: modification to a particular calendar_event
  • calendar_event_types: different types of events
  • calendar_dates: has a row for every day and will automatically generate rows for a year before or after any date used in an event.
  • calendar_event_dates: a view that has a row for each date included in the event, original or modified information if a column was modified (time, description, etc), plus some additional informational columns

Informational columns in calendar_event_dates

  • added: true if this date was added as a mod and not in the original event
  • modified: for dates that are included in the original event but have been modified (time, description, etc)
  • removed: true if this particular date was removed (named scopes :removed and :not_removed available in calendar_event_dates)

Database diagram

The database diagram can also be found in docs/database.png along with the original Dia file.


This plugin borrows a lot from acts_as_calendar and calendar_helper.