Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
109 lines (77 sloc) 3.78 KB
-------------------------------------------------------------------------------
Dojo Demos - used on demos.dojotoolkit.org
-------------------------------------------------------------------------------
Project state: varies.
-------------------------------------------------------------------------------
Project description
Demos which show off all of Dojo, potentially including a server-side
component. Each demo resides in a sub-directory. Demos should not depend on
other demos for code, but may depend on things in the top-level resources
directory or in dojo, dijit, dojox, and util namespaces.
These demos are not included in releases, and unlike tests inside of Dijit,
they may depend on DojoX components or not be fully accessible, etc.
Additionally, icons, images, and other resources not licensable for use in
the mainline toolkit may be included in the demos/ directory so long as
their license status is noted in demo-specific LICENSE files.
Server-side components are recommended to be written in PHP 5 and may use
the Zend Framework should a MVC framework be required for a particular
demo.
-------------------------------------------------------------------------------
Dependencies:
Dojo Core
Dijit
DojoX
-------------------------------------------------------------------------------
Submission Instructions
All these demos follow a simple pattern. Each demo has a "name", which
is the name of the folder it lives in. eg:
demos/myDemo/
The root demo filename is to be named `demo.html`. It should include a
<script> tag pointing to ../../dojo/dojo.js, and a src.js "layer" as a
sibling to `demo.html` .Styles should be external and located
in a file `demo.css`. A README file (similar to this document) should
also be present.
The most basic of demos should look like:
demos/myDemo/
demo.html
demo.css
src.js
If multiple modules are needed, they should appear in a /src/ folder, making
src.js a rollup, only requiring other modules.
demos/myDemo/
src.js
src/
Module.js
Proper dojo.provide calls for the src.js and Module.js files should be issued:
dojo.provide("demos.myDemo.src.Module");
About the README
The README format is a slightly-fragile custom format, which follows the
same design as this one. The second and last lines are parsed off for meta
information.
Line 2 should be a hyphen separated description:
1. --------------------------------------------------
2. Short Title - Longer Description about the purpose
3. --------------------------------------------------
The last line should be made up of @tag:value pairs. These tags can be
arbitrary, and some go unused (though may be implemented at a later
date). The most important tag is @rank, providing a way to weight
the demo in the index at http://demos.dojotoolkit.org
@rank:-999 will mark the demo as experimental, and not complete.
@rank:15 will give a +15 ranking to the demo, adjusting the index. The
higher the value, the higher in the list it will appear.
Additional Resources
The thumbnail that appears in the demo index can be placed in:
demos/resources/images/myDemo.png
Providing a 128x128 png icon bumps the rank value slightly.
Building the Demos
Each demo should add itself to the profiles/ folder in the util
repository:
util/buildscripts/profiles/demos-all.profile.js
Each demo should create a layer making src.js the layer target,
dependent on demos.myDemo.src. This way, each demo has 100% of
the require resources available in the rollup layer and requires
no work to shift between built and unbuilt states.
Create the tree by running a build:
./build.sh action=release profile=demos-all cssOptimize=comments.keepLines version=1.x.x
-------------------------------------------------------------------------------
@rank:-999