Timeline & Other News

timeline-viewThis post is an update on the highly-requested horizontal resource view (aka Timeline). This feature allows the assigning of events to resources (things like team members or conference rooms) and portrays time left-to-right and resources top-to-bottom. Please ☆ the issue tracker ticket to receive further updates.

Update (8/23/2015): Scheduler has been officially released!

Summary: To build Timeline the right way™ requires a lot of work. I’m a big supporter of open-source but, given the time commitment to get it off the ground and maintain, it only makes sense to release this feature as a premium product. I have a preview of Timeline to show you and have released FullCalendar v2.2.7.

Timeline Development

I first looked at other developers’ implementations when deciding to tackle this feature. Special thanks to @jarnokurlin for helping out so many people. These implementations, which are essentially modifications to the existing Basic view, are very good and will continue to be useful to many developers. However, the Basic view approach becomes strained when considering these more advanced scenarios:

  • arbitrary view durations (if there are too many slots, there should be scrolling)
  • arbitrary granularities (ex: slots that are 1 second, 1 day, or 1 year)
  • arbitrary number of resources (if there are too many, there should be scrolling)
  • nesting / grouping resources (ex: people within a team or rooms within a building)
  • other columns of data for each resource (effectively a built-in mini-spreadsheet)

So, I started work on a brand new view that would address these concerns, called Timeline. It quickly became clear that, if done thoroughly and robustly, development of this view would be a massive amount of work. I considered leveraging the open-source community to build this feature. However, as the project’s maintainer, quality-assuring and maintaining these large contributions from others would be a huge time commitment as well.

FullCalendar Inc?

FullCalendar has been my hobby up until this point (albeit a very important and impactful one!) and the development of Timeline has not seemed possible given the time required to get it off the ground at the quality standard I have tried to uphold. However, when considering FullCalendar in the context of an open-source-based business (think CKEditor or WordPress), it begins to make more sense. If I can maintain FullCalendar’s standard feature set while being able to financially support the venture through premium features, I can offer the users of FullCalendar, both free and paid, faster and more consistent progress on the project.

So, I will be making Timeline a paid premium feature when used in commercial projects. The exact terms are still undefined, but there will likely be a per-project license with email support (i.e. me personally answering your questions to start) for commercial projects and a parallel GPL-esque license for no-cost use in fully open-source projects. I also plan to offer a significant price reduction for non-profit organizations.

Premium Features

In the future, will all other features be premium? The answer is NO. I really care about the open-source health of the project so I’ve come up with guidelines for what qualifies as a potential premium feature:

  • clearly time-intensive to implement
  • obviously separate from the core and should be implemented as a plugin
  • beyond what a basic JavaScript calendar should be

If the feature meets all these qualifications, it is a candidate for a premium feature. The core code will always be free, with a robust API and plugin system for creating things like Custom Views.

I would love to get your thoughts on this new approach. Please comment away!

Preview of Timeline

Back to Timeline. I’ve been hard at work, and even though my code is pre-alpha and not fit for download, I’ve prepared a live demo:

timeline-view

I’ve also prepared some preliminary documentation.

To offer input on Timeline’s specs and features, please participate in the issue tracker discussion.

Contracting Work

If you would like to hire me as a contractor for Timeline customization/integration or anything else FullCalendar-related, please email me at contracting@fullcalendar.io *. This will allow me to make ends meet while finishing Timeline and will allow you to receive high-quality custom work directly from the author of the project.

*Update (Feb 17th): I am no longer accepting contracting work at this time

FullCalendar v2.2.7

In other news, I have released a new minor version of FullCalendar. It contains bugfixes for already-released features. For more information, please read the changelog.

Psst... there are separate pages for feature requests, bug reports, and getting help.
  • Yuri Sarzi

    That’s good! I wouldn’t mind paying for this awesome feature. I hope you will get through it soon.

  • gaspard80

    This is huge, I am also willing to pay to get this feature.

  • Ben Schweitzer

    Hi,

    great news! Absolutely comprehesible to offer this as a payed premium feature. I am very interested. I guess a lot of users would love to have this feature in the same quality that FC is. Thumbs up!

    Regards

    Ben

  • Trond Nilsen

    This looks very good! My company would not hesitate to pay for this feature.
    What is not clear to me right now is wether everything to do with resource views will be a premium feature or not.

    I am looking for a more standard resource view with my calendar to the left and other people/ resources to the right with a scrollbar.

    Will this be in the premium package as well?

    • Thanks! I’m not exactly sure. We might need to flesh out exactly what you mean on the issue tracker (see here) as to exactly how the visual connection between dates and resources is represented.

  • Personally I am not willing to include any non open source code in my project, but as my project will be licensed under something GPL-like as well I can’t see that as a problem, and what you are doing looks great. Thanks for your work on full calendar, which is a great project.

    • Thanks for your input. Though I still need to consider the licensing strategy more, I do agree that it would be a shame if GPL’d projects, which by definition are free and can never be closed-sourced, couldn’t benefit from FullCalendar

  • Michael Humphreys

    Maybe it’s just my personal opinion, but I would much rather donate ($20 via Paypal or a Kickstarter campaign) than to license a project. Although most of my projects are internal to my company and wouldn’t require a license, I am like Mark C. and aggressively look for only open source code to use just in case. If I wasn’t already using FullCalendar and I ran across something that required a license, I would most likely keep on looking for something completely open source.

    I am not sure how much you’ll be licensing your premium features for, but I would be willing to bet that a vast majority of your current users would support a PayPal Donate Now or Kickstarter/Indiegogo campaign.

    • CatFish

      I am right behind this…

      I have a feeling that many will compare a premium, paid for Full Calendar (which would basically be a one man development team), against Commercial offerings by (established Companies that also usually offer a ‘Community Version’) that have a guarantee that the product will continue to exist. I would say many will simply switch if there is to much cost / licensing complexity.

      It also seems a little unfair, as with many other open source projects, that early contributors lose out as the owner turns it commercial.

      However, funding development on the existing structure through KickStarter etc seems valid.

  • Looks great. And I think it is very important for open source projects to be kept alive with commercial options. We would definitively buy a license for this. Great work. The demo looks good already.

  • Dave Driesmans

    When would it be ready? i think a price like $150-300 would be very fair

  • David Fraiser

    “*Update (Feb 17th): I am no longer accepting contracting work at this time”

    w00t! Only 8 days after this was posted, that’s awesome! Thank you for FullCalendar and for your commitment to open-source. You do awesome work and I think your plan of having Timeline commercial while FullCalendar staying open-source is a great way to go. Much success to you.

  • Rasmus Christensen

    Great to see the new view, just got a customer request for exactly that feature. Will vertical resource view also be an option….as in the fork earlier in the comments?

  • Romeo Iula

    This looks fantastic, and down the road it is probably something my company will start using. That being said, we currently use a custom version of fullcalendar that provides resources exactly like https://github.com/arshaw/fullcalendar/pull/195 — Does this mean a vertical resource view is out of the picture?

    • Hi Romeo, after I get further with Timeline, I will likely take a preliminary crack at a vertical resource view like what you describe. If there is enough commonality between the views, enough shared code and settings, and enough opportunities for difficult-to-implement advanced features that the current forks do not provide, there’s a good chance I will include it as part of the premium release. Otherwise, I will work with the maintainers of those forks to get their code production-ready.

      • Serban Jinga

        Hi Adam,

        Amazing work with Fullcalendar there. Is a great feature. Many thanks for your work.

        Back on Romeo’s question, do you think you will release the vertical resource view as a feature for Fullcalendar 2 soon?

        Or maybe can you suggest me an alternative? I tried to simulate the vertical columns as multiple calendars (next to each other) and synchronised with a main calendar. The next/prev buttons are controlling all the calendars but this ugly solutions is damn slow 🙁

        Thanks,
        Serban

  • Anders Bach Larsen

    A vertical resource view would be very nice… Hope you have the time.

  • Ruddy G

    We need this feature so badly.

    Where can we pay and download it ? even the preview version ?

    • Hi Ruddy, the code is not ready to be released yet, and I also need to work on the license agreement, but in the meantime you can check out jarnokurlin’s fork (though it is rough around the edges and is based on an old version).

      • Ruddy G

        Thanks for your reply.
        I understand.
        The problem we have is the fact that we are already using FullCalendar 2.2.6 in the system and the users love it. But it is taking a lot of time for them to create calendars for each resource for each week. When there is 100 resources and we need to do calendar for each week, the tool is not usable anymore.
        So, I just need to show them I have a working solution in progress even if it is upgraded later.
        That’s why I’m ok to take what ever you have for that demo page and pay for it if you want. It is very critical.
        Thanks.

        Ruddy Gbaguidi
        Subject: Re: Comment on Timeline & Other News

  • Jim Macdonald

    Looks great. Please include External Events in this version as that is essential for having existing events that simply need to be scheduled.

  • Arjuna Yogasakaran

    Any update on this Adam? Would gladly pay the license for it.

    • Hey @arjunayogasakaran:disqus , @disqus_BJkWa9tiZT:disqus , @disqus_8Qiiuxsign:disqus , @ruddyg:disqus , @jamshady:disqus , and @Wpel:disqus , thanks for asking about ETA! Things are taking a bit longer than expected due to real-world distractions, but I am still committed to releasing this, especially since so many people rely on it, and because I’ve already invested so much effort… it is so close! I was planning on including the other highly demanded view, “vertical resource view” for the 1.0 release, but I am realizing that I am stretching myself too thin, so I will focus solely on the horizontal view (the one already demoed) and release vertical as a follow-up. It will likely take me 4 weeks to reach beta (something you can play with that has docs), and likely another 4 weeks to get the final bugfixes / licensing / purchase-flow set up. I will post here with more details. Thanks for being patient!

      • Thanks @arshaw:disqus for the update, I am eagerly looking forward to the horizontal (resource) view. This will be of great benefit to me with multiple calendars.

      • Rich

        Thanks for the update @arshaw:disqus – it’s great to hear that it’s moving along. If you’d like some alpha testing then please let me know as we’re keen to have a play as soon as possible.

      • Thanks for the update and your work on this fantastic calendar. I have my money ready to give you the second this is released. 🙂

      • Alexandre St-Amant

        Hi Adam,

        My company and I are very interested in licensing the “timeline with resources” view… do you have an ETA? Our project goes live in August and we would LOVE using your work in our system.

      • Daniel

        Now, another month in, what is the current ETA? This feature is highly asked for. We would love to pay for it!

        • I have a few more days of work left to finalize code and finish writing the docs. This week is especially busy for me for my day job, but please expect updates next week.

          • lektionsanteckningar

            Great! Really looking forward to it

          • Daniel Krusenstråhle

            Super great! Really looking forward to this. Any idea what the premium price would be?

          • Awesome, Adam! Appreciate the update! 🙂

          • Daniel Krusenstråhle

            I again Adam. Any updates about the timeline? My team is very interested of using Timelines. Seem really interesting!

      • Daniel Krusenstråhle

        @arshaw:disqus Any ETA on this release?

        • I’ll be releasing a beta on Monday Jun 15th

      • William

        Hi Adam, Thanks for all the amazing work you’re doing with the calendar timeline. Are you still going to release the “vertical resource view”?

  • slicedtoad

    GPL-esque license for no-cost use in fully open-source projects

    This would be awesome. I develop open source (gpl) commercial software, so while the price isn’t particularly relevant, everything needs to be GPL compatible.

  • Ruddy G

    Any update ?

    • James Dixon

      Bump. Can you give us any sort of estimate on timeframe? My project will be in need of this very feature in a month or so. Thanks!

      • Rich

        Yep, same here – this would be a great fit for an upcoming project but I need to know what sort of timescale and costs we’d be looking at.

    • officially released now!

  • JamShady

    Excellent news, just wanted to add that we’d definitely be interested in this – no problems with it being premium.

    Any ETC?

  • Wpel

    Same for me, I wouldn’t mind paying for this feature. Any on update on terms and when it could be released?

  • Mark Johnson

    Can’t wait for this! Thank you so much for all your hard work! Fullcalendar so far has been excelent and I have no doubt this will be the perfect compliment!

  • Earl Allin

    Any updates on the timeline? I have a client that could use this yesterday, and as we have a lot of experience with fullcalendar, I’d like to stick with you!

  • Phil Stephens

    ETA of this feature – even for beta testing?

  • Abbas Khan

    Hi Adam,
    Please keep me in even for beta testing

  • Corey Lewis

    I am dying to use this feature!!!!! Any status update on the launch date? Thanks in advance for this functionality I can’t wait to incorporate into my project!

  • Hi Adam, we have an urgent need for this control. Where are you at with it?

  • I’ve finally release a beta for this. More info can be found at http://fullcalendar.io/scheduler/
    FYI: the plugin has been rebranded as “scheduler”. Thanks for your patience.

    • Rich

      Fantastic – really looking to having a play with this. I’ve got a prototype that I can drop it into right away but my bosses are keen to get some info on licensing costs before I put too much time into it – have you thought about prices at all yet? Thanks for all of your hard work on this – it looks great.

    • Certainly worth the wait: Excellent work here!

    • Daniel

      Hey Adam, the scheduler looks great.
      About licensing, do you know if it will be released in a gpl compatible form?
      I’d like to use it on our library management system webapp.
      It’s a fully GPL (and other compatible) webapp that we sell support and hosting for.

      We don’t mind paying, but we distribute the webapp to our clients. Meaning there are many “websites” running our code. This makes it extremely difficult to integrate a proprietary license into the project.

      • i’ve finalized the license terms. it can be licensed under GPL and thus safely included in other GPL-friendly projects

        • Daniel

          Awesome, your commitment to the open source community is appreciated.

  • Daniel

    Looks great, Adam.
    About licensing, do you know if it will be released in a gpl compatible form?
    I’d like to use it on our library management system webapp.
    It’s a fully GPL (and other compatible) webapp that we sell support and hosting for.

    We don’t mind paying, but we distribute the webapp to our clients. Meaning there are many “websites” running our code. This makes it extremely difficult to integrate a proprietary license into the project.

  • carlos

    how are you guys ?, I check something, I’m new to this, the problem is that I find as pass a variable from the script to the php data is filtered based on that variable, the code is this:

    $(document).ready(function() {

    var currentLangCode = ‘en’;

    var date = new Date();

    var d = date.getDate();

    var m = date.getMonth();

    var y = date.getFullYear();

    var variable = ‘j403437572’;

    var calendar = $(‘#calendar’).fullCalendar({

    editable: true,

    header: {

    left: ‘prev,next today’,

    center: ‘title’,

    right: ‘month,agendaWeek,agendaDay’

    },

    events: ‘http://localhost/app/cursos_charlas/llamada_eventos.php?rif=’+variable,

    });

    });

  • Ankit Sorathiya

    Hey Adam, That’s o’Sum…. Is there any such plan to display resources vertically and time axis horizontally?

  • Louis

    Hi
    Thx for the very beautiful project!
    but for every resource is necessary Business hours( backend colour) and Holidays ( another colour) bcz the members team ahve always different biz hours and different personal holidays.
    Thx for amazing plugin!

  • Ripulryu

    I would be more than happy to pay for this. But I hope the license terms do have a provision for commercial products which are sold in the market, not just a single site.

  • Louis

    hi
    Any update for release on 17th August?
    Thx.

    • soft launch last week, and now officially released! thanks for the patience.

  • blahblah

    awesome work! Im testing out and implementing the beta version and its working perfectly so far. When moving events between resources im not sure how to get the new resourceId in the eventDrop though.

  • Daniel Krusenstråhle

    Will it be released today?

    • soft launch last week. but yes, officially launched!

  • I have released the official version of Scheduler! Please read the blog post. Thanks so much.