A full interactive Calendar UI built for Vanilla JS or use in other frontend frameworks.

#javascript #js #vanillajs #ui #frontend #webdev #website #html #css #jquery

Adam Shaw 315a3dc0b6 make all JS (mostly tests) es3-compliant, because we care about testing in IE8 %!s(int64=12) %!d(string=hai) anos
build 315a3dc0b6 make all JS (mostly tests) es3-compliant, because we care about testing in IE8 %!s(int64=12) %!d(string=hai) anos
demos 85ef67506e adjust to jquery's new location in jquery/dist %!s(int64=11) %!d(string=hai) anos
lang dda017efe2 allow user-specified buttonText to override buttonIcons %!s(int64=11) %!d(string=hai) anos
src 315a3dc0b6 make all JS (mostly tests) es3-compliant, because we care about testing in IE8 %!s(int64=12) %!d(string=hai) anos
tests 315a3dc0b6 make all JS (mostly tests) es3-compliant, because we care about testing in IE8 %!s(int64=12) %!d(string=hai) anos
.bowerrc 9181e8be2e bower components go in lib/, all demos and tests reference them directly %!s(int64=12) %!d(string=hai) anos
.gitignore 7a714d1575 change location of where built files go %!s(int64=11) %!d(string=hai) anos
Gruntfile.js 97ad608718 fix lumbar watch (sourceMaps dont work when config not in root). simplify watch script %!s(int64=12) %!d(string=hai) anos
bower.json 7eb8a5edda use latest jquery/jquery-ui, lower required moment version %!s(int64=11) %!d(string=hai) anos
changelog.md 016f43f2cc bump to 2.0.0-beta2 %!s(int64=12) %!d(string=hai) anos
fullcalendar.jquery.json 7eb8a5edda use latest jquery/jquery-ui, lower required moment version %!s(int64=11) %!d(string=hai) anos
license.txt b7e644bf4e change to single MIT license. update banners in source files %!s(int64=13) %!d(string=hai) anos
lumbar.json 97ad608718 fix lumbar watch (sourceMaps dont work when config not in root). simplify watch script %!s(int64=12) %!d(string=hai) anos
package.json afbc0f8d9b remove unnecessary dependency line %!s(int64=11) %!d(string=hai) anos
readme.md 24a40d9340 update some build scripts to use new directory scheme %!s(int64=11) %!d(string=hai) anos

readme.md

FullCalendar - Full-sized drag & drop event calendar

This document describes how to modify or contribute to the FullCalendar project. If you are looking for end-developer documentation, please visit the project homepage.

Getting Set Up

You will need Git, Node, and NPM installed. For clarification, please view the jQuery readme, which requires a similar setup.

Also, you will need the grunt-cli and bower packages installed globally (-g) on your system:

npm install -g grunt-cli bower

Then, clone FullCalendar's git repo:

git clone git://github.com/arshaw/fullcalendar.git

Enter the directory and install FullCalendar's development dependencies:

cd fullcalendar && npm install

Development Workflow

After you make code changes, you'll want to compile the JS/CSS so that it can be previewed from the tests and demos. You can either manually rebuild each time you make a change:

grunt dev

Or, you can run a script that automatically rebuilds whenever you save a source file:

./build/watch.sh

When you are finished, run the following command to write the distributable files into the ./dist/ directory:

grunt

If you want to clean up the generated files, run:

grunt clean

Style Guide

Please follow the Google JavaScript Style Guide as closely as possible. With the following exceptions:

if (true) {
}
else { // please put else, else if, and catch on a separate line
}

// please write one-line array literals with a one-space padding inside
var a = [ 1, 2, 3 ];

// please write one-line object literals with a one-space padding inside
var o = { a: 1, b: 2, c: 3 };

Other exceptions:

  • please ignore anything about Google Closure Compiler or the goog library
  • please do not write JSDoc comments

Notes about whitespace:

  • use tabs instead of spaces
  • separate functions with 2 blank lines
  • separate logical blocks within functions with 1 blank line

Run the command line tool to automatically check your style:

grunt check

Before Contributing!

If you have edited code (including tests and translations) and would like to submit a pull request, please make sure you have done the following:

  1. Conformed to the style guide (successfully run grunt check)

  2. Written automated tests. View the Automated Test README