sproutit / sproutcore-samples

Sample applications for the SproutCore JavaScript Framework
http://www.sproutcore.com
224 stars 31 forks source link

== Welcome to SproutCore Sample Applications

This is a samples application package for building a SproutCore applications. To get started, edit your JavaScript application in the clients directory (we've already created one for you.)

== BEFORE YOU CONTINUE

If you just cloned this samples directory using Git, you need to run the following two commands to get the latest version of SproutCore JavaScript:

git submodule init git submodule update

== Getting Started

To try the samples, start the SproutCore Dev Server by running from this directory:

sc-server

This takes all the same arguments as mongrel. You can now test any of the following sample apps:

http://localhost:4020/contacts http://localhost:4020/demo http://localhost:4020/hello_world http://localhost:4020/photos http://localhost:4020/sample_controls http://localhost:4020/twitter

You can also view the SproutCore docs or run the unit tests:

http://localhost:4020/sproutcore/-docs (click Rebuild Docs) http://localhost:4020/sproutcore/-tests

== What Goes Where

Here is a brief description of the various parts of the SproutCore app:

== Using Frameworks

Frameworks are automatically available in your app. You can also name frameworks available anywhere in your load path (including those installed in gems).

The SproutCore gem comes with the latest versions of prototype, sproutcore, and sproutapp frameworks installed. All you need to do is indicate that you require them.

== Deploying your SproutCore App

Normally you will use the sc-server to host your application while you are developing your code. Once you are ready to deploy, however, there are two ways you can do it:

==== 1. Use sc-server in production.

The SproutCore server can be run in a production mode that will simply generate and cache web-optimized versions of all of your resources upon request. For a low-traffic or newer site, this approach is an easy way to get your code into production. You just replace your directory with your latest files and the sc-server will start serving the new resources.

==== 2. Do a static build

In general, however, loading all of your resources through a Ruby-app is not the best, especially when you could use a high-speed server such as lighttpd that is optimized for serving static content.

If you want real speed, do a static build of your content and serve it through lighttpd or apache. Do the static build, just run:

sc-build

This will place a directory in tmp/build that contains all of your resources pre-compiled and ready for static serving.