All Projects → evonove → planner.js

evonove / planner.js

Licence: BSD-2-Clause license
Fancy and modular Javascript planner built with Handlebars template engine

Programming Languages

javascript
184084 projects - #8 most used programming language
CSS
56736 projects
HTML
75241 projects

planner.js

A modular Javascript planner that uses stickers to represent your information... like a traditional planner!

Built with Wheelie!

It's small enough (minified):

  • dist/css/planner.css: 5.5 kB
  • dist/js/planner.js: 45 kB

Installation

Install Planner.js dependency through bower:

$ bower install plannerjs --save

Then, add the CSS and the JS in your HTML as follows:

<head>
  <!-- ... -->
  <link rel="stylesheet" href="bower_components/plannerjs/dist/css/planner.css"/>
</head>

<body>
  <!-- ... -->
  <script src="bower_components/plannerjs/dist/js/planner.js"></script>
</body>

Usage

Planner.js offers two different way to initialize your planner.

Using data attributes, you can render the planner using just an HTML node:

<div data-planner="container"></div>

Otherwise, you can initialize the planner from your Javascript as follows:

<div id="planner"></div>
(function (document) {
  'use strict';

  // get your HTML element
  var element = document.querySelector('.js-planner');

  // provide options if needed
  var options = {
    plugins: [
      'slider',
      'collision',
      'mobile',
      'interaction',
      'hourline'
    ]
  };

  var planner = new Planner(element, options); // done!

})(document);

Requirements

This project uses the following dependencies:

  • Handlebars for template rendering (the runtime it's enough)
  • Normalize CSS for CSS normalization
  • ds.js for data structures like Set and HashMap (not available in ES5)
  • messengerjs for pub/sub paradigm used in the event system

All dependencies are really small and already included in the minified version.

Browser support

A detailed compatibility table will be published soon. The following is the current support:

  • Internet Explorer 11 (to be verified)
  • Google Chrome
  • Safari
  • Mozilla Firefox

Roadmap

We're working hard to create a really nice component and this is the future we see for this widget:

  • use ES6 modules to provide a better code experience :)
  • write tests to have a nice code coverage and use cases coverage
  • provide the list of available options
  • provide the list of public APIs to manipulate the planner programmatically
  • extend Internet Explorer support (IE10+)

Feel free to make your proposals!

License

Planner.js is released under the terms of the BSD license. Full details in LICENSE file.

Changelog

0.1.0 [2015-10-29]

New features

  • build system migration towards Gulp
  • added Wheelie task registry
  • hourline plugin offers show/hide/toggle methods for displaying/hiding the DOM element
  • hourline plugin adds the passing time effect and appends new styles to the card
  • hourline plugin provides a method to reset the viewport on the current time

Bugfixes

  • users selection is disabled on the header and on the side bar
  • arrows are not added to the main template until needed

0.0.4 [2015-09-16]

Bugfixes

  • text-overflow: ellipsis works as expected

0.0.3 [2015-03-03]

Bugfixes

  • fixed column width to fit best desktop and mobile sizes

0.0.2 [2015-01-21]

Bugfixes

  • disabled user selection for iOS devices

0.0.1 [2015-01-19]

First pre-release!

Features

  • supports time planning
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].